Python海龟绘图

您所在的位置:网站首页 海龟python编辑器 Python海龟绘图

Python海龟绘图

2023-12-23 10:36| 来源: 网络整理| 查看: 265

海龟绘图很适合用来引导孩子学习编程,通过编写简短的、简单的程序来创建漂亮的、复杂的视觉效果。而且还可以通过跟随海龟观察到每行代码是如何影响到它的移动,可以很好的帮助我们理解代码的逻辑,也是非常适合孩子学习的。

在绘图区有一只海龟,起始位置原点(0,0),先执行import turtle,在执行turtle.forward(15)可以控制海龟朝向x轴正方向前进15像素,即画出一条线段。

通过组合使用一些指令程序,可以绘制出精美的形状和图案。

一、画布

画布就是海龟的绘图区域范围,可以通过指令修改画布的大小和初始位置

1、turtle.screensize(canvwidth=None,canvheight=None,bg=None)参数:canvwidth:画布的宽度,canvheight:画布的高度,bg:画布的背景 2、turtle.setup(width=0.5,height=0.75,startx=None,starty=None)width和height:宽和高,整数表示像素,小数表示占据屏幕的比例;startx和starty:表示矩形窗口左上角顶点的位置,为空,则位于屏幕中心。二、画笔

画笔默认位于画布中心原点x-y(0,0)位置。

1、import turtle as t 2、t.forward(150)

默认形状是一个黑色箭头

改变海龟外观:turtle.shape(name=None)name:一个有效名字的字符串1、import turtle as t 2、t.shape("turtle")海龟是否可见:1、turtle.hideturtle(),turtle.ht()使海龟不可见。当你绘制复杂图形时这是个好主意,因为隐藏海龟可显著加快绘制速度。 2、turtle.showturtle(),turtle.st(),使海龟可见。 3、turtle.isvisible(),如果海龟显示返回 True,如果海龟隐藏返回 False。

代码:

import turtle as t t.shape("turtle") t.circle(100) t.ht()海龟移动指令1、turtle.forward(distance),turtle.fd(distance)海龟前进 distance 指定的距离,方向为海龟的朝向。 2、turtle.bk(distance),turtle.backward(distance)海龟后退 distance 指定的距离,方向与海龟的朝向相反。不改变海龟的朝向。 3、turtle.right(angle),turtle.rt(angle)海龟右转 angle 个单位。 4、turtle.left(angle),turtle.lt(angle)海龟左转 angle 个单位。 5、turtle.goto(x, y=None),turtle.setpos(x, y=None),turtle.setposition(x, y=None)海龟移动到一个绝对坐标。如果画笔已落下将会画线。不改变海龟的朝向。 6、turtle.speed(speed=None)"fastest": 0 最快,"fast": 10 快,"normal": 6 正常,"slow": 3 慢,"slowest": 1 最慢画笔控制——绘图状态1、turtle.pendown()、turtle.pd()、turtle.down()画笔落下 -- 移动时将画线 2、turtle.penup()、turtle.pu()、turtle.up()画笔抬起 -- 移动时不画线 3、turtle.pensize(width=None)设置线条的粗细为 width 或返回该值

代码:

在画布的四个不同位置,绘制了4个半径为50的圆

import turtle as t # 设置海龟形状和速度 t.shape("turtle") t.speed() t.pu() #抬笔 t.setpos(-100,100) #将画笔移动到(-100,100)的位置 t.pd() #落笔,开始绘制半径为50的圆 t.circle(50) t.pu() #抬笔 t.goto(100,100) #将画笔移动到(100,100)的位置 t.pendown() #落笔,开始绘制半径为50的圆 t.circle(50) t.penup() #抬笔 t.setposition(100,-100) #将画笔移动到(100,-100)的位置 t.pendown() #落笔,开始绘制半径为50的圆 t.circle(50) t.pu() #抬笔 t.setpos(-100,-100) #将画笔移动到(-100,-100)的位置 t.pd() #落笔,开始绘制半径为50的圆 t.circle(50) t.ht() #隐藏海龟颜色控制和填充1、turtle.pencolor(colorstring)设置画笔颜色为 colorstring 指定的 Tk 颜色描述字符串,例如 "red"、"yellow" 或 "#33cc8c" 2、turtle.fillcolor(colorstring)设置填充颜色为 colorstring 指定的 Tk 颜色描述字符串,例如 "red"、"yellow" 或 "#33cc8c"。 3、turtle.color(colorstring1, colorstring2)设置画笔颜色和填充颜色,相当于 pencolor(colorstring1) 加 fillcolor(colorstring2) 4、turtle.filling()返回填充状态 (填充为 True,否则为 False) 5、turtle.begin_fill()在绘制要填充的形状之前调用 6、turtle.end_fill()填充上次调用 begin_fill() 之后绘制的形状

代码:

from turtle import * # 设置海龟形状和速度 shape("turtle") speed() color('red','light blue') # 设置画笔颜色为red,填充颜色为light blue begin_fill() # 开始填充 pu() #抬笔 setpos(-100,100) #将画笔移动到(-100,100)的位置 pd() #落笔,开始绘制半径为50的圆 circle(50) end_fill() # 结束填充 pu() #抬笔 goto(100,100) #将画笔移动到(100,100)的位置 pendown() #落笔,开始绘制半径为50的圆 circle(50) penup() #抬笔 setposition(100,-100) #将画笔移动到(100,-100)的位置 pendown() #落笔,开始绘制半径为50的圆 circle(50) #修改画笔颜色为blue,填充颜色为orange pencolor('blue') fillcolor('orange') begin_fill() # 开始填充 pu() #抬笔 setpos(-100,-100) #将画笔移动到(-100,-100)的位置 pd() #落笔,开始绘制半径为50的圆 circle(50) end_fill() # 结束填充 ht() #隐藏海龟

一开始使用color('red','light blue'),设置画笔和填充颜色分别为red和light blue,绘制完第一个圆之后,开始填充。

第二个和第三个圆并没有设置填充颜色,在绘制第四个圆之前,利用

1、pencolor('blue') 2、fillcolor('orange')

修改了画笔和填充的颜色。

更改背景颜色turtle.bgcolor(*args)一个颜色字符串或三个取值范围 0..colormode 内的数值或一个取值范围相同的数值3元组

更多可以关注公众号【陪孩子一起学编程】



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3