m0_59104254 2021-06-08 15:42 采纳率: 0%
浏览 1071

如何用python绘制5个五角星 颜色随机 位置随机

要求 绘制窗口800*600

多种颜色用列表储存

绘制五角星单独用函数封装

  • 写回答

2条回答 默认 最新

  • CSDN专家-黄老师 2021-06-08 16:02
    关注
    import turtle
    
    
    def star(x, y, left_angle, edge_len, color='yellow'):
        """
        画一个五角星
        :param x: 起始x坐标
        :param y: 起始y坐标
        :param left_angle: 画笔方向逆时针转动度数
        :param edge_len: 五角星边的长度
        :param color: 五角星颜色
        :return:
        """
        # 五角星边的颜色
        turtle.pencolor(color)
        # 五角星内部填充色
        turtle.fillcolor(color)
        # 绘制速度,0代表最快,1-10:数字越大越快
    
        turtle.pu()  # 抬起画笔
        turtle.goto(x, y)  # 移动到初始位置
        turtle.pd()  # 放下画笔
    
        turtle.begin_fill()  # 开始填充图形
        # 画笔方向以水平方向为基准
        # 逆时针转动 left_angle 度
        turtle.left(left_angle)
        # 循环绘制五角星的 5 条边
        for _ in range(5):  
            # 向画笔方向移动edge_len像素长度
            # 即:绘制五角星的一条边
            turtle.forward(edge_len)
            # 画笔方向顺时针旋转144度
            # 由于五角星内角是36度,因此旋转180-36=144度
            turtle.right(144) 
        turtle.end_fill()  # 填充完成
        # 将画笔方向恢复为水平方向,以免影响后续画图
        turtle.left(-left_angle)
    
    turtle.screensize(800, 600,  "white")
    star(20, 100, 50, 100, color='red')
    star(150, 150, 100, 150, color='blue')
    star(-200, -200, 150, 100, color='blue')
    turtle.done()

    只要根据函数的参数设置就行了

    如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog