第24期-画图形
作者:互联网
1 问题描述
按照要求使用turtle库画出图形
画半径为50的圆;
画长方形;
画边长为100的红色五角星。
2 解题思路
在画布上,默认有一个坐标原点为画布中心的坐标轴,坐标原点上有一只面朝x轴正方向小乌龟。这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中,就是使用位置方向描述小乌龟(画笔)的状态。
操纵海龟绘图有着许多的命令,这些命令可以划分为3种:一种为运动命令,一种为画笔控制命令,还有一种是全局控制命令。
3 解题方法
画半径为50的圆
import turtle turtle.circle(50) turtle.done()
第1行: 引入turtle画图库
第2行: turtle.circle()便是turtle库的画圆指令,括号内填的是半径
第2行: turtle.done()是turtle库的运行指令,表示开始画图
代码运行结果为:
这里用到了turtle.circle函数,简单讲解下这个函数:
turtle.circle()函数
语法:
turtle.circle(radius, extent=None, steps=None)
参数说明:
radius(半径):半径为正(负),表示圆心在画笔的左边(右边)画圆;
extent(弧度) (optional);
steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)。
画长方形
import turtle i = 1 while i <= 4: if i % 2 == 1: turtle.fd(100) else: turtle.fd(50) turtle.left(90) i += 1 turtle.done()
第1行: 引入turtle画图库
第2行: 定义i变量并赋值为1,作为画图时转弯以及前进的次数
第3行: 使用while循环,当前进次数小于或等于四的时候,继续循环
第4-7行: 当次数是奇数时,前进100个单位,当次数是偶数时,前进50个单位
第8行: 每当一条线画完的时候,前进方向都向左转90度
第9行: 记录转弯及前进的次数
第9行: 开始画图
代码运行结果为:
画边长为100的红色五角星
import turtle i = 1 turtle.fillcolor('red') turtle.color('red') turtle.begin_fill() while i <= 5: turtle.fd(100) turtle.right(144) i += 1 turtle.end_fill() turtle.done()
第1行: 引入turtle画图库
第2行: 定义i变量并赋值为1,作为画图时转弯以及前进的次数
第3行: 定义画图的填充颜色为红色(指闭环图形内部的颜色)
第4行: 定义画图的画笔颜色为红色(指任意图形边长的颜色)
第5行: 填充颜色开始
第6行: 使用while循环,当前进次数小于或等于5的时候,继续循环
第7-9行: 每次循环前进100个单位,每当一条线画完的时候,前进方向都向右转144度,并记录记录转弯及前进的次数
第10行: 给从turtle.begin_fill()到turtle.end_fill()内部的代码期间画的图形填充颜色
第11行: 开始画图
代码运行结果为:
全部放到一起
import turtle # 引入一个绘图库 # 画半径为50的圆 turtle.circle(50) # 画长方形 turtle.penup() turtle.goto(-100, 0) turtle.right(180) turtle.pendown() i = 1 while i <= 4: if i % 2 == 1: turtle.fd(100) else: turtle.fd(50) turtle.left(90) i += 1 turtle.left(180) # 画边长为100的红色五角星 turtle.penup() turtle.goto(100, 0) turtle.pendown() i = 1 turtle.fillcolor('red') turtle.color('red') turtle.begin_fill() while i <= 5: turtle.fd(100) turtle.right(144) i += 1 turtle.end_fill() turtle.done()
代码运行结果为:
这里用到了turtle库内的一些方法,简单讲解下这些方法:
turtle.circle(半径)
设置填充颜色turtle.fillcolor(颜色) 开始填充turtle.begin_fill() 结束填充turtle.end_fill()
抬起笔turtle.up() 放下笔turtle.down()
向左转turtle.left(角度) 向右转turtle.right(角度)
向前走turtle.forward(距离)/turtle.fd(距离) 向后走turtle.back(距离)/turtle.bk(距离)
移动到指定位置tutle.goto(x坐标, y坐标)/ turtle.setx(x坐标) / turtle.sety(y坐标) 回到开始位置turtle.home()
设置笔的颜色turtle.pencolor(颜色)
标签:24,turtle,颜色,50,画图,半径,图形,circle 来源: https://www.cnblogs.com/lg03/p/15772078.html