过滤器以及定义过滤器的谓词可驱动搜索工具。
创建的每个过滤器必须至少使用以下某个谓词,并且可以使用多个谓词构建单个过滤器。某些谓词使用分组机制。请参见过滤器和谓词参考:分组机制,了解有关各种分组机制的详细信息。
谓词 |
描述 |
使用分组机制? |
零部件名称 |
根据显示名称搜索零部件。 |
否 |
零部件表面名称 |
根据显示名称搜索零部件表面。 |
否 |
体积 |
根据体积搜索闭合表面。 |
是 |
面积 |
根据面积搜索面/表面。 |
是 |
面积/体积比 |
根据闭合表面的面积/体积比搜索面/表面。 |
是 |
面数 |
根据面数搜索面/表面。 |
是 |
拓扑 |
搜索闭合或流形表面。 |
是 |
诊断错误 |
根据诊断错误搜索面/表面。对于穿孔面,随过滤结果返回的数量包括与穿刺边相邻的面。对应的表面诊断仅报告穿刺面总数。 |
是 |
对象过滤器 |
使用预定义的过滤器从模拟树进行搜索。 |
否 |
修复过滤器 |
使用预定义的修复过滤器进行搜索。 |
否 |
分组机制
使用空间类型谓词(例如,体积或面积)时,提供了分组机制。需要分组机制才能在一定程度上灵活地确定用于评估谓词条件的面集合或子集。例如,表面中存在的接触、自由边和非流形边会更改拓扑定义(闭合或流形等)。通过使用不同的分组机制,可以覆盖这些几何条件,而无需直接修改拓扑。
考虑以下示例:
索引 |
描述 |
1 |
零部件 A |
2 |
零部件 B1 |
3 |
零部件 B2 |
4 |
零部件 C |
5 |
自由边 |
6 |
多重边 |
7 |
接触 |
在上述示例中,零部件 A 是闭合的,并与零部件 B 接触。零部件 B 是开放的,并由非流形表面分割为零部件 B1 和零部件 B2。零部件 C 是开放的,且节点与零部件 B 合并。下表介绍了分组机制的行为方式(在此示例中)。
分组机制 |
标识的组数 |
拓扑分解 |
封闭体积数 |
零部件 |
3 |
|
1(零部件 A) |
连续 |
1 |
|
0 |
体积拓扑 |
3 |
|
3(零部件 A、零部件 B1、零部件 B2 + 零部件 C) |
表面拓扑 |
5 |
|
0 |
输出窗口中提供了有关创建的分组机制子集的反馈。可以使用此信息帮助标识意外或不正确的过滤结果。在大多数情况下,分组机制都是导致此类意外结果最有可能的原因。
过滤运算符
创建过滤器时,可以使用运算符组合多个搜索词。
运算符 |
描述 |
与 |
此运算符根据起始输入单独评估每个谓词,然后执行所有谓词输出的交集运算以生成最终结果。 |
或 |
此运算符单独评估每个谓词,如果满足任何输入条件,则返回匹配项。 |
管道 |
此运算符为谓词创建管道(管道是 pipeline 的简写),其中,第一个谓词的输出用作第二个谓词的输入,依此类推。 |
注 | 在某些情况下,对于同一过滤器谓词定义,与和管道的结果将完全相同,但在其他情况下,由于管道谓词的顺序依赖性,结果将有所不同。在大多数情况下,相对于与运算符,管道运算符通常速度更快且使用的内存更少。 |