数学与软件科学学院实验报告
学期: 2010 至 2011 第一学期 2010年 10月 5日课程名称: 计算机图形学专业:信息与计算科学2007级5班实验编号: 03 实验项目: 圆弧生成算法
指导教师:庞朝阳学号:20070605 实验成绩:
一、实验目的及要求
1:圆弧上的八个对称点的算法描述;
2:了解圆弧的的基本绘制算法;
3:绘制椭圆;
二.基本思想
1:圆弧被定义为到给定中心位置(x0,y0)距离为r的点集,圆心为与原点的圆有四条对称轴:x=0, y=0, x=y, x=-y 。已知圆弧上一点(x ,y),则可以的到关于四条对称轴的其他7个点(八对称性),因此只需要扫描八分之一的圆弧就可以求的整个圆弧的所有点。
三:首先来了解一下圆弧上的八个对称点的算法描述(以中心在原点,半径为整数R的圆为例)。
Void circlepoints(int x, int y ,int color)
{
Setpixel(x,y,color); setpixel(y, x,color);
Setpixel(-x,y,color); setpixel(y,-x,color);
Setpixel(x,-y,color); setpixel(-y,x,color);
Setpixel(-x,-y,color);setpixel(-y,-x,color);
}
四:八分之一圆弧的扫描变换的实现。
1.算法根据圆的基本方,沿X轴从0到3/2R,以单位步长计算对应的y值来获得圆周上每点的位置:y=2
22x
x ,