首页 > 其他分享 >几种提升turtle绘图速度的方法

几种提升turtle绘图速度的方法

时间:2024-09-18 13:51:27浏览次数:11  
标签:turtle 10 几种 delay 绘图 速度 speed tracer

问题来源

最近老师要求设计程序模拟伽尔顿板。程序设计还是很简单的只需在每次下落时从[0,1]之间产生一个随机整数,若为零则向左反之向右,并用一个变量来记录向右的次数以确定小球的最终出口。
但是为了准确性,要投成千上万次,看着小乌龟慢慢爬。。。。光绘制10层柱子都要1分钟。

解决方法
后来在turtle库文档里看到了
turtle.speed(speed=None)

speed – 一个 0…10 范围内的整型数或速度字符串 (见下)
设置海龟移动的速度为 0…10 表示的整型数值。如未指定参数则返回当前速度。
如果输入数值大于 10 或小于 0.5 则速度设为 0。速度字符串与速度值的对应关系如下:
“fastest”: 0 最快
“fast”: 10 快
“normal”: 6 正常
“slow”: 3 慢
“slowest”: 1 最慢
速度值从 1 到 10,画线和海龟转向的动画效果逐级加快。

turtle.delay(delay=None)

delay – 正整型数
设置或返回以毫秒数表示的延迟值 delay。(这约等于连续两次画布刷新的间隔时间。) 绘图延迟越长,动画速度越慢。

turtle.tracer(n=None, delay=None)

启用/禁用海龟动画并设置刷新图形的延迟时间。如果指定 n 值,则只有每第 n 次屏幕刷新会实际执行。(可被用来加速复杂图形的绘制。) 如果调用时不带参数,则返回当前保存的 n 值。实际使用中发现如果同时用多只画笔作画,给任一画笔设置tracer()所有画笔都有效

turtle.speed(0)

turtle.delay(0)
即可较迅速的绘图,如果不必展示过程turtle.tracer(False)可以更快。

下方柱状图区域,更新时有较明显的闪烁,该区域是从左到右绘制,右侧在clear()之后空白时间较长。设置turtle.tracer(False)即可一次性绘制区域且速度更快。

新手写文,如有问题请不惜赐教。

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/weixin_42103365/article/details/105607551

标签:turtle,10,几种,delay,绘图,速度,speed,tracer
From: https://blog.csdn.net/hhfghgcgh0/article/details/142314089

相关文章

  • JavaScript 中循环数据、改变数据的几种方法
    将数组对象中的属性值取出并组成新的数组letarr=[{name:"张三",age:"1",sex:"男",grade:11},{name:"李四",age:"2",sex:"男",grade:12},{name:"王五",age:"3",sex:"男",gra......
  • RTMP播放器的几种选择
    如何选择RTMP播放器?在选择RTMP播放器时,需要综合考虑多个因素,以确保选择的播放器能够满足实际需求并提供良好的用户体验。以下是一些选择RTMP播放器的建议:1.功能需求低延迟:对于直播场景,低延迟是非常重要的。选择支持低延迟播放的RTMP播放器,以确保观众能够实时看到主播推送端的内容......
  • Go几种内存逃逸的情况
    main.gopackagemainimport"fmt"//指针(任何类型的指针)、slice和map作为返回值//当带有指针的返回值被赋给外部变量或者作为参数传递给其他函数时,编译器无法确定该变量何时停止使用//因此,为了确保安全性和正确性,它必须将该数据分配在堆上,并使其逃离当前函数作用域func......
  • 前端必须掌握的五种排序算法,你会几种?
    文章目录前言1.冒泡排序(BubbleSort)2.选择排序(SelectionSort)3.插入排序(InsertionSort)4.快速排序(QuickSort)5.归并排序(MergeSort)前言在前端开发中,对数据进行排序是一项基本且常见的任务。掌握排序算法不仅可以帮助我们更有效地处理数据,还能提升代码的执行效......
  • ROS2图形化方式新建功能包工具- Turtle Nest
    提示:全文AI生成。链接:https://github.com/Jannkar/turtle_nest配置TurtleNest使用说明(中文版)一、TurtleNest简介正如海龟巢是幼海龟的诞生地,ROS2TurtleNest是ROS2包的诞生和成长之地。TurtleNest提供了一个易用的图形用户界面(GUI),简化了ROS2包的创建......
  • C#实现多态的几种
    C#实现多态的几种,转载地址https://www.cnblogs.com/Jerry9521/p/16246870.html一:多态的理解父类类型和子类类型可以使用同一个(方法名的)方法而输出不同的结果;例如父类可以使用虚函数,子类可以选择重写虚函数(或者不重写),子类对象调用方法的时候可以选择使用父类中的虚方法或者子类......
  • Vue3中组件通信的几种方式
    Vue3组件通信和Vue2的区别:移出事件总线,使用mitt代替。vuex换成了pinia。把.sync优化到了v-model里面了。把$listeners所有的东西,合并到$attrs中了。$children被砍掉了。【1】props概述:props是使用频率最高的一种通信方式,常用与:父↔子。若父传子:属性值是非函数。若子传父:属性......
  • Vue3中路由传参的几种方式实践
    【1】RouterLink+query父组件脚本如下:<scriptsetuplang="ts"name="News">import{reactive}from'vue'import{RouterView,RouterLink}from'vue-router'constnewsList=reactive([{id:'asfdtrfay01',......
  • T-SQL——转载:SQL Server 存储过程中处理多个查询条件的几种常见写法分析,我们该用那种
    本文出处:http://www.cnblogs.com/wy123/p/5958047.html原文中的图片并没有转载,具体查看原文目录0.背景说明1.测试数据2.第一种常见的写法:拼凑字符串,用EXEC的方式执行这个拼凑出来的字符串,不推荐3.第二种常见的写法:对所有查询条件用OR的方式加在where条件中,非常不推荐4.......
  • 大数据技术常见的几种应用架构
    1、离线计算T+1离线分析的一种经典架构:1、利用Flume从应用中收集用户行为日志;2、将用户行为日志存储在HDFS当中;3、利用Hive将SQL翻译为MapReduce可以处理的作业;4、在作业中再批处理的结果写入到数据库当中存储;5、再从数据库当中查询出我们的报表数据。  2、实时计算T+......