简易海龟画图模块.py

如本文章标有价格,需议价或其它事情商议请加微信scratch8

"""
   简易海龟画图模块.py
   学习如何定义函数专用模块
"""

import math
import turtle

def square(t, length):
    """画正方形
       t , 海龟对象
       length,边长
    """
    for i in range(4):
        t.fd(length)
        t.lt(90)

def polyline(t, n, length, angle):
    """画线段,有n段。
    t: 海龟对象
    n: 线段的数量
    length: 线段的长度
    angle: 线段之间的补角
    """
    for i in range(n):
        t.fd(length)
        t.lt(angle)

def polygon(t, n, length):
    """画n正多边形。
    t: 海龟对象
    n: 边数
    length: 边长
    """
    angle = 360.0/n
    polyline(t, n, length, angle)

def arc(t, r, angle):
    """用给定的半径和角度画弧。
    t: 海龟对象
    r: 半径
    angle: 角度
    """
    arc_length = 2 * math.pi * r * abs(angle) / 360
    n = int(arc_length / 4) + 1
    step_length = arc_length / n           # 步长
    step_angle = float(angle) / n          # 步角 
    
    t.lt(step_angle/2)
    polyline(t, n, step_length, step_angle)
    t.rt(step_angle/2)

def circle(t, r):
    """画圆
    t: 海龟对象
    r: 半径
    """
    arc(t, r, 360)

def main():
    
    jack = turtle.Turtle()
    jack.speed(0)
    jack.screen.delay(0)
 
    radius = 100
    circle(jack, radius)

    # 进入事件循环
    turtle.mainloop()

if __name__ == '__main__':

     main()

本站所有作品,教程等皆为原创,版权所有。只供个人及单位内部研究使用,对外展示或传播必需经本站同意,且注明来自本站。培训机构等用本站资源培训学生,需经本站授权。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。亦可直接向微信号scratch8付款购买。入住QQ群:225792826 和爱好者共同交流,并且能下载免费提供的Python资源(需提供真实姓名才可入群)
李兴球的博客_Python创意编程技术前沿_pygame » 简易海龟画图模块.py
scratch

学本领,探索更大的世界!

李兴球博客 风火轮编程主页