企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
第八章 图形软件开发 第一节 CMemDC封装类 第二节 图像透明技术 第三节 动画技术 第四节 透明动画 第五节 不规则窗口 第六节 双缓冲防闪烁技术 第七节 图层软件架构 第八节 CDC类成员函数介绍 一、图形软件分为:矢量图形软件和非矢量图形软件 a)矢量图形软件: 矢量图使用直线和曲线来描述图形,这些图形的元素是一些点、线、矩形、多边形、圆和弧线等等,它们都是通过数学公式计算获得的。 矢量图形最大的优点是无论放大、缩小或旋转等不会失真; 最大的缺点是难以如同照片一样表现色彩层次丰富的逼真图像效果。 例如:corel draw和AutuCAD以及Office办公软件的绘图功能等等。 b)非矢量图形软件:也叫点阵或栅格图像软件 是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。 缺点是当放大位图时,可以看见赖以构成整个图像的无数单个方块。 优点是可以以表现色彩层次丰富的逼真图像效果。 例如:Adobe Photoshop和画笔等软件。 有些软件(例如:Adobe Flash)完美地将矢量和非矢量图形的功能结合于一体。 二、图层软件架构: 开发一个可以支持画线、矩形和椭圆等图形的软件,必须将鼠标按下、释放和拖动等事件联合处理。如果将各种图形绘制以及拖放过程在一个类中编写,最后这个类的代码将无比庞大而且难于维护。大型图形软件通用的架构,是用一个抽象类将不同图层代码分类管理。 三、术语 UI:User Interface 用户界面 API:Application Programming Interface 应用程序接口 GDI: Graphics Device Interface 图形设备接口 纯虚函数:也叫抽象函数,无函数体。 格式:virtual 函数名(...) =0; 抽象类:含有抽象函数的类就叫抽象类