为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

OCC开源框架学习分享ppt课件

2021-03-15 25页 ppt 122KB 2阅读

用户头像 机构认证

爱赢

公司经营范围:网络软件设计、制作、图文设计、影视制作(编辑)

举报
OCC开源框架学习分享ppt课件关于OCC的一些分享周渝曦.目录研究方法总体描述OCC与MFC框架OCC的基础数据OCC的显示OCC与SmartElectrical数据的设计.1.研究方法(重点研究2D)1.阅读ppt英文文档,不清楚的地方再参考OCCT帮助文档。(达到对occ有个大致了解的目的)2.重新建立一个OCC工程,在视图窗口中画一个死的基本元素。(能处理各种编译问题,了解occ架构和基本运行原理)3.在此基础上,参考occtry,OCAF的例子,完成对视图中对象的动态绘制及交互处理。(对occ的整个操作模式有个基本的感受,基本入门)4.仔细研究OC...
OCC开源框架学习分享ppt课件
关于OCC的一些分享周渝曦.目录研究总体描述OCC与MFC框架OCC的基础数据OCC的显示OCC与SmartElectrical数据的.1.研究方法(重点研究2D)1.阅读ppt英文文档,不清楚的地方再参考OCCT帮助文档。(达到对occ有个大致了解的目的)2.重新建立一个OCC工程,在视图窗口中画一个死的基本元素。(能处理各种编译问,了解occ架构和基本运行原理)3.在此基础上,参考occtry,OCAF的例子,完成对视图中对象的动态绘制及交互处理。(对occ的整个操作模式有个基本的感受,基本入门)4.仔细研究OCAF,在OCAF上实现cad的一些基础功能,包括绘图,插入,移动,拷贝,回退,前进等操作。(达到可以进行SmartElectrical开发的要求).2.总体描述选取occ作为底层框架的原因:1.基于C++2.易于实现CAD技术框架,2D,3D扩展性3.支持windows,android,mac4.发展多年,较为成熟,功能完善5.EPLAN等商业软件也采用OCC.2.总体描述.2.总体描述FoundationClasses(基本类)1.基本的类型,变量,特殊字符串等定义,比如Standard_Integer2.自动内存管理(handle管理机制)3.对象集合的管理4.基本的数学对象和运算定义,包括矢量,矩阵运算5.内存对象的ACSII码存储?????知识零散,前3条必须掌握.2.总体描述ModelingData(数据类)1.建立2D,3D几何对象2.各种几何对象建立工具3.建立3D(2D)的TOPO对象重点:必须熟练运用.2.总体描述ModelingAlgorithms(几何计算类)各种几何计算工具,包括插值,曲面计算等等,,,,暂时可不研究.2.总体描述MESS(3D网格呈现)主要用于3D实体网格化显示,包括各种工具和方法暂时可不研究.2.总体描述Visualization(图形显示和交互)InteractiveContext及AIS对象,最重要的显示及交互的环境,所有的显示和交互由它来完成。InteractiveObjects,即交互实体,只有交互实体才能在交互环境中显示。GraphicAttributesManager,用来设置交互实体的图形属性。SelectionFilters,对用户希望的选择进行设置。重点:熟练掌握.2.总体描述DataExchange(数据交互)STEP等的数据结构。(免费)DXF等标准的数据结构。(扩展,收费)稍后研究.2.总体描述OCAF(应用程序框架)结合mfc,App,doc,view的建立。主要工作在doc和view上,doc建立数据,view完成交互。其他一些功能,拷贝,黏贴,回退,前进,外部数据交换,文档保存等。逐步仔细研究.3.OCC与MFC框架它是OCAF在MFC上的实现CDocument->OCC_BaseDoc->OCC_2dDocCview->OCC_BaseView->OCC_2dViewpDocTemplateForView2d=newCMultiDocTemplate(IDR_2DTYPE,RUNTIME_CLASS(CMy2dDoc),RUNTIME_CLASS(CMyFrame2D),//customMDIchildframeRUNTIME_CLASS(CMyView2D));.3.OCC与MFC框架它是OCAF在MFC上的实现CWinApp->OCC_App->MyAppCDocument->OCC_BaseDoc->OCC_2dDoc->My2dDocCview->OCC_BaseView->OCC_2dView->My2dViewpDocTemplateForView2d=newCMultiDocTemplate(IDR_2DTYPE,RUNTIME_CLASS(My2dDoc),RUNTIME_CLASS(MyFrame2D),//customMDIchildframeRUNTIME_CLASS(MyView2D));.3.OCC与MFC框架视图初始化过程1.在app构造函数中得到opengl连接句柄。2.在doc的构造函数中,用opengl连接创建viewer(仅创建视图指针,而非视图窗口),并作初始化设置。同时通过viewer再得到AISContext交互环境句柄。3.在view的OnInitialUpdate()中,创建窗口(window),完成显示设置。.主要功能1.Doc完成图形数据的构建,图形数据的处理(移动,拷贝等)。视图自动更新。2.View接收事件的消息,并调用doc中的方法来完成响应。3.OCC与MFC框架.学习方法仔细读例子代码,理清逻辑关系。3.OCC与MFC框架.4.OCC基础数据一个图形数据(component)分为以下三部分,并分在不同的package和class下面:Abstaction:图形的数据抽象(极简)Control:图形的各种创建方法Presetation:图形的显示.4.OCC基础数据1.Abstraction主要分两类Basic:gp,例如gp_Pnt,gp_Circle……Advance(句柄操作):Geom,Geom2d,例如Geom_Pnt,Geom2d_Pnt…….4.OCC基础数据2.Control.4.OCC基础数据3.PresentationPresentationPackagesSelectionpackagesBasicManagementPrsMgrSelectMgr2DobjectsV2dandGraphic2dSelectBasics,Select2d,Select3dandStdSelect3DobjectsV3d,Prs3d,Graphic3dandStdPrs.5.OCC的显示几何基本元素AIS_Interactive_ObjectAISContext->Display()图形数据到显示,调用过程如下:图形Topo结构组合注意:只有AIS_Interactive_Object才可以添加到视图中,其他几何元素不行。.5.OCC的显示ApplicationInteractiveServices(AIS)类用来管理视图的显示和选择可以在AIS_Context->display的方式往视图添加AIS_Interactive_Object也可以AIS_Context->remove的方式从视图删除AIS_Interactive_Object.5.OCC的显示ApplicationInteractiveServices(AIS)类用来管理视图的显示和选择显示过程自动完成可以在AIS_Context->display的方式往视图添加AIS_Interactive_Object也可以AIS_Context->remove的方式从视图删除AIS_Interactive_Object选中过程自动可以在myAISContext->AddFilter(EdgeFilter)的方式设置选择模式.5.OCC的显示AIS_Interactive_Object分为三类:1.基本类(与几何造型无关):AIS_Point,AIS_Axis,AIS_Line,AIS_Circle,AIS_Plane,AIS_Trihedron2.Object类:AIS_Shape为主3.标注类:AIS_RadiusDimensionAIS_Interactive_Object都由具体的几何模型创建得到,每个AIS_Interactive_Object都可以设置自己的显示模式和选中模式.
/
本文档为【OCC开源框架学习分享ppt课件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索