当前位置: 首页 > article >正文

python画正方形、平行四边形、六边形、五角星、风车(四个半圆)

画正方形、平行四边形、六边形、五角星、风车(四个半圆)


在这里插入图片描述

import turtle
def square(side_length):
    """正方形"""
    for _ in range(4):
        turtle.forward(side_length)
        turtle.right(90)

def parallelogram(base, height):
    """平行四边形"""
    for _ in range(2):
        turtle.forward(base)
        turtle.left(60)
        turtle.forward(height)
        turtle.left(120)

def hexagon(side_length):
    """六边形"""
    for _ in range(6):
        turtle.forward(side_length)
        turtle.right(60)

def star(size):
    """五角星"""
    for _ in range(5):
        turtle.forward(size)
        turtle.right(144)

def half_circle(radius):
    """半圆"""
    turtle.circle(radius, 180)

def windmill(radius):
    """风车"""
    for _ in range(4):
        half_circle(radius)  # 绘制半圆
        turtle.left(90)  # 旋转90度,位置调整到下一个半圆的起点


def main():
    turtle.speed(2)  # 设置速度
    turtle.pensize(2)  # 设置画笔粗细
    turtle.pencolor("pink")

    # 正方形
    turtle.penup()
    turtle.goto(-200, 200)  # 设置位置
    turtle.pendown()
    square(100)

    # 平行四边形
    turtle.penup()
    turtle.goto(-50, 200)  # 设置位置
    turtle.pendown()
    parallelogram(100, 50)

    # 六边形
    turtle.penup()
    turtle.goto(150, 200)  # 设置位置
    turtle.pendown()
    hexagon(100)

    # 五角星
    turtle.penup()
    turtle.goto(0, 0)  # 设置位置
    turtle.pendown()
    star(100)

    # 风车位置
    turtle.penup()
    turtle.goto(200, -200)  # 风车中心位置
    turtle.pendown()

    # 风车
    windmill(50)  # 半圆半径

    turtle.done()

if __name__ == "__main__":
    main()

http://www.kler.cn/a/316392.html

相关文章:

  • 从社交媒体到元宇宙:Facebook未来发展新方向
  • 【mysql】使用宝塔面板在云服务器上安装MySQL数据库并实现远程连接
  • qt QKeySequence详解
  • Linux 函数在多个地方被同时调用时,函数中的变量如何管理,确保互不影响
  • Spring MVC 与 JSP 数据传输
  • R语言机器学习与临床预测模型77--机器学习预测常用R语言包
  • ansible远程自动化运维、常用模块详解
  • SpringSecurity -- 入门使用
  • 网络安全-利用 Apache Mod CGI
  • antd table 可展开行的多种控制
  • 相亲交易系统源码详解与开发指南
  • 2024年华为杯数学建模E题-高速公路应急车道启用建模-基于YOLO8的数据处理代码参考(无偿分享)
  • 大厂面试真题:如何保证Kafka的消息不被重复消费
  • Laravel接口中实现WebSocket服务消息发送PHP中使用socket扩展搭建WebSocket服务
  • 网站自动识别使用设备
  • React 知识框架
  • SIP信令的基本流程
  • Android架构组件: MVVM模式的实战应用与数据绑定技巧
  • 低空经济刚需篇:各种道路不畅地区无人机吊装详解
  • Stable Diffusion 优秀博客转载
  • 【方案】智慧消防建设规划方案(PPT)
  • 富格林:积攒经验阻挠欺诈套路
  • 公用代码片码抽取需要不断的强化代码复用意识
  • 【高效且应用广泛的排序 —— 快速排序算法】
  • 如何让程序等待输入
  • springboot 整合酷狗获取MV视频最高画质(使用自己账户)