如何解决如何遍历圆的外左边界?
我需要绘制一个具有特定范围的圆。在我的情况下,我需要从顶部开始,然后向下到圆圈的底部,越过圆圈的左外边界。我需要知道每条线的长度以及 X 和 Y 坐标。我基本上把一个圆圈看作是一堆相互堆叠的线,随着它进一步向下,水平线的长度不断增长,直到它到达中间点,然后它一直往回走,收缩和收缩。然后你有一个圆圈。我需要遍历每条线,从左侧知道它们的 X 和 Y 坐标,以便我可以执行 line_to_the_left(x,y,length)
来绘制圆。
采用范围的算法如何做到这一点?我知道我需要的一件事是 Pi。
解决方法
您可以对整数 Y
值进行循环。对于中心坐标 cx,cy
和半径 R
:
for y = - R ... R:
hw = (int) sqrt(R^2 - y^2) //halfwidth
line(cy + y,cx - hw,cy + y,cx + hw) //left and right ends of line
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。