图形学课件 第二章Visual C++6.0 绘图基础.ppt

图形学课件 第二章Visual C++6.0 绘图基础.ppt

ID:51624133

大小:2.99 MB

页数:87页

时间:2020-03-26

图形学课件 第二章Visual C++6.0  绘图基础.ppt_第1页
图形学课件 第二章Visual C++6.0  绘图基础.ppt_第2页
图形学课件 第二章Visual C++6.0  绘图基础.ppt_第3页
图形学课件 第二章Visual C++6.0  绘图基础.ppt_第4页
图形学课件 第二章Visual C++6.0  绘图基础.ppt_第5页
资源描述:

《图形学课件 第二章Visual C++6.0 绘图基础.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第二章VisualC++绘图基础开发工具的选择MFC上机操作步骤MFC基本绘图函数本章学习目标设备上下文的调用和释放MFC绘制图形的几种方法2.1面向对象程序设计基础(自学)2.2MFC上机操作步骤2.3MFC基本绘图函数2.4本章小结本章内容2.1开发工具的选择TurboC:控制台程序,不支持交互操作。只能显示16色,不能开发光照和带阴影的程序。TurboC绘制的Menger海绵VisualC++:可以显示真彩色,有1678万色。支持交互式绘图。VisualC++绘制的Menger海绵微软基类库MFC(mi

2、crosoftfoundationclasslibrary,MFC)是以C++形式封装的WindowsAPI(ApplicationProgramInterface),包含了200多个已经定义好的常用基类。在程序设计过程中,一般是通过MFC调用基类的成员函数来完成设计任务的。生成一个空项目的步骤见教材40页。添加菜单项并生成函数的步骤见教材82页。2.2MFC上机操作步骤VC环境与类视图资源视图文件视图【ClassView】标签页:☆CTestApp是应用的主函数类,代表了应用程序的主线程。☆MFC中的数据是

3、存储在CTestDoc类中,而结果则是显示在CTestView类中,即显示在客户区中。MFC中的文档/视图结构用来将程序的数据本身和数据显示相互隔离,文件读写的操作在文档类的Serialize()函数中进行,图形显示的操作在视图类的OnDraw()函数中进行。☆CMainFrame类由MainFrame.h和MainFrame.cpp文件组成,CTestApp类由Test.h和Test.cpp文件组成,框架类,CTestDoc类由TestDoc.h和TestDoc.cpp文件组成,CTestView类由Tes

4、tView.h和TestView.cpp文件组成。voidCTestView::OnDraw(CDC*pDC){CTestDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);//TODO:adddrawcodefornativedatahere}pDC定义为CDC类的指针。pDoc通过GetDocument()函数得到了指向文档类CTestDoc的指针。ASSERT_VALID(pDoc)函数使pDoc指针有效。使用pDC指针,可以对CDC类的成员函数进行操作。OnDraw()

5、函数是由系统框架直接调用的,每当窗口重绘时就会自动执行。OnDraw()函数:点击工具条上的“!”按钮,就可以直接编译、运行程序尽管未编写一句代码,但Test程序已经形成一个可执行程序框架!按钮2.3MFC基本绘图方法在Windows平台上,应用程序的图形设备接口(GraphicsDeviceInterface,GDI)被抽象化为设备上下文CDC类(DeviceContext,DC)。在微软基类库MFC中,CDC类是定义设备上下文对象的基类,封装了绘图所需的所有函数。当输出文字或图形时,就需要调用CDC类的成

6、员函数,这些成员函数具备绘制和打印图形的功能。例2-19使用同心椭圆和同心圆绘制著名标志。voidCTestView::OnDraw(CDC*pDC){CTestDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);//TODO:adddrawcodefornativedatahere……CPointdl,tr;//绘制外部黑色椭圆dl=CPoint(-200,-150),tr=CPoint(200,150);CBrushNewBrush,*pOldBrush;NewBrush.

7、CreateSolidBrush(RGB(0,0,0));pOldBrush=pDC->SelectObject(&NewBrush);pDC->Ellipse(CRect(dl,tr));pDC->SelectObject(pOldBrush);NewBrush.DeleteObject();MFC绘制图形的几种方法(2.3.7)voidCTestView::OnDraw(CDC*pDC){CTestDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);//TODO:adddr

8、awcodefornativedatahere//绘制外部白色圆dl=CPoint(-147,-147),tr=CPoint(147,147);pDC->Ellipse(CRect(dl,tr));//绘制内部黑色椭圆dl=CPoint(-140,-90),tr=CPoint(140,90);NewBrush.CreateSolidBrush(RGB(0,0,0));pOldBrush=pDC->S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。