【问题标题】:How to change the Midpoint circle algorithm in order to take a Starting angle and ending Angle?如何更改中点圆算法以获取起始角度和结束角度?
【发布时间】:2017-05-01 19:13:14
【问题描述】:

我查看了很多地方,但没有找到任何资源(我理解)来解释如何将标准中点圆算法(使用八分圆创建整个圆)转变为仅考虑特定的“切片”圆圈。我正在使用它来查找视线半径内的瓷砖。

我使用的代码是关于如何实现算法的基本维基百科代码。

我在“处理”中使用 java 来制作原型。

我正在尝试了解此算法的工作原理,以便对其进行修改,但我遇到了麻烦。

【问题讨论】:

    标签: java algorithm graphics bresenham


    【解决方案1】:

    如果您要栅格化的点落入您通过角度(点)指定的范围内,则可以使用条件扩展中点算法或 Bresenham 算法。要获得范围,您必须在圆上找到起点和终点。这可以在极坐标的帮助下轻松完成。如果我们有一个半径为r、角度theta 和中心C(x0,y0) 的圆,圆上的点可以计算为pCircle(x,y) = (x0 + r * cos theta, y0 + r * sin theta)。请注意,角度以弧度为单位。

    【讨论】:

    • 谢谢,我熟悉三角学和极坐标系。在进一步研究之后,我发现了一些可以证明你所描述的东西。对于那些遇到同样问题的人来说,这里有一个可以将其付诸实践的链接。 answers.google.com/answers/threadview/id/769733.html 谢谢克鲁尔曼!
    猜你喜欢
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-08
    • 2018-05-01
    • 1970-01-01
    相关资源
    最近更新 更多