用户:
孤僻的木叶龙982查看:0 回复:3 评论:0 创建时间:2020-02-25T14:27:44
【作品展示】

【作品介绍】
万花尺就是圆内摆线。由三个参数决定:外圆半径。
内圆半径。
轨迹点半径。
【作品源代码】
import math
import turtle
__Pen = turtle.Pen()
def 计算前景色():
global r, g, b
c = (外圆转过角度 % (255 * 6))
if (c >= 255 * 5):
b += 1
elif (c >= 255 * 4):
g -= 1
elif (c >= 255 * 3):
r += 1
elif (c >= 255 * 2):
b -= 1
elif (c >= 255 * 1):
g += 1
else:
r -= 1
#print(r, g, b)
return '#%02X%02X%02X' % (r, g, b)
#return (r / 255), (g / 255), (b / 255)
def 计算笔迹点():
内圆圆心x = ((外圆半径 - 内圆半径) * math.cos(math.radians(外圆转过角度)))
内圆圆心y = ((外圆半径 - 内圆半径) * math.sin(math.radians(外圆转过角度)))
内圆转过角度 = ((外圆转过角度 * 外圆半径) / 内圆半径)
笔迹点角度 = (外圆转过角度 - 内圆转过角度)
笔迹点x = (内圆圆心x + 笔迹点半径 * math.cos(math.radians(笔迹点角度)))
笔迹点y = (内圆圆心y + 笔迹点半径 * math.sin(math.radians(笔迹点角度)))
return 笔迹点x, 笔迹点y
#开始进入Python的世界
global 外圆半径, 内圆半径, 笔迹点半径, 笔迹点x, 笔迹点y, 外圆转过角度, r, g, b
外圆半径, 内圆半径, 笔迹点半径 = 150, 53, 60
外圆转过角度 = 0
笔迹点x = ((外圆半径 - 内圆半径) + 笔迹点半径)
笔迹点y, 外圆转过角度 = 0, 0
r, g, b = 255, 0, 255
__Pen.clear()
__Pen.penup()
__Pen.goto(笔迹点x, 笔迹点y)
__Pen.pendown()
for __count in range(7200):
__Pen.pencolor(计算前景色())
外圆转过角度 += 1
[笔迹点x, 笔迹点y] = 计算笔迹点()
__Pen.goto(笔迹点x, 笔迹点y)
while (input('gameOver? Y/N ') != 'Y'):
pass
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn