以产品和出现的形式读取形状的装配体结构:产品是定义一次的零件或子装配体,出现是它带矩阵和父节点的一次放置。
这是 STEP 装配体导入生成的内容,也是树形视图遍历的内容;普通形状不报告任何产品。
要分析的形状
根产品、所有产品和所有实例
描述每个面的几何:它所在曲面的种类、其 UV 边界、是否携带三角化,以及一个唯一 id。
面按 shapes.face.getFaces 使用的顺序从 0 开始编号。
要分析的形状
每个面一个几何条目
描述每条边的几何:它所遵循曲线的种类、其参数范围、其连续性和一个唯一 id。
边按 shapes.edge.getEdges 列出的顺序从 0 开始编号。
要分析的形状
每条边一个几何条目
将图的一个节点(按其种类和索引给出)变回它所代表的真实子形状,使查询找到的面或边可以用于操作。
索引是查询结果使用的索引,每种类型从 0 开始计数。
形状、节点类型和节点索引
子形状
找出代表形状某个给定子形状的图节点:其种类、索引和唯一 id。
这是 reconstruct 的逆操作;不属于该形状的子形状给出标记为无效的结果。
形状及其一个子形状
节点的类型、索引和 id,或无效结果
统计形状的组成:实体、壳体、面、线框、边、共边和顶点,它们背后不同的曲面和曲线,以及任何装配体产品和出现。
这是查看导入文件内容、以及区分一个实体和一个只是看起来像实体的复合体的最快方法。
要分析的形状
数量和图元数据
为每个面列出与它共享一条边的面,以及它的边、线框数量和外线框。
面按内核遍历形状的顺序从 0 开始编号,与 shapes.face.getFaces 使用的顺序相同。这是从种子面向外扩展选择或找出凹槽各面的基本构件。
要分析的形状
每个面一个邻接条目
为每条边列出它所属的面、其端点顶点及其拓扑标志,例如它是接缝边还是边界边。
边按 shapes.edge.getEdges 列出的顺序从 0 开始编号。
要分析的形状
每条边一个条目
列出每个顶点及其 3D 点、容差和在此相交的边。
顶点按内核遍历形状的顺序从 0 开始编号。
要分析的形状
每个顶点一个条目
向上映射形状的各部分:每个面属于哪些壳体,每个壳体属于哪些实体,以及每个面最终位于哪些实体中。
每个列表包含一个子部分的父索引,因此被两个实体共享的面会列出两者。
要分析的形状
每个面和每个壳体的父索引
描述每个线框:它是否闭合、是否为其面的外边界、有多少共边和不同的边,以及哪个面拥有它。
要分析的形状
每个线框一个条目
转储形状的整个结构:每个实体、壳体、面、边和顶点及其唯一 id 以及直接位于其下的部分。
这是此处最重的查询,用于一次推理整个拓扑而不是回答单个问题。
要分析的形状
实体、壳体、面、边和顶点及其引用
检查形状图的结构是否存在悬空引用或链接不一致等问题,并列出发现的每个问题及其严重程度。
这检查的是簿记而不是几何;shapes.shape.isValid 和 shapeFix.basicShapeRepair 处理几何有效性。
要分析的形状
图是否完好以及发现的问题
将 OpenCascade 形状视为图的结构查询:哪些面相接,一条边属于哪些面,哪些边在一个顶点相交,每个面或边背后是什么曲面或曲线,壳体和实体如何相互包含,以及装配的产品和实例树。每个查询都返回带有
ok和错误信息的普通数据而不是抛出异常,因此一批查询可以逐项报告失败;reconstruct将该数据中的节点转换回真正的子形状。