椭圆中点Bresenham算法

椭圆中点Bresenham算法

ID:47534576

大小:436.50 KB

页数:17页

时间:2020-01-13

椭圆中点Bresenham算法_第1页
椭圆中点Bresenham算法_第2页
椭圆中点Bresenham算法_第3页
椭圆中点Bresenham算法_第4页
椭圆中点Bresenham算法_第5页
资源描述:

《椭圆中点Bresenham算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、计算机图形学课程设计目录一、设计题目……………………………………………………………2二、设计要求……………………………………………………………2三、设计方案……………………………………………………………2四、程序流程图…………………………………………………………6五、程序清单…………………………………………………………7六、程序运行结果分析………………………………………………15七、系统不足及改进方案……………………………………………15八、设计总结…………………………………………………………1617计算机图形学课程设计一

2、、设计题目:椭圆中点Bresenham算法二、设计要求:1、要求有两种输入方式:(1)输入椭圆的长短轴来生成椭圆;(2)根据输入点来生成椭圆并输出椭圆的长短轴;2、椭圆的颜色为红色;三、设计方案:1、椭圆对称性质:椭圆分别关于X轴、Y轴对称。因此在计算椭圆生成的时候,只需要计算1/4个椭圆,经过对称原理就可以实现其他3/4个椭圆的生成了,即:计算出目标点(x,y)的坐标,必然存在(x,-y)、(-x,y)(-x,-y)。此方案中采用计算第一象限中椭圆的生成,即:计算x=0到y=0的1/4的椭圆。先通过平移的方法将假设椭圆中

3、心在坐标原点,然后计算,最后再平移到真实中心位置。2、对于第一象限的椭圆,斜率k=-(b*b)*x/(a*a)*y,当x<y时,斜率k的绝对值小于1,计算时在x方向上取单位量;当x>y时,斜率k的绝对值大于1,计算时在y方向上取单位量。记:xy的区域为第二区域。3、输入方式一:输入椭圆的长短轴来生成椭圆。已知:长短半轴分别为a、b,计算的初始位置为(0,b)。17计算机图形学课程设计椭圆的方程为:。令F(x,y)=b*b*x*x+a*a*y*y-a*a*b*b=0(1)对于第一区域,如图1所示,P

4、点坐标为(,)、P1(+1,)为P点正右边的点、P2(+1,-1)为P点右下方的点,M(+1,-0.5)为P1、P2的中点。17计算机图形学课程设计17计算机图形学课程设计令d=F(M)=F(+1,-0.5)=b*b+a*a*(b-0.5)*(b-0.5)-a*a*b*b当=0、=b时,d的初始值为:d=b*b-a*a*b+1/4a*ad>=0时,应取P2作为下一个像素点,则其正右方的点的坐标为(+2,-1),右下方的点的坐标为(+2,-2),中点坐标为(+2,-1.5)。17计算机图形学课程设计此时,d=F(M)=F(+

5、2,-1.5)=d+b*b*(2*+3)-2a*a*(-1)d<0时,应取P1作为下一个像素点,则其正右方的点的坐标为(+2,),右下方的点的坐标为(+2,-1),中点坐标为(+2,-0.5)。此时,d=F(M)=F(+2,-0.5)=d+2*b*b*+3*b*b(2)对于第二区域,如图2所示,P点坐标为(,),P1(,-1)为P点正下方的点、P2(+1,-1)为P点右下方的点,M(+0.5,-1)为P1、P2的中点。令d=F(M)=F(+0.5,-1)=b*b*(+0.5)*(+0.5)+a*a*(-1)*(-1)-a*

6、a*b*b17计算机图形学课程设计设P坐标的初始值为=,=,=d的初始值为:d=F(+0.5,-1)=b*b*(+0.5)*(+0.5)+a*a*(-1)*(-1)-a*a*b*bd>=0时,应取P1作为下一个像素点,则其正下方的点的坐标为(,-2),右下方的点的坐标为(+1,-2),中点坐标为(+0.5,-2)。此时,d=F(M)=F(+0.5,-2)=d+a*a*(3-2*)d<0时,应取P2作为下一个像素点,则其正下方的点的坐标为(+1,-2),右下方的点的坐标为(+2,-2),中点坐标为(+1.5,-2)。此时,d

7、=F(M)=F(+1.5,-2)=d+2*b*b*(+1)+a*a*(3-2*)(3)根据对称性原理计算其他3个象限的坐标。输入方式二:根据输入点来生成椭圆并输出椭圆的长短轴。已知:两点坐标(,)、(,)设椭圆的方程为:17计算机图形学课程设计将两点坐标(,)、(,)代人椭圆方程中,得出a、b的值分别为:=(*-*)/(-)=(*-*)/(-)然后按照方式一生成所求椭圆。四、程序流程图输入方式一的流程图如图3所示:输入方式二的流程图如图4所示:17计算机图形学课程设计17计算机图形学课程设计五、程序清单//zhongdia

8、nsuanfa.cpp:Definestheentrypointfortheconsoleapplication.#include"stdafx.h"#include#include#include#includeinta;int

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。