You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python turtle库实现绘制居中上下堆叠等边三角形的方法

使用Python turtle绘制垂直居中、上下堆叠等边三角形的方案

你提供的参考代码实现的是左侧对齐的三角形堆叠,要实现垂直居中效果,需要调整每次绘制前的水平坐标,保证所有三角形的中线重合。

核心逻辑说明

  • 等边三角形的高度计算公式为 边长 * (√3 / 2),垂直方向每次移动当前三角形的高度即可实现无重叠堆叠
  • 每次绘制前将画笔的x坐标设置为负的当前边长的一半,即可让三角形的中线和画布y轴重合,实现水平居中

完整实现代码

import turtle

# 配置参数,可按需修改
NUMBER_OF_SHAPES = 4
SIDE_LENGTH_BASE = 20
DRAW_SPEED = 2

pen = turtle.Turtle()
pen.speed(DRAW_SPEED)

for shape_num in range(1, NUMBER_OF_SHAPES + 1):
    current_side_len = SIDE_LENGTH_BASE * shape_num
    # 调整画笔位置到当前三角形的居中起始点
    pen.penup()
    pen.setx(-current_side_len / 2)
    pen.pendown()

    # 绘制等边三角形
    for _ in range(3):
        pen.forward(current_side_len)
        pen.left(120)
    
    # 移动到下一个三角形的绘制起始位置
    pen.penup()
    # 向上移动当前三角形的高度,实现上下堆叠
    pen.sety(pen.ycor() + current_side_len * (3 ** 0.5) / 2)
    pen.pendown()

turtle.done()

参数调整说明

  • 修改NUMBER_OF_SHAPES即可调整堆叠的三角形总数量
  • 修改SIDE_LENGTH_BASE即可调整三角形的整体大小比例
  • 修改DRAW_SPEED可以调整绘制速度,数值越大速度越快,设置为0时是最快速度

内容的提问来源于stack exchange,提问作者Dude

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 02:27:03