理论教育 VegaPrime虚拟现实开发技术:图片产生类设计

VegaPrime虚拟现实开发技术:图片产生类设计

时间:2023-11-25 理论教育 版权反馈
【摘要】:本书设计了一个图片绘制类DrawHDCpicture,该类使用Windows 中使用的DC,绘制图片,然后把数据复制到BITMAP 中,保存为位图。图片绘制类DrawHDCpicture 中,除了构造函数和析构函数外,还包含5个成员函数。GetBitmap 函数是一个线程函数,按一定的时间间隔更新图片文件的内容。图7.5.2图形绘制类DrawHDCpictureOnbuildBitmap 函数中的绘制代码已经被设置为黑色倾斜格式,里面的内容可按照DC的绘制方法进行绘制。完全可以根据用户的需求进行设置。

VegaPrime虚拟现实开发技术:图片产生类设计

动态产生图片的方法有很多种,读者可以采用自己最喜欢的一种方式进行。本书设计了一个图片绘制类DrawHDCpicture,该类使用Windows 中使用的DC(绘制上下文),绘制图片,然后把数据复制到BITMAP 中,保存为位图

图片绘制类DrawHDCpicture 中,除了构造函数和析构函数外,还包含5个成员函数。如果对实现细节不感兴趣,直接调用即可。前3个函数是基本功能函数:CopyDCToBitmap 函数处理DC 结构的相关数据,最后复制DC 数据到BITMAP 结构中;SaveBmp 函数则是处理BITMAP 结构的相关数据,并最终保存成硬盘文件,本书把图片文件默认保存为mm.bmp;OnbuildBitmap 函数则是建立一个DC 结构,并把用户需要的信息绘制到DC 结构中,然后调用前面2个函数,完成图片文件的保存。GetBitmap 函数是一个线程函数,按一定的时间间隔更新图片文件的内容。布尔变量running 是控制线程函数的运行。

图片绘制类DrawHDCpicture的详细代码如图7.5.2所示。

(www.daowen.com)

图7.5.2 图形绘制类DrawHDCpicture

OnbuildBitmap 函数中的绘制代码已经被设置为黑色倾斜格式,里面的内容可按照DC的绘制方法进行绘制。例如,可以使用TextOut 绘制文本,可以用LineTo 绘制线段等。当然,也可以设置相关的颜色信息。完全可以根据用户的需求进行设置。

GetBitmap 函数则是按一定的时间间隔调用OnbuildBitmap 函数,产生新的图片,这里设置的时间间隔为1 s。PublicMember::DrawPicSpan=0 则是相当于供VP的主线程进行通信的一个开关变量,该值为零,则表示VP 主线程需要重新加载新的纹理图片文件,其他情况则不需要重新加载。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈