python - svg 文件的分形设计
问题描述
我对编码很陌生,我正在尝试在其中一个盒子机翼上创建一个带有分形螺旋设计的盒子 svg 文件。我在这方面遇到了困难,我希望有人可以就我哪里出错提供一些指导。
这是我的代码的一部分:
import turtle
def spiral(x, y):
spiral1 = turtle.setpos({},{})
return spiral1.format(x,y)
t = turtle.Turtle()
t.pensize(1)
t.pencolor('orange')
t.speed(0)
for i in range (10):
t.circle(10 + i, 45)
spiral_1 = spiral(int(box_x)*96, int(box_height)*96)
这给了我一个错误:* 'dict' 和 'float' 不支持的操作数类型
基本上我想要做的是将这个螺旋写到我的实际svg文件中,该文件具有我已经定义的特定坐标(即box_height))。我不太确定从这里去哪里。我真的很感谢你的帮助。
编辑:也许我需要弄清楚如何用 svg 代码而不是海龟生成模式
解决方案
我希望有人可以就我哪里出错提供一些指导
我很难弄清楚你在哪里做对了:
spiral1 = turtle.setpos({},{})
这似乎不是 Python 参数语法并且setpos()
总是返回None
,因此将结果保存到spiral1
.
return spiral1.format(x,y)
None
没有format()
方法。此外,return
代码中的 at this point 会导致它忽略接下来的六行代码。实际上,根本不画画。
spiral_1 = spiral(int(box_x)*96, int(box_height)*96)
spiral()
没有返回任何有用的东西,所以没有必要保存结果。让我们重新编写你的代码,让它真正画出一个螺旋:
from turtle import Screen, Turtle
box_x, box_y = 96, 96
def spiral(x, y):
turtle.penup()
turtle.setposition(x, y)
turtle.pendown()
for i in range(100):
turtle.circle(10 + i, 45)
screen = Screen()
turtle = Turtle()
turtle.pencolor('orange')
turtle.speed('fastest')
spiral(box_x, box_y)
screen.exitonclick()
我不明白为什么这个问题被标记为[分形]。我也不明白为什么它被标记为 [xml] 和 [svg],因为它是一个简单的 Python 语法和海龟图形问题。而且你真的不应该开始使用 Python 2.7,因为它不再受支持。
推荐阅读
- excel - 按最近日期过滤数据 - (重复数据)
- python - s3中没有上传文件时如何触发lambda?
- gem5 - 如何定期驱逐特定的缓存行?
- javascript - 如何在 Chrome/Edge 浏览器中单击按钮时打印 SSRS 报告
- node.js - 如何通过指定我要创建的项目数在 Mongodb 中自动创建具有不同 ID 的项目表?
- python - 根据缺失数据添加行
- php - 用ftp制作php文件夹
- javascript - 如何在 django-leaflet 传单地图中表示 Geodjango 模型?
- docker - 在 Heroku 上部署 Net core 5.0 API 失败并出现 Docker 错误:无法启动 Kestrel
- smartcontracts - 带有 OpenZeppelin 合约的 Tron 网络