Python 家庭作业帮助?用于制作螺旋描记器
所以在休息周,我们的老师给了我们一个需要呼吸记录仪的小项目,这是他以前帮助我们写的代码Python 家庭作业帮助?用于制作螺旋描记器,python,Python,所以在休息周,我们的老师给了我们一个需要呼吸记录仪的小项目,这是他以前帮助我们写的代码 from graphics import * from math import * def ar(a): return a*3.141592654/180 def main(): x0 = 100 y0 = 100 startangle = 60 stepangle = 120 radius = 50 win = GraphWin() p
from graphics import *
from math import *
def ar(a):
return a*3.141592654/180
def main():
x0 = 100
y0 = 100
startangle = 60
stepangle = 120
radius = 50
win = GraphWin()
p1 = Point(x0 + radius * cos(ar(startangle)), y0 + radius * sin(ar(startangle)))
for i in range(stepangle+startangle,360+stepangle+startangle,stepangle):
p2 = Point(x0 + radius * cos(ar(i)), y0 + radius * sin(ar(i)))
Line(p1,p2).draw(win)
p1 = p2
input("<ENTER> to quit...")
win.close()
main()
从图形导入*
从数学导入*
def ar(a):
返回a*3.141592654/180
def main():
x0=100
y0=100
startangle=60
步进角=120
半径=50
win=GraphWin()
p1=点(x0+半径*cos(ar(星缠结)),y0+半径*sin(ar(星缠结)))
对于范围内的i(步进角+星形缠结,360+步进角+星形缠结,步进角):
p2=点(x0+半径*cos(ar(i)),y0+半径*sin(ar(i)))
线(p1,p2)。平局(赢)
p1=p2
输入(“退出…”)
赢
main()
然后,他想让我们开发一个程序,连续绘制12个等边三角形(在一个360度的圆中,每次将三角形旋转30度)。这可以通过“步进”STARTANGLE参数来实现。我的问题是,我被困在从这里走到哪里,他所说的“步进”是什么意思?我假设做一些循环,有人能给我一个正确的步骤吗?这是一个使用matplotlib的解决方案。一般程序将是相同的。但是,为了使用允许使用的库,您必须修改它
from math import radians, sin, cos
import matplotlib.pyplot as plt
startAngle = 0
stepAngle = 30
origin = (0,0)
points = []
points.append(origin)
points.append((cos(radians(startAngle)), sin(radians(startAngle))))
for i in range(startAngle + stepAngle, 360 + stepAngle, stepAngle):
x = cos(radians(i))
y = sin(radians(i))
points.append((x,y))
points.append(origin)
points.append((x,y))
x,y = zip(*points) #separate the tupples into x and y coordinates.
plt.plot(x,y) #plots the points, drawing lines between each point
plt.show()
plt.plot
在列表中的每个点之间绘制线。我们添加原点,这样我们得到的是三角形,而不是围绕中心的多边形 我的猜测(因为我在这里只是猜测,这是一个注释而不是答案)是,他说的是使用范围的步骤
值,就像他在示例代码中所做的那样。如果您不知道,范围的工作方式是:range(start,stop,step)
,从start
开始,在stop
之前结束一个,每次移动step
距离。我建议您在此处阅读adsmith的注释,然后尝试拨弄参数以了解发生了什么。虽然此代码将绘制多边形,但不会绘制三角形。你还得给原点画几条线。我有点困惑,为什么你的老师会让你从数学
导入所有东西。。。但是不要使用pi
。