zoukankan      html  css  js  c++  java
  • python之demo2----改编自python官方提供的turtle_yinyang.py画阴阳的demo

    """
        执行 python -m turtledemo 命令查看系统内置demo的源码
    
        绘制:需要通过import turtle引入绘制图形库turtle库
        改编自python提供的turtle_yinyang.py
    author:bravestarr
    date:12/7/2017
    """
    import turtle
    
    # 定义大圆半径200,则小圆半径big_radius * 0.5, 假如内部最小圆半径为big_radius*0.15
    big_radius = 200
    
    
    def main():
        turtle.reset()
        turtle.shape("turtle")
        yin("black", "white", 1)
        yin("white", "black", -1)
        turtle.ht()
    
    
    def yin(big_fillcolor, inner_fillcolor, direction):
        """
        画一半阴阳八卦
        :param big_fillcolor:   外部大圆填充色
        :param inner_fillcolor: 内部小圆填充色
        :param direction: 1表示开始默认开始方向向右,-1表示开始默认开始方向向左
        :return:
        """
        turtle.pensize(3)
        # 设置pencolor和fillcolor
        turtle.color("black", big_fillcolor)
        # 开始填充
        turtle.begin_fill()
        # 画内半圆
        turtle.circle(big_radius / 2.0, 180)
        # 画外半圆
        turtle.circle(big_radius, 180)
        # 海龟箭头左转180度
        turtle.lt(180)
        # 反方向画内半圆,反方向画圆,半径前要加 -
        turtle.circle(-big_radius / 2.0, 180)
        # 结束填充
        turtle.end_fill()
        # 画笔抬起
        turtle.pu()
        # 从画笔当前位置开始画圆,因此需要减去内圆半径,y方向移动,x方向不变
        turtle.sety(direction * big_radius * (0.5 - 0.15))
        # 画笔放下
        turtle.pd()
        # 设置pencolor和fillcolor
        turtle.color(big_fillcolor, inner_fillcolor)
        # 开始填充内圆
        turtle.begin_fill()
        # 画内圆
        turtle.circle(big_radius * 0.15)
        # 结束填充内圆
        turtle.end_fill()
        # 画笔抬起
        turtle.pu()
        # 海龟箭头回到(0, 0)坐标
        turtle.goto(0, 0)
        # 画笔放下
        turtle.pd()
        # 海龟箭头左转180度
        turtle.lt(180)
        return "Done!"
    
    
    if __name__ == '__main__':
        main()
        turtle.mainloop()
        
  • 相关阅读:
    AMD平台如何使用Android Studio官方的高性能模拟器
    Nginx安装SSL证书,开启HTTPS加密
    【English】20190429
    【Teradata】TD Unicode编码格式下varchar定义测试
    【Teradata TTU】Windows TTU安装工具列表
    【English EMail】2019 Q2 Public Holiday Announcement
    【English】20190428
    【张东武 老架一路74式第一段】第二式 金刚捣碓
    【影音制作】编辑视频
    【Teradata SQL】多行转一列函数TDStats.udfConcat
  • 原文地址:https://www.cnblogs.com/bravestarrhu/p/8287334.html
Copyright © 2011-2022 走看看