数字媒体技术计算机图形学VC++实验4:实现二维图形的平移、放缩和旋转变换

运行示例
在这里插入图片描述

1.实现绘制出坐标轴与矩形

新建项目命名为Translation
首先定义一些需要用到的变量 以及类

分别是点类 直线类 颜色类
直线类包含点类和颜色类
TranslationView.h包含直线类

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
还有个CLine,忘记截图了

随后直接编写三个类的头文件,源文件,把代码复制粘贴进去就行了
RGB.h
在这里插入图片描述
RGB.cpp
先把默认的构造函数和析构函数删了然后复制进去就行
在这里插入图片描述
然后到P2.h
在这里插入图片描述
P2.cpp需要添加头文件
math.h
然后把两个默认
构造函数删了 把代码全部复制粘贴进去
在这里插入图片描述

然后到Line.h
Line.h需要包含P2.h和RGB.h
在这里插入图片描述
然后到Line.cpp
Line.cpp需要包含math.h和四舍五入宏定义
删除默认构造析构 copy代码
在这里插入图片描述
下一步转到TranslationView.h
声明一些变量和函数
并且把直线类包含进去
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
然后转到TranslationView.cpp
添加宏定义和math.h
并修改OnDraw函数
以及刚才声明的四个函数
在这里插入图片描述
这里搞错了,有两个函数忘记写参数进去了

在这里插入图片描述

在这里插入图片描述
最终,还要添加一个特殊的函数,用这个函数来调用读取点表的函数
如果不添加,将会出现只绘制得出坐标轴,却绘制不出矩形的情况
在这里插入图片描述
在这里插入图片描述
随后即可编译运行
(要想让窗口以最大化打开)
修改以下代码
在这里插入图片描述

在这里插入图片描述

2.实现图形变换

首先添加图形变换类
然后编写菜单函数

在这里插入图片描述
Transform.h
在这里插入图片描述

Transform.cpp
在这里插入图片描述
然后修改TranslationView.h的内容
在这里插入图片描述
在这里插入图片描述
然后TranslationView.cpp
先修改一个函数的内容
在这里插入图片描述
然后开始编写菜单函数
一共八个
上下左右平移
顺逆时针旋转
等比放大缩小
后边就没什么需要关注的点了
复制粘贴完代码编译运行就好
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_62316271/article/details/130622458