用python画旋转正方形(用python画旋转正方形形成11角形)

http://www.itjxue.com  2023-03-17 01:10  来源:未知  点击次数: 

python海龟作图怎么打开?

import turtle就引入海龟作图模块。运行这个模块,就可以作图。

#旋转的正方形

import turtle

import random

t=turtle.Turtle()

t.speed(0)

a=200

n=4

k=360/n

for i in range(90):

####t.pencolor(random.random(),random.random(),random.random())

####t.rt(1)

####for j in range(n):

########t.forward(a)

########t.right(360/n)

t.done()

a=input()

把#替换为空格就可以运行。

总结用python绘制正多边形的规律?

如果能够找到规律,可以让代码变得更简单。上述代码中其实就是调用circle()函数四次,每次传入参数不同而已。

我们可以加入循环,循环就是重复不停地做相同的事情;再找到循环变量和画圆参数之间的规律即可。

第一个圆的半径为50,每次按15的节奏递减,直到绘制完半径为5的圆。这样就可以使用range()函数,传入如下参数:range(50,0,-15)。

或者由小到大绘制,传入这样的参数也可以:range(5,51,15)。

还可以这样:循环四次,循环变量i依次为0、1、2、3,再在绘制圆的过程中构造递减的表达式:100/2-i*15。

分析这个表达式,当i等于0时,结果为50,绘制半径为50的圆;当i等于1时,结果为35,绘制半径为35的圆……正好符合题目要求的参数值。

【扩展】思考如何绘制以坐标原点为中心的同心圆呢?

仔细观察画笔绘制圆的轨迹,可发现:默认小海龟从坐标原点出发,逆时针旋转一圈画圆;然后,再回到起始点。

所以,绘制同心圆。我们需要将画笔向下移动一定的距离,即改变y的坐标,x坐标保持不变为0。参考代码如下:

循环体内,每次需要抬笔和落笔功能。

02

案例二:绘制一个正多边形

绘制正多边形有这样一个结论:用360°去除以绘制的边数,即可得到旋转角度。

比如:正三角形的旋转角度(360/3=120°)、正四边形的旋转角度(360/4=90°)、正八边形的旋转角度(360/8=45°)。其他以此类推。

那么,我们要绘制一个正八边形呢?

使用循环结构,循环八次。每次前移一定距离,再旋转(360/边数)的角度,这里旋转的就是45°角。参考代码如下:

有了这样的结论,其他的正多边形都可以信手拈来,小菜一碟了。只需要稍微改几个参数即可。

03

案例三:绘制由多种颜色组成的正螺旋线

比如,这样的图形:

这是由八种颜色组成的正八边形螺旋线结构图,颜色依次为:红(red)、绿(green)、蓝(blue)、黄(yellow)、紫(purple)、橙(orange)、黑(black)、粉(pink)等八种。

绘制思路:

首先,需要创建一个颜色列表list,含有八种颜色元素。

第二,前移一定距离,这个距离值是由小到大逐级递增的过程。

第三,旋转一定角度,可参照案例二的结论。

最后,考虑画笔的颜色,每8次(边数)为一个周期循环颜色列表。

参考代码如下:

其他的正螺旋线,也是如此规律。

【扩展】如果是有一定旋转角度的螺旋线呢?比如,这样的图形:

解题思路:只需要在正螺旋线的基础上,让旋转角度多偏移1-2°即可。修改上述案例中最后一行的代码:

求教python中的turtle

简介:turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令。

1.在文件头写上如下行,这能让我们在语句中插入中文

#-*- coding: utf-8 -*-

2.用import turtle导入turtle库

3.绘图窗口的原点(0,0)在正中间。默认情况下,海龟向正右方移动。

4.操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令

(1)运动命令:

forward(d)

向前移动距离d代表距离

backward(d)

向后移动距离d代表距离

right(degree)

向右转动多少度

left(degree)

向左转动多少度

goto(x,y)

将画笔移动到坐标为(x,y)的位置

stamp()

绘制当前图形

speed(speed)

画笔绘制的速度范围[0,10]整数

(2)画笔控制命令:

down()

画笔落下,移动时绘制图形

up()

画笔抬起,移动时不绘制图形

setheading(degree)

海龟朝向,degree代表角度

reset()

恢复所有设置

pensize(width)

画笔的宽度

pencolor(colorstring)

画笔的颜色

fillcolor(colorstring)

绘制图形的填充颜色

fill(Ture)

fill(False)

circle(radius, extent)

绘制一个圆形,其中radius为半径,extent为度数,例如若extent为180,则画一个半圆;如要画一个圆形,可不必写第二个参数

5.几个例子

1)画一个边长为60的三角形

#-*- coding: utf-8 -*-

importturtle

a=60

turtle.forward(a)

turtle.left(120)

turtle.forward(a)

turtle.left(120)

turtle.forward(a)

turtle.left(120)

2)画一个边长为60的正方形,并填充为红色,边框为蓝色

#-*- coding: utf-8 -*-

importturtle

turtle.reset()

a= 60

turtle.fillcolor("red")

turtle.pencolor("blue")

turtle.pensize(10)

turtle.fill(True)

turtle.left(90)

turtle.forward(a)

turtle.left(90)

turtle.forward(a)

turtle.left(90)

turtle.forward(a)

turtle.left(90)

turtle.forward(a)

turtle.fill(False)

6.练习:

1)画一个五边形

2)画一个六边形

3)任意输入一个正整数m(=3),画一个多边形(m条边)

4)画一个五角星,如下所示,注意填充为红色

5)画一个中国象棋棋盘,如下图所示,其中汉字不必显示出来:

6)绘制奥运五环图,其中五种颜色分别为蓝色、黑色、红色、黄色和绿色。注意根据实际效果调整圆形的大小和位置。

怎样用python语言的turle绘制一个边长200的正方形?

import turtle as t

import time

for i in range(4):

t.pensize(5)

t.pendown()

t.fd(200)

t.pensize(5)

t.pencolor("black")

t.right(90)

time.sleep(5)

望采纳

(责任编辑:IT教学网)

更多

推荐网站策划文章