OCC开源框架学****分享
第一页,共25页。
目录
研究方法
总体描述
OCC与MFC框架
OCC的基础数据
OCC的显示
OCC与Smart Electrical数据的设计
第二页,共25页。
(重点研显示和交互)
Interactive Context 及AIS对象,最重要的显示及交互的环境,所有的显示和交互由它来完成。
Interactive Objects,即交互实体,只有交互实体才能在交互环境中显示。
Graphic Attributes Manager,用来设置交互实体的图形属性。
Selection Filters,对用户希望的选择进行设置。
重点:熟练掌握
第十页,共25页。
Data Exchange(数据交互)
STEP等标准的数据结构。(免费)
DXF等标准的数据结构。(扩展,收费)
稍后研究
第十一页,共25页。
OCAF(应用程序框架)
结合mfc,App,doc,view的建立。
主要工作在doc和view上,doc建立数据,view完成交互。
其他一些功能,拷贝,黏贴,回退,前进,外部数据交换,文档保存等。
逐步仔细研究
第十二页,共25页。
它是OCAF在MFC上的实现
CDocument->OCC_BaseDoc->OCC_2dDoc
Cview->OCC_BaseView->OCC_2dView
pDocTemplateForView2d = new CMultiDocTemplate(
IDR_2DTYPE,
RUNTIME_CLASS(CMy2dDoc),
RUNTIME_CLASS(CMyFrame2D), // custom MDI child frame
RUNTIME_CLASS(CMyView2D));
第十三页,共25页。
它是OCAF在MFC上的实现
CWinApp->OCC_App->MyApp
CDocument->OCC_BaseDoc->OCC_2dDoc->My2dDoc
Cview->OCC_BaseView->OCC_2dView->My2dView
pDocTemplateForView2d = new CMultiDocTemplate(
IDR_2DTYPE,
RUNTIME_CLASS(My2dDoc),
RUNTIME_CLASS(MyFrame2D), // custom MDI child frame
RUNTIME_CLASS(MyView2D));
第十四页,共25页。
视图初始化过程
。
,用opengl连接创建viewer(仅创建视图指针,而非视图窗口),并作初始化设置。同时通过viewer再得到AISContext交互环境句柄。
()中,创建窗口(window),完成显示设置。
第十五页,共25页。
主要功能
,图形数据的处理(移动,拷贝等)。视图自动更新。
,并调用doc中的方法来完成响应。
第十六页,共25页。
学****方法
仔细读例子代码,理清逻辑关系。
第十七页,共25页。
一个图形数据(component)分为以下三部分,并分在不同的package和class下面:
Abstaction:图形的数据抽象(极简)
Control:图形的各种创建方法
Presetation:图形的显示
第十八页,共25页。
主要分两类
Basic:gp,例如gp_Pnt,gp_Circle……
Advance(句柄操作):Geom,Geom2d,例如Geom_Pnt,Geom2d_Pnt
……
第十九页,共25页。
第二十页,共25页。
Presentation Packages
Selection packages
Basic Management
PrsMgr
SelectMgr
2D objects
V2d and Graphic2d
SelectBasics, Select2d, Select3d an
occ开源框架学习分享 来自淘豆网www.taodocs.com转载请标明出处.