经典标识TAG

张开发
2026/6/30 4:46:24 15 分钟阅读
经典标识TAG
import turtle import math tturtle.Turtle()t.speed(0)t.hideturtle()# 画布设置让图形居中 screenturtle.Screen()screen.setup(width800,height800)screen.bgcolor(white)screen.title(等距嵌套三角形)defdraw_triangle(size):绘制一个边长为size、中心在原点的等边三角形hsize*math.sqrt(3)/2# 等边三角形的高 # 定位到三角形左下角顶点中心在(0,0)时的坐标 t.penup()t.goto(-size/2,-h/3)t.setheading(0)# 朝右 t.pendown()# 绘制三条边for_ inrange(3):t.forward(size)t.left(120)# 核心参数可根据需要调整 max_size400# 最大三角形边长对应最外层 min_size5# 最小三角形边长对应最内层 num_layers53# 总层数控制线条疏密越大越密 # 计算等距步长等差数列保证间距完全相等 # 等边三角形的高边长 × √3/2max_hmax_size*math.sqrt(3)/2min_hmin_size*math.sqrt(3)/2total_h_diffmax_h-min_h # 总高度差 # 每层高度差相等 → 边长差也相等 h_steptotal_h_diff/(num_layers-1)size_steph_step/(math.sqrt(3)/2)# 边长步长 # 从内到外绘制先画最小的再依次画更大的 current_sizemin_sizefor_ inrange(num_layers):draw_triangle(current_size)current_sizesize_step # 等距递增实现均匀间距 turtle.done()

更多文章