Python海龟绘图:turtle的简单使用

您所在的位置:网站首页 海龟编辑器如何使用 Python海龟绘图:turtle的简单使用

Python海龟绘图:turtle的简单使用

#Python海龟绘图:turtle的简单使用| 来源: 网络整理| 查看: 265

   Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。    使用时需要添加头文件

import turtle 一、画布(canvas)

   画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置 设置画布的大小:

turtle.screensize(canvwidth=None, canvheight=None, bg=None)

canvwidth:画布的宽(单位像素,默认值400) canvheight:画布的高(单位像素,默认值300) bg:背景颜色 使用:

t.screensize(800,600,'blue') turtle.setup(width=0.5, height=0.75, startx=None, starty=None)

width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例 startx, starty: 这一坐标表示 矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心 使用:

turtle.setup(width=0.9, height=0.9) turtle.setup(0.9,0.9) #和上面代码效果相同 turtle.setup(width=800, height=800, startx=100, starty=100) 二、画笔 2.1画笔的状态

   在画布上,默认有一个坐标原点为画布中心的坐标轴, 坐标原点上有一只面朝x轴正方向小乌龟.    这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态

2.2 画笔的属性

画笔(画笔的属性,颜色、画线的宽度)

turtle.pensize():设置画笔的宽度;turtle.pencolor(); 没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green", “red”,也可以是RGB 3元组turtle.speed(speed): 设置画笔移动速度,画笔绘制的速度范围[0,10]整数, 数字越大越快 2.3 绘图命令

   操纵海龟绘图有着许多的命令,这些命令可以划分为3种:一种为运动命令,一种为画笔控制命令,还有一种是全局控制命令 1、画笔运动的命令: 在这里插入图片描述 2、画笔控制命令 在这里插入图片描述 3、全局控制命令 在这里插入图片描述 4、其他命令 在这里插入图片描述

三、circle函数

以给定半径画圆

turtle.circle(radius, extent=None, steps=None)

radius(半径); 半径为正(负),表示圆心在画笔的左边(右边)画圆 extent(弧度) (optional); steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)

举例:

turtle.circle(50) # 整圆; turtle.circle(50,steps=3) # 三角形; turtle.circle(120, 180) # 半圆 四、绘图举例 奥运五环

在这里插入图片描述 实现代码

import turtle as t #直接到达坐标x,y的位置 def go(x,y) : t.penup() t.goto(x,y) t.pendown() #设置画布大小、画笔大小、画笔粗细 def pen() : t.screensize(0.99, 0.99) t.pensize(10) t.speed(10) def main() : pen() pencolor = ['blue','black','red','yellow','green'] #列表存储画笔颜色 x = -450 y = 0 for i in range(5) : if i == 3 : x = -225 y = -150 if i < 3 : go(x + i * 450,y) t.pencolor(pencolor[i]) t.circle(200) else : go(x + ( i - 3 ) * 450, y) t.pencolor(pencolor[i]) t.circle(200) if __name__ == '__main__': main() 520

在这里插入图片描述 实现代码

from turtle import * def go_to(x, y): up() goto(x, y) down() def big_Circle(size): #函数用于绘制心的大圆 speed(10) for i in range(150): forward(size) right(0.3) def small_Circle(size): #函数用于绘制心的小圆 speed(10) for i in range(210): forward(size) right(0.786) def line(size): speed(10) forward(51*size) def heart( x, y, size): go_to(x, y) left(150) begin_fill() line(size) big_Circle(size) small_Circle(size) left(120) small_Circle(size) big_Circle(size) line(size) end_fill() def arrow(): pensize(10) setheading(0) go_to(-400, 0) left(15) forward(150) go_to(339, 178) forward(150) def arrowHead(): pensize(1) speed(10) color('red', 'red') begin_fill() left(120) forward(20) right(150) forward(35) right(120) forward(35) right(150) forward(20) end_fill() def main(): pensize(2) color('red', 'pink') #getscreen().tracer(30, 0) #取消注释后,快速显示图案 heart(200, 0, 1) #画出第一颗心,前面两个参数控制心的位置,函数最后一个参数可控制心的大小 setheading(0) #使画笔的方向朝向x轴正方向 heart(-80, -100, 1.5) #画出第二颗心 arrow() #画出穿过两颗心的直线 arrowHead() #画出箭的箭头 go_to(400, -300) done() if __name__ == '__main__': main() 小猪佩奇

在这里插入图片描述 实现代码

from turtle import* speed(10) def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 setheading(-30)#将乌龟的方向设置为to_angle/为数字(0-东、90-北、180-西、270-南) begin_fill()#准备开始填充图形 a=0.4 for i in range(120): if 0


【本文地址】


今日新闻


推荐新闻


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