特征数组

在例程执行过程中多次测量某项特征时,会自动创建一个特征数组。特征数组的元素数与执行特征的次数相等。

如果测量的圆对象位于执行 5 次的 while 循环中,则会存在一个包含 5 个测量圆的数组。如果测量的圆的 ID 为 "Circle1",则可使用数组表达式访问测量的圆对象的各个实例。可使用方括号指示所需的实例。

Assign/V1 = Circle1[3].X
V1 被分配了 Circle1 第三个实例的 X 测量值。

尽管给定的特征有特征数组,但在对该特征的引用中却并未使用数组标志,使用的是最近实例。在上例中,Circle1.XCircle1[5].X 相同,因为第五个实例即该对象最近的实例。

在数组表达式的方括号中,可使用表达式。因此 Circle1[3].XCircle1[2+1].X 相等。以下示例使用循环输出上面示例中5个测量圆的圆心。

ASSIGN/V1=1
While/V1<6
Comment/Rept,"Centroid of instance #"+V1+" of Circle1: "+Circle1[V1].XYZ
ASSIGN/V1=V1+1
End/While

上述示例可能的输出如下所示:

Circle1的1#实例的质心:3.4,2.6,1.43

Circle1的2#实例的质心:4.4,3.6,2.43

圆1的实例#3的质心: 5.4, 4.6, 3.43

Circle1的4#实例的质心:6.4,5.6,4.43

Circle1的5#实例的质心:7.5,6.6,5.43

在给定的执行运行中执行了多次的尺寸与坐标系,同样也有数组。因此尺寸 "Dim1" 至少执行了两次,坐标系 "Align1" 至少执行了四次,则 Dim1[2].NomAlign1[4].Origin 将可用。

若某特征数组引用超出界限(如用户请求 Circle1[2.5]> Circle1["Hello, World"]),将返回其上限或下限项目。若 Circle1 有 3 个实例,则 Circle1[4] 及以上将返回 Circle1[3] 的值,而 Circle[0] 及以下将返回 Circle1[1] 的值。介于方括号之间的所有表达式将强制为整数,因此 2.5 将变为 2,而 "Hello World" 则变为 0。