python - Python Turtle 嵌套方块 - 如何修复第二个方块额外移位?
问题描述
我已经开始学习 Python 并玩弄 Turtle 绘制各种形状。我决定画n个嵌套的正方形,得到了如下结果:
然而正如你所看到的,在第一次迭代之后,第二个方块的位置已经向左/下方向移动了太多。以下所有方块看起来都不错。我希望所有正方形彼此之间具有相同的偏移量。
我应该如何修改我的代码来解决这个问题?
def draw_squares(side_len, num_squares, side_increment):
for i in range(num_squares):
draw_polygon(4, side_len)
pen.up()
pen.setposition(x - side_len/2, y - side_len/2)
pen.down()
side_len += side_increment
side_length = 50
num_of_squares = 10
side_incr = 40
draw_squares(side_length, num_of_squares, side_incr)
turtle.done()
解决方案
我认为您的问题是第一个正方形从(0,0)开始。draw_polygon()
您可以通过在调用函数之前设置位置来轻松纠正此问题。
def draw_squares(side_len, num_squares, side_increment):
for i in range(num_squares):
pen.up()
pen.setposition(x - side_len/2, y - side_len/2)
pen.down()
draw_polygon(4, side_len)
side_len += side_increment
如果这不能解决问题,请分享您的draw_polygon()
功能。
推荐阅读
- python - 致命错误:Python.h:没有这样的文件或目录,python-Levenshtein 安装
- html - CSS 仅选择内容并排除跨度
- css - chartjs - 如何在底角添加边框半径
- python - Keras 验证准确性正在提高
- php - 如何将字段添加到通知 laravel
- sql-server - 确定与岛屿的连续一天可用性
- javascript - 里程/站点编号的输入掩码
- windows - 运行 Veeam PowersShell 脚本时服务器重启
- javascript - 我们如何用 R 语言绘制 Highcarts 组织结构图?
- excel - 使用 VBA 对命名的 Excel 范围进行排序,使用 DIM 来引用命名范围,我得到一个错误