毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 报告 >> 正文

计算机图形学上机实习报告 第3页

更新时间:2007-10-3:  来源:毕业论文

这个类是很多图形学算法的基础。在计算机图形学中,很多运算都可以用矩阵运算(特别是矩阵乘)来描述,我们在程序设计过程中也不可避免的要使用到矩阵。一个比较自然的思路是用二文数组表示矩阵,但这样一来,矩阵的加,乘,拷贝等一系列运算都不方便实现。于是我们首先设计这样一个矩阵类,由上述类结构可见,这个类重载了很多的运算符,这样一来,我们的程序可以类似于这样去写:

Matrix3=Matrix1*Matrix2;

这样的写法无疑是非常清晰明了的,而且利于代码重用。

我们在矩阵设计的过程中规定了每个元素必须是double型,其实这里更好的写法是使用类模板。

 

 

点类(BCPoint

点类的定义如下所示:

class BCPoint

{

public:

BCPoint();

virtual ~BCPoint();

void Read(CString buf);

void Get2DView(double ViewerX,double ViewerY,double ViewerZ);

void Get2DView(CMatrix *Viewer);

void Move(CMatrix *MoveMatrix);

CPoint Device;

CMatrix User2D;

CMatrix User3D;

void BCPoint::operator =(BCPoint &other);

 

};

对于一个点来说,它的坐标分为三种:三文用户坐标,二文用户坐标和二文设备坐标,这里分别用成员变量User3DUser2DDevice表示,前两个变量类型都是CMatrix。其中User3DCMatrix(1,4)User2DCMatrix(1,3),便于进行矩阵运算Device的类型是CPoint,这个类是MFC提供的。

成员函数Get2DView是比较关键的一个函数,它根据点的三文用户坐标和视点的三文用户坐标,算出点的二文用户坐标。

成员函数Move可以用来实现点的移动,旋转等功能,这里只要给出适当的变换矩阵即可。

 

多边形类(CPolygon

下面展示多边形类的结构:

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页

计算机图形学上机实习报告 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。