
OpenCasCade
Opencascade
时间简史u
这个作者很懒,什么都没留下…
展开
-
拓扑引用TDataStd_Reference和引用关系TDataStd_TreeNode
一个数据对象可以作为另一个数据对象的子对象或者父对象,通过在TDF_Label上添加TDataStd_TreeNode属性,使两个数据对象之间建立拓扑关系。通过在TDF_Label中保存TDataStd_Reference和TDataStd_TreeNode属性,可以构建复杂的对象之间的引用关系和拓扑关系,从而实现CAD软件中的对象管理和操作。一个数据对象可以引用另一个数据对象,通过在TDF_Label上添加TDataStd_Reference属性,使两个数据对象之间建立引用关系。原创 2023-05-06 15:51:34 · 327 阅读 · 0 评论 -
一个对象中如何保存拓扑关系和引用关系
比如,一个实体对象可以保存一个由点、线、面组成的拓扑结构,这个拓扑结构可以通过在实体对象的 TDF_Label 中保存一个 TopoDS_Shape 对象来表示;另外,一个实体对象可能会引用一组点、线、面等,这些被引用的对象可以通过在实体对象的 TDF_Label 中保存一组 TDF_Reference 对象来表示。一般来说,拓扑关系指的是对象之间的拓扑结构,比如点、线、面等之间的包含、相交等关系;而引用关系则是指一个对象引用另一个对象的方式,比如一个实体可能会引用一组点、线、面等构成自己的形状。原创 2023-05-06 15:42:55 · 386 阅读 · 0 评论 -
OCCT Draw Modules中TKDCAF的作用
Package DDF:定义数据定义文件 (DDF),用于描述持久化数据结构和交换格式。 Package DDataStd:实现数据模型,定义通用的数据类型和实体属性。 Package DDocStd:定义文档模型,用于组织和管理多个模型实体,以及维护它们之间的关系。 Package DNaming:提供命名机制,用于标识模型中的实体和关系。 Package DPrsStd:实现可视化模型,提供对图形呈现和绘制的支持。 Package DrawDim:实现标注对象,提供对绘制标注的支持。原创 2023-05-04 17:46:08 · 137 阅读 · 0 评论 -
OCCT Draw Modules中各个Toolkit的作用
这些是 OpenCASCADE 的不同工具包(Toolkit),每个工具包包含一组相关的库、头文件和工具,用于实现特定的功能或服务。需要注意的是,这些工具包的具体内容可能会随着不同版本的 OpenCASCADE 的更新而有所变化。原创 2023-05-04 17:20:02 · 737 阅读 · 0 评论 -
OCCT各个Modules的作用
Open CASCADE Technology (OCCT) 中定义的模块,每个模块都包含一组相关的类和功能。每个模块都提供特定的功能,并且在使用 OCCT 时需要根据需要选择和使用。原创 2023-05-04 17:16:51 · 258 阅读 · 0 评论 -
OCAF——数据结构机制 Sample2
between table lamps in the data framework. [lamp 1:sub-label (0:1)]、[lamp 2:sub-label (0:2)],定义同样树结构但是不同的属性值的灯对象,因为灯的结构组成是可以复用的。⭐结构树的复用原则2:So, after the user changes the lamp design, only。. tags是仅对应某一行的地址,tags演化出entry,再组成label,不可以把tag当作part的name。原创 2023-04-10 10:25:44 · 465 阅读 · 0 评论 -
OCAF——数据结构机制 Sample1
如果是新增一个“咖啡把手”,或者“另外套咖啡机械系统”,应该在原有级别的Label[Tag]下,按顺序增加兄弟Label,但是新增Label[Tag]的子Label[Tag]顺序,可以沿用原有顺序;The nesting of labels is key to OCAF. 标签的嵌套是OCAF的关键。原创 2023-04-07 18:07:01 · 352 阅读 · 0 评论 -
OCAF——数据结构机制
Tag、label和attribute都是用来描述对象的。原创 2023-04-07 17:44:55 · 483 阅读 · 0 评论 -
OCAF的术语表
在编辑和重新生成模型时需要这种引用,并且可以将其视为旧版本模型中实体的标签和名称属性到新版本中相应实体的标签和名称属性的映射。——在数据框架中,这是一个标签,它已经在重新生成序列的范围内重新计算,并且包括包含要重新计算的特征的标签。——不变的引用,可以引用应用程序中使用的任何类型的数据。在其瞬态形式下,它是数据框架中的一个标签,数据以属性的形式附加在它上面。——一种树状数据结构,在 OCAF 中,它是一棵标签树,数据以属性的形式附加到标签上。——将对一个文档所做的修改传播到引用该文档的其他文档的能力。原创 2023-04-07 11:15:06 · 589 阅读 · 0 评论 -
OCAF——框架机制
Attribute是一个抽象类OCAF数据框架是一个引用属性的聚合aggregationsOCAF数据框架使用单个层次结构OCAF数据框架使用持久化标识符整个模型或其元素的几何形状,包括对形状的引用和形状演化的跟踪。原创 2023-04-07 10:58:17 · 647 阅读 · 0 评论 -
OCAF的Reference-key model机制-举例讲解
例如,通过使用这种模型,可以轻松地将一个对象插入到一个组中,或将一个对象与多个其他对象关联起来。这种模型也使得在多个应用程序之间共享对象变得更加容易,因为对象的唯一键可以用于标识和定位对象。在这种模型中,每个对象都有一个唯一的Key,它由OCAF系统自动生成并与该对象相关联。一个对象也可以有多个引用,这些引用是指向其他对象的指针。通过这些引用,一个对象可以访问其他对象,从而实现了对象之间的关联关系。但是,如果要删除对象之间的关联关系,需要手动删除相应的引用。原创 2023-04-06 17:42:35 · 712 阅读 · 0 评论 -
OCAF中的TFunction_Driver类的介绍
TFunction_Driver提供了一个可扩展的框架,使得用户可以添加自己的函数。这个新的函数类可以被添加到TFunction_Driver中,然后就可以通过TFunction_Driver的方法进行计算、缓存和管理。TFunction_Driver提供了一个统一的接口来操作函数,使得函数可以被计算、缓存和管理。TFunction_Driver是OpenCASCADE中的一个类,用于驱动函数操作,包括定义、计算和管理函数。原创 2023-04-06 10:12:56 · 689 阅读 · 0 评论 -
OpenCASCADE设计模式的介绍
Factory(工厂模式):OpenCASCADE中的工厂模式用于创建不同类型的对象。例如,GeomAPI_Fillet使用BRepFilletAPI_MakeFillet对象来创建拐角圆角,而BRepFilletAPI_MakeFillet是使用工厂模式创建的。Adapter(适配器模式):OpenCASCADE中的适配器模式用于将不同类型的对象转换为需要的类型。这些类只能创建一个实例,并提供全局访问。Strategy(策略模式):OpenCASCADE中的策略模式用于根据不同的算法选择不同的策略。原创 2023-04-06 10:07:45 · 301 阅读 · 0 评论 -
OpenCASCADE适配器类的介绍
OpenCASCADE适配器类用于将OpenCASCADE几何对象与其他CAD/CAM软件或几何建模库中的几何对象进行转换或交互操作。适配器类提供了一种方便的方式,用于在OpenCASCADE模型和其他软件之间进行数据交换和转换,从而使得OpenCASCADE更加灵活和实用。该类是OpenCASCADE中适配器的一部分,旨在使曲线能够适配不同的算法和函数,以进行各种操作,如交互、求交、裁剪等。IGESCAFControl_Reader:用于将IGES格式的文件中的实体读入OpenCASCADE模型中。原创 2023-04-06 10:02:39 · 722 阅读 · 0 评论 -
在vs2022中,c++怎么引用occ7.6第三方库
完成上述步骤后,你的项目就可以使用 OpenCASCADE 7.6 的库文件了。在代码中,你可以按照需要包含头文件,并使用 OpenCASCADE 7.6 提供的类和函数。在弹出的窗口中,选择“VC++目录”,然后在“包含目录”和“库目录”中添加 OpenCASCADE 7.6 的路径。下载 OpenCASCADE 7.6 的二进制版本,并解压到本地磁盘。在 VS2022 中打开你的项目,右键点击项目名称,选择“属性”。点击“应用”和“确定”按钮,保存更改。原创 2023-04-04 14:40:29 · 769 阅读 · 0 评论 -
OCAF来创建父子孙级别的结构树
这样,你就可以使用 OCAF 创建一个父子孙级别的结构树了。请注意,在实际应用中,你需要根据你的需求调整这些步骤。原创 2023-04-04 13:57:27 · 650 阅读 · 0 评论 -
使用OCAF搭一个父子孙级别的结构树
例如,可以在“Child”标签中存储一个字符串,描述这个标签所代表的对象。例如,在“Child”标签下创建“Grandchild”标签,这将建立“Child”标签到“Grandchild”标签的父子关系。创建孙标签:在“Child”标签下创建一个名为“Grandchild”的子标签,这将是结构树的第二层。创建子标签:在根标签下创建一个名为“Child”的子标签,这将是结构树的第一层。操作标签数据:可以使用OCAF读取或修改每个标签中存储的数据,也可以将标签移动到不同的位置,以更新父子孙关系。原创 2023-04-04 13:45:40 · 409 阅读 · 0 评论 -
如何将OCAF树保存到文件中
在这个测试函数中,我们首先创建一个根标签,然后向 OCAF 树中添加一些数据。接着,我们打印 OCAF 树,保存它到文件中,加载该文件并再次打印 OCAF 树。这个函数会创建一个新的 OCAF 文档,将我们的根标签添加到文档的根标签下,并将文档保存到指定的文件名中。这样,我们就完成了使用 OCAF 创建一个父子孙级别的结构树的过程。原创 2023-04-04 13:47:29 · 294 阅读 · 0 评论 -
AIS optimization tricks – short list
在对象构建时创建这些方面(而不是在::Compute()方法内)。在SelectMgr_EntityOwner::HilightWithColor()中修改主演示文稿的方面需要额外的实现工作,但提供更好的性能和内存使用。随着OCCT的标准AIS演示,可以有一个良好的开始,但学习如何创建自己的对象和使用现有的演示构建器是实现复杂应用中的多样性和实现最佳性能的必要条件。如果要更改AIS对象的单个子部分的颜色 - 将它们放入单独的Graphiv3d_Group中并分配唯一的Graphic3d_Aspects。原创 2023-04-04 09:03:17 · 460 阅读 · 0 评论 -
QT的TFunction_ExecutionStatus文件中,这些枚举参数的含义
例如,在QT中,当一个函数正在执行时,可以将其状态设置为"TFunction_ES_Executing",并在函数执行结束后将其状态设置为"TFunction_ES_Succeeded"或"TFunction_ES_Failed",以指示函数的执行结果。这些枚举参数定义了一个名为"TFunction_ExecutionStatus"的枚举类型,这是一个自定义类型,可能是在QT库中使用的一部分。在QT中,通常会定义一个函数的执行状态,以便在函数执行期间,程序能够确定函数当前的状态并做出相应的响应。原创 2023-03-31 09:33:50 · 110 阅读 · 0 评论 -
在OCC7.6中,gp_vector和gp_dir和gp_axis有什么区别
在OCC7.6中,gp_vector和gp_dir和gp_axis有什么区别原创 2023-03-15 15:49:24 · 479 阅读 · 0 评论 -
在OCC中,gp_vector和gp_dir有什么区别
在OCC7.6中,gp_vector和gp_dir有什么区别原创 2023-03-15 15:50:09 · 741 阅读 · 0 评论 -
在OCC中,将一个AIS_InteractiveContext对象中的元素remove完成后,下次显示的时候仍然会出现被remove的元素,仍然出现了
在OCC中,将一个AIS_InteractiveContext对象中的元素remove完成后,下次显示的时候仍然会出现被remove的元素,仍然出现了原创 2023-03-13 10:37:49 · 387 阅读 · 0 评论 -
在OCC中,AIS_interactiveContext的shiftselect有什么用
在OCC中,AIS_interactiveContext的shiftselect有什么用原创 2023-03-10 09:41:46 · 313 阅读 · 0 评论 -
在OCC7.6中,如何设置AIS的高亮优先级
在OCC7.6中,如何设置AIS的高亮优先级原创 2023-03-07 16:15:52 · 390 阅读 · 0 评论 -
在OCC中,如何设置AIS_InteractiveContxt同一对象多个AIS_Shape的高亮优先级
在OCC中,如何设置AIS_InteractiveContxt同一对象多个AIS_Shape的高亮优先级原创 2023-03-06 15:40:23 · 665 阅读 · 0 评论 -
在OCC中,AIS_InteractiveContxt的selection mode有哪几种
在OCC中,AIS_InteractiveContxt的selection mode有哪几种原创 2023-03-06 15:36:40 · 357 阅读 · 0 评论 -
在OCC中,AIS_InteractiveContxt的选择激活方式有什么
在OCC中,AIS_InteractiveContxt的选择激活方式有什么原创 2023-03-06 15:29:01 · 483 阅读 · 0 评论 -
在OCC7.6中,BRepPrimAPI_makeSphere怎么构造一个3D点
在OCC7.6中,BRepPrimAPI_makeSphere怎么构造一个3D点原创 2023-03-06 14:00:49 · 329 阅读 · 0 评论 -
SelectMgr_EntityOwner有什么用?
SelectMgr_EntityOwner有什么用?原创 2023-03-05 17:34:06 · 284 阅读 · 0 评论 -
在Opencascade中,使用SelectMgr_OrFilter,如何过滤AIS_InteractiveObject对象
在Opencascade中,使用SelectMgr_OrFilter,如何过滤AIS_InteractiveObject对象原创 2023-03-04 20:26:47 · 264 阅读 · 0 评论 -
c++中opencascade开发,选择对象的过滤器怎么开发
c++中opencascade开发,选择对象的过滤器怎么开发原创 2023-02-28 09:19:55 · 615 阅读 · 0 评论 -
如何把TopoDS对象转成AIS对象
如何把TopoDS对象转成AIS对象原创 2023-02-22 18:21:14 · 478 阅读 · 0 评论 -
在opencascad当中,AIS对象、TopoDS对象、和gp对象的区别是什么?
在opencascad当中,AIS对象、TopoDS对象、和gp对象的区别是什么?原创 2023-02-13 10:02:44 · 426 阅读 · 0 评论 -
AIS_InteractiveContext如何获取鼠标选择到的对象
AIS_InteractiveContext如何获取鼠标选择到的对象原创 2023-02-11 13:44:04 · 477 阅读 · 0 评论 -
AIS_InteractiveContext的DisplayNoSelection函数是什么用,参数有什么意义
AIS_InteractiveContext的DisplayNoSelection函数是什么用,参数有什么意义原创 2023-02-11 13:38:07 · 221 阅读 · 0 评论 -
Graphic3d_MaterialAspect
Graphic3d_MaterialAspect是一个C++类,是Open CASCADE框架中的一个构造图形表面材质的类。它可以通过指定颜色、光滑度、反射度等属性,来构造表面的材质效果。原创 2023-02-11 10:47:22 · 321 阅读 · 0 评论 -
AIS_InteractiveContext.Remove函数中每个参数的含义
"ais_interactiveContext.Remove"是OCCT(Open CASCADE Technology)库中的一个函数,其用于从ais_interactiveContext对象中移除一个AIS_InteractiveObject对象。原创 2023-02-11 10:42:55 · 208 阅读 · 0 评论