OCC开源框架学习分享
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
精品课件
4.OCC基础数据
1.Abstraction 主要分两类 Basic:gp,例如gp_Pnt,gp_Circle…… Advance(句柄操作):Geom,Geom2d,例如Geom_Pnt,Geom2d_Pnt ……
精品课件
4.OCC基础数据
2.Control
精品课件
4.OCC基础数据
pDocTemplateForView2d = new CMultiDocTemplate( IDR_2DTYPE, RUNTIME_CLASS(My2dDoc), RUNTIME_CLASS(MyFrame2D), // custom MDI child
frame RUNTIME_CLASS(MyView精2品D课)件);
frame RUNTIME_CLASS(CMyView2D));
精品课件
3.OCC与MFC框架
它是OCAF在MFC上的实现
CWinApp->OCC_App->MyApp
CDocument->OCC_BaseDoc->OCC_2dDoc->My2dDoc
Cview->OCC_BaseView->OCC_2dView->My2dView
精品课件
3.OCC与MFC框架
主要功能 1.Doc完成图形数据的构建,图形数据的处理(移动,拷贝 等)。视图自动更新。 2.View接收事件的消息,并调用doc中的方法来完成响应。
精品课件
3.OCC与MFC框架
学习方法 仔细读例子代码,理清逻辑关系。
精品课件
4.OCC基础数据
一个图形数据(component)分为以下三部分,并分在不同 的package和class下面: Abstaction:图形的数据抽象(极简) Control:图形的各种创建方法 Presetation:图形的显示
关于OCC的一些分享
周渝曦
精品课件
目录
1.研究方法 2.总体描述 3.OCC与MFC框架 4.OCC的基础数据 5.OCC的显示 6.OCC与Smart Electrical数据的设计
精品课件
1.研究方法(重点研究2D)
1.阅读ppt英文文档,不清楚的地方再参考OCCT帮助文 档。(达到对occ有个大致了解的目的)
4. Selection Filters,对用户希望的选择进行设置。
重点:熟练掌握
精品课件
2.总体描述
Data Exchange(数据交互) 1. STEP等标准的数据结构。(免费) 2. DXF等标准的数据结构。(扩展,收费) 稍后研究
精品课件
2.总体描述
OCAF(应用程序框架) 1. 结合mfc,App,doc,view的建立。 2. 主要工作在doc和view上,doc建立数据,view完成交互。 3. 其他一些功能,拷贝,黏贴,回退,前进,外部数据交换,
1.基本的类型,变量,特殊字符串等定义,比如 Standard_Integer 2.自动内存管理(handle管理机制) 3.对象集合的管理 4.基本的数学对象和运算定义,包括矢量,矩阵运算 5.内存对象的ACSII码存储?????
知识零散,前3条必须掌握
精品课件
2.总体描述
Modeling Data(数据类) 1.建立2D,3D几何对象 2.各种几何对象建立工具 3.建立3D(2D)的TOPO对象 重点:必须熟练运用
3.OCC与MFC框架
视图初始化过程 1.在app构造函数中得到opengl连接句柄。 2.在doc的构造函数中,用opengl连接创建viewer(仅创建 视图指针,而非视图窗口),并作初始化设置。同时通过 viewer再得到AISContext交互环境句柄。 3.在view的OnInitialUpdate()中,创建窗口(window), 完成显示设置。
精品课件
2.总体描述
Modeling Algorithms(几何计算类) 各种几何计算工具,包括插值,曲面计算等等,,,, 暂时可不研究
精品课件
2.总体描述
MESS(3D网格呈现) 主要用于3D实体网格化显示,包括各种工具和方法 暂时可不研究
精品课件
2.总体描述
Visualization(图形显示和交互)
精品课件
2.总体描述
选取occ作为底层框架的原因: 1.基于C++ 2.易于实现CAD技术框架,2D,3D扩展性 3.支持windows,android,mac 4.发展多年,较为成熟,功能完善 5.EPLAN等商业软件也采用OCC
精品课件
2.总体描述
精品Baidu Nhomakorabea件
2.总体描述
Foundation Classes(基本类)
文档保存等。 逐步仔细研究
精品课件
3.OCC与MFC框架
它是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
2.重新建立一个OCC工程,在视图窗口中画一个死的基 本元素。 (能处理各种编译问题,了解occ架构和基 本运行原理)
3.在此基础上,参考occtry,OCAF的例子,完成对视 图中对象的动态绘制及交互处理。 (对occ的整个操 作模式有个基本的感受,基本入门)
4.仔细研究OCAF,在OCAF上实现cad的一些基础功能, 包括绘图,插入,移动,拷贝,回退,前进等操作。 (达到可以进行Smart Electrical开发的要求)
1. Interactive Context 及AIS对象,最重要的显示及交互的环 境,所有的显示和交互由它来完成。
2. Interactive Objects,即交互实体,只有交互实体才能在交 互环境中显示。
3. Graphic Attributes Manager,用来设置交互实体的图形属 性。
3.Presentation
Presentation Packages Selection packages
Basic Management
4.OCC基础数据
1.Abstraction 主要分两类 Basic:gp,例如gp_Pnt,gp_Circle…… Advance(句柄操作):Geom,Geom2d,例如Geom_Pnt,Geom2d_Pnt ……
精品课件
4.OCC基础数据
2.Control
精品课件
4.OCC基础数据
pDocTemplateForView2d = new CMultiDocTemplate( IDR_2DTYPE, RUNTIME_CLASS(My2dDoc), RUNTIME_CLASS(MyFrame2D), // custom MDI child
frame RUNTIME_CLASS(MyView精2品D课)件);
frame RUNTIME_CLASS(CMyView2D));
精品课件
3.OCC与MFC框架
它是OCAF在MFC上的实现
CWinApp->OCC_App->MyApp
CDocument->OCC_BaseDoc->OCC_2dDoc->My2dDoc
Cview->OCC_BaseView->OCC_2dView->My2dView
精品课件
3.OCC与MFC框架
主要功能 1.Doc完成图形数据的构建,图形数据的处理(移动,拷贝 等)。视图自动更新。 2.View接收事件的消息,并调用doc中的方法来完成响应。
精品课件
3.OCC与MFC框架
学习方法 仔细读例子代码,理清逻辑关系。
精品课件
4.OCC基础数据
一个图形数据(component)分为以下三部分,并分在不同 的package和class下面: Abstaction:图形的数据抽象(极简) Control:图形的各种创建方法 Presetation:图形的显示
关于OCC的一些分享
周渝曦
精品课件
目录
1.研究方法 2.总体描述 3.OCC与MFC框架 4.OCC的基础数据 5.OCC的显示 6.OCC与Smart Electrical数据的设计
精品课件
1.研究方法(重点研究2D)
1.阅读ppt英文文档,不清楚的地方再参考OCCT帮助文 档。(达到对occ有个大致了解的目的)
4. Selection Filters,对用户希望的选择进行设置。
重点:熟练掌握
精品课件
2.总体描述
Data Exchange(数据交互) 1. STEP等标准的数据结构。(免费) 2. DXF等标准的数据结构。(扩展,收费) 稍后研究
精品课件
2.总体描述
OCAF(应用程序框架) 1. 结合mfc,App,doc,view的建立。 2. 主要工作在doc和view上,doc建立数据,view完成交互。 3. 其他一些功能,拷贝,黏贴,回退,前进,外部数据交换,
1.基本的类型,变量,特殊字符串等定义,比如 Standard_Integer 2.自动内存管理(handle管理机制) 3.对象集合的管理 4.基本的数学对象和运算定义,包括矢量,矩阵运算 5.内存对象的ACSII码存储?????
知识零散,前3条必须掌握
精品课件
2.总体描述
Modeling Data(数据类) 1.建立2D,3D几何对象 2.各种几何对象建立工具 3.建立3D(2D)的TOPO对象 重点:必须熟练运用
3.OCC与MFC框架
视图初始化过程 1.在app构造函数中得到opengl连接句柄。 2.在doc的构造函数中,用opengl连接创建viewer(仅创建 视图指针,而非视图窗口),并作初始化设置。同时通过 viewer再得到AISContext交互环境句柄。 3.在view的OnInitialUpdate()中,创建窗口(window), 完成显示设置。
精品课件
2.总体描述
Modeling Algorithms(几何计算类) 各种几何计算工具,包括插值,曲面计算等等,,,, 暂时可不研究
精品课件
2.总体描述
MESS(3D网格呈现) 主要用于3D实体网格化显示,包括各种工具和方法 暂时可不研究
精品课件
2.总体描述
Visualization(图形显示和交互)
精品课件
2.总体描述
选取occ作为底层框架的原因: 1.基于C++ 2.易于实现CAD技术框架,2D,3D扩展性 3.支持windows,android,mac 4.发展多年,较为成熟,功能完善 5.EPLAN等商业软件也采用OCC
精品课件
2.总体描述
精品Baidu Nhomakorabea件
2.总体描述
Foundation Classes(基本类)
文档保存等。 逐步仔细研究
精品课件
3.OCC与MFC框架
它是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
2.重新建立一个OCC工程,在视图窗口中画一个死的基 本元素。 (能处理各种编译问题,了解occ架构和基 本运行原理)
3.在此基础上,参考occtry,OCAF的例子,完成对视 图中对象的动态绘制及交互处理。 (对occ的整个操 作模式有个基本的感受,基本入门)
4.仔细研究OCAF,在OCAF上实现cad的一些基础功能, 包括绘图,插入,移动,拷贝,回退,前进等操作。 (达到可以进行Smart Electrical开发的要求)
1. Interactive Context 及AIS对象,最重要的显示及交互的环 境,所有的显示和交互由它来完成。
2. Interactive Objects,即交互实体,只有交互实体才能在交 互环境中显示。
3. Graphic Attributes Manager,用来设置交互实体的图形属 性。
3.Presentation
Presentation Packages Selection packages
Basic Management