python turtle 绘制太极图的实例

 更新时间:2019年12月18日 11:43:31   作者:pmwhywl  
今天小编就为大家分享一篇python turtle 绘制太极图的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

效果如下所示:

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

import turtle


# 绘制太极图函数
def draw_TJT(R):
    turtle.screensize(800, 600, "green")  # 画布长、宽、背景色 长宽单位为像素
    turtle.pensize(1)  # 画笔宽度
    turtle.pencolor('black')  # 画笔颜色
    turtle.speed(10)  # 画笔移动速度


    TJT_color = {1: 'white', -1: 'black'}  # 太极图填充色 1 白色 -1 黑色
    color_list = [1, -1]


    """
    先画半边,再画另一边
    """
    for c in color_list:
        turtle.fillcolor(TJT_color.get(c))  # 获取该半边的填充色
        turtle.begin_fill()  # 开始填充


        # 开始画出半边的轮廓
        turtle.circle(R / 2, 180)
        turtle.circle(R, 180)
        turtle.circle(R/2, -180)


        turtle.end_fill()  # 结束填充 上色完成


        # 绘制该半边的鱼眼
        turtle.penup()  # 提起画笔,移动不留痕
        turtle.goto(0, R/3*c)  # 移动到该半边的鱼眼的圆上 R/3*c 表示移动到哪边
        turtle.pendown()  # 放下画笔,移动留痕
        turtle.fillcolor(TJT_color.get(-c))  # 获取鱼眼填充色, 与该半边相反
        turtle.begin_fill()
        turtle.circle(-R/6, 360)
        turtle.end_fill()


        # 回到原点,为下一循环的开始做准备
        turtle.penup()
        turtle.goto(0, 0)
        turtle.pendown()


    # 绘制文本
    turtle.penup()
    turtle.goto(0, -R-50)
    turtle.pendown()
    turtle.write("太极图 made by kjshen", font=('Arial', 12, 'normal'))


if __name__ == '__main__':
    R=100  # 太极图半径
    draw_TJT(R)
    raw_input('Press Enter to exit...')  # 防止程序运行完成后就自动关闭窗口

以上这篇python turtle 绘制太极图的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python光学仿真实现波长与颜色之间对应关系示例解析

    Python光学仿真实现波长与颜色之间对应关系示例解析

    这篇文章主要为大家介绍了Python光学仿真实现波长与颜色之间对应关系的示例解析,有需要的我朋友可以借鉴参考下,希望能够有所帮助
    2021-10-10
  • 解决Python3用PIL的ImageFont输出中文乱码的问题

    解决Python3用PIL的ImageFont输出中文乱码的问题

    今天小编大家分享一篇解决Python3用PIL的ImageFont输出中文乱码的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Python之eval()函数危险性浅析

    Python之eval()函数危险性浅析

    这篇文章主要介绍了Python之eval()函数危险性浅析,需要的朋友可以参考下
    2014-07-07
  • Python搭建监控平台的实现示例

    Python搭建监控平台的实现示例

    本文主要介绍了Python搭建监控平台的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Jupyter notebook运行Spark+Scala教程

    Jupyter notebook运行Spark+Scala教程

    这篇文章主要介绍了Jupyter notebook运行Spark+Scala教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python利用线程实现多任务

    python利用线程实现多任务

    这篇文章主要介绍了python利用线程实现多任务,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-09-09
  • Python环境安装配置实用的提示

    Python环境安装配置实用的提示

    想要使用Python语言编写程序,我们必须下载Python安装包并配置Python环境,这篇文章主要给大家介绍了关于Python环境安装配置实用提示的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • 使用python的chardet库获得文件编码并修改编码

    使用python的chardet库获得文件编码并修改编码

    windows和linux采用了不同的编码,这让很多人伤透了脑经,这里我采用了Python的chardet库获得代码的编码,然后修改编码
    2014-01-01
  • selenium+Chrome滑动验证码破解二(某某网站)

    selenium+Chrome滑动验证码破解二(某某网站)

    这篇文章主要介绍了selenium+Chrome滑动验证码破解二(某某网站),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • python网络编程实例简析

    python网络编程实例简析

    这篇文章主要介绍了python网络编程,有不错的借鉴价值,需要的朋友可以参考下
    2014-09-09

最新评论