【问题标题】:Bresenham's algorithm drawing straight lines in all the octantsBresenham 算法在所有八分圆中绘制直线
【发布时间】:2017-01-16 20:29:30
【问题描述】:

我目前正在学习图形入门课程,并且正在学习使用 Bresenham 算法绘制直线。现在我必须承认,我的学习习惯涉及到谷歌搜索额外的笔记,因为有时课堂笔记是不够的。

我知道,使用一般的 Bresenham 算法,您通常可以绘制第一个八分圆,而为了绘制其他八分圆,您必须做一些花哨的技巧。

现在,我真正的问题是如何理解在七八分圆画线背后的概念。根据这些注释

https://courses.engr.illinois.edu/ece390/lecture/potts/lecture17_6pps.pdf

我在网上找到的(请参阅第 14 页和第 15 页以获得更清晰的 pdf)如果您想在第七个八分圆中绘制,您必须交换 x1、y1 和 x2、y2;然后将 X 增加 -1,最后将像素设置为 set_pixel(y,x)。但是,这就是我的困惑所在,在第 14 页上,它显示了在第七个八分圆中绘制的示例,为什么 dx 等于 正 6 而不是负 6?不是dx x2 - x1吗?

【问题讨论】:

    标签: graphics bresenham


    【解决方案1】:

    距离是坐标差的绝对值。我认为在 a later version of the same slides(在幻灯片 9 上)中,他们将其更改为 dx=|X2-X1|,这是正确的表示法。

    【讨论】:

    • 你能解释一下这背后的逻辑吗?
    • 链接已失效
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多