IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

8.9.6.5 IfcConsecutiveSegments(连续段)

8.9.6.5.1 语义定义(Semantic definition)

此函数验证段索引列表是否连接以表示连续曲线。任何段(最后一个除外)的最后一个索引应与下一个段的第一个索引相同。

8.9.6.5.2 形式化表示(Formal representation)

FUNCTION IfcConsecutiveSegments
  (Segments : LIST [1:?] OF IfcSegmentIndexSelect)
  : BOOLEAN;

 LOCAL
  Result : BOOLEAN := TRUE;
 END_LOCAL;

  REPEAT i := 1 TO (HIINDEX(Segments)-1);
    IF Segments[i][HIINDEX(Segments[i])] <> Segments[i+1][1] THEN
      BEGIN
        Result := FALSE;
        ESCAPE;
      END;
 END_IF;
  END_REPEAT;

  RETURN (Result);

END_FUNCTION;

8.9.6.5.3 参考文献