gpt4 book ai didi

algorithm - 计算圆圈中的点 - 步长?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:29:49 28 4
gpt4 key购买 nike

我想计算一个圆上的所有点。我已经知道我可以使用 x = r * cos(theta) + x0, y = r * sin(theta) + y0 来计算点 - 但是我想知道是否有是根据我的像素 Canvas (或我的 LCD)的分辨率和圆的半径为 theta 找到合适步长的好方法。

这是我已有的代码(_arange() 类似于 range() 但也为 step 取了一个 float 值):

def circle(x0, y0, r):
step = 2 * math.pi / 1000
for theta in _arange(0, 2 * math.pi, step):
x = x0 + r * math.cos(theta)
y = y0 + r * math.sin(theta)
set(round(x), round(y))

最佳答案

听起来像 midpoint circle algorithm可能适合您的需求。

the midpoint circle algorithm is an algorithm used to determine the points needed for drawing a circle

关于algorithm - 计算圆圈中的点 - 步长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14947345/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com