一、使用说明

确保电脑上安装了 turtle 库:

pip install -i https://mirrors.aliyun.com/pypi/simple turtle

调用库:

import turtle as t

二、代码

代码如下:

def ellipse(x, y, theta, l, size = 1, color = 'black'):
    """
    Created on Tue Feb  8 20:19:39 2022
        A function for drawing ellipses.
    @author: zq
    
    Parameters
    ----------
    x : int
        起始点的横坐标.
    y : int
        起始点的纵坐标.
    theta : int
        椭圆长轴与水平方向的夹角.
    l : int
        椭圆长轴的长度(不建议太大),0 - 1 即可,
        实际长度为该值的 800 倍左右.
    size : int
        画笔的粗细程度,默认为 1.
    color : str
        画笔的颜色,默认为黑色.
    """
    t.penup()
    t.goto(x, y)
    t.setheading(theta + 270)
    t.pensize(size)
    t.pencolor(color)
    t.pendown()
    a = 0.3
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            a += l
            t.lt(3)  # 向左转3度
            t.fd(a)  # 向前走a的步长
        else:
            a -= l
            t.lt(3)
            t.fd(a)
    t.penup()

三、使用说明

以点 (-100, 0) 处为起点,绘制长轴长分别为0.2、0.3、0.4,颜色分别为黑色、红色、蓝色的三个水平放置椭圆:

ellipse(-100, 0, 0, 0.2, size = 3)
ellipse(-100, 0, 0, 0.3, size = 3, color = 'red')
ellipse(-100, 0, 0, 0.4, size = 3, color = 'blue')

绘制如下:

在这里插入图片描述

更换角度绘制四个不同方向上的椭圆:

for theta in range(0, 360, 90):
    ellipse(0, 0, theta, 0.4, size = 2, color = 'blue')

在这里插入图片描述

一朵小花:

colors = ['red', 'blue', 'orange', 'green', 'yellow']
for i in range(5):
    t.fillcolor(colors[i])
    t.begin_fill()
    ellipse(0, 0, 72 * i, 0.4, size = 2)
    t.end_fill()

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐