二维变换与裁剪

一、实验目的及要求

实验要求:

  1. 掌握Liang-Barskay裁剪算法裁剪金刚石图案的方法;
  2. 正确的放缩效果、平移效果;
  3. 良好的交互设计;

二、实验仪器设备与软件环境

Windows 7以上操作系统
Microsoft Visual Studio 2010

三、实验过程及实验结果分析

(包括实验原理、步骤、数据、图表、结果及分析。软件类实验应写出程序代码;硬件类实验画出电路原理图(或逻辑框图)、列出实验数据,并对实验结果进行分析)

目标:以鼠标位置为中心用梁友栋-Barsky算法裁剪,附加功能是将该区域内的图形方法或者缩小(点鼠标左键放大,点鼠标右键缩小。当点击次数超过规定次数时给予提示)。

主要实验步骤:

1 菜单:项目/添加类, 填入类名CP2,选择虚析构函数
2 P2.h如下:把CP2()和~CP2中的参数 void去掉

(二)CTestView.h声明8个成员函数、5个成员变量

运行并保存一个版本
(二)在CTestView.cpp中实现函数,
1前面添加:

3裁剪测试函数ClipTest(函数头和函数体都要加)

4 裁剪函数 LBLineClip(函数头和函数体都要加)

5 放缩函数ZooX, ZooY

8 双缓冲函数DoubleBuffer(函数头和函数体都要加)

10修改已经存在的OnDraw函数,添加DoubleBuffer(pDC)(将参数中pDC两侧的注释去掉)

运行保存一个版本,此时鼠标左键右键可以实现放大和缩小
5 同样打开CTestView类向导,消息中找到WM_CONTEXTMENU, 将对应的处理程序删掉。 可以去掉右键弹起时的快捷菜单

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年3月6日
下一篇 2022年3月6日

相关推荐