画圆之前,首先需要了解如下:
当F(x, y)= 0,表示点在圆上,当F(x, y)> 0,表示点在圆外,当F(x, y)< 0,表示点在圆内。如果M是P1和P2的中点,则M的坐标是(xi + 1, yi – 0.5),当F(xi +1, yi – 0.5)< 0时,M点在圆内,说明P1点离实际圆弧更近,应该取P1作为圆的下一个点。同理分析,当F(xi + 1, yi – 0.5)> 0时,P2离实际圆弧更近,应取P2作为下一个点。当F(xi +1, yi – 0.5)= 0时,P1和P2都可以作为圆的下一个点,算法约定取P2作为下一个点。
现在将M点坐标(xi + 1, yi – 0.5)带入判别函数F(x, y),得到判别式d:
d = F(xi + 1, yi –0.5)= (xi + 1)2 +(yi – 0.5)2 – R2
若d < 0,则取P1为下一个点,此时P1

本文介绍了一种使用中点画圆算法绘制圆的方法,并通过OpenGL实现了该算法。文章详细解释了如何选择下一个最佳像素点,并提供了完整的源代码。
最低0.47元/天 解锁文章
1275

被折叠的 条评论
为什么被折叠?



