8.9.6.17 IfcPointDim
8.9.6.17.1 Semantic definition
This function checks the dimensionality of the various subtypes of IfcPoint.
Returns the number of coordinate components in case of IfcCartesianPoint or the dimensionality of the basis curve or surface in other cases.
8.9.6.17.2 Formal representation
FUNCTION IfcPointDim
(Point : IfcPoint)
: IfcDimensionCount;
IF ('IFC4X3_DEV_20bdb3d.IFCCARTESIANPOINT' IN TYPEOF(Point))
THEN RETURN(HIINDEX(Point\IfcCartesianPoint.Coordinates));
END_IF;
IF ('IFC4X3_DEV_20bdb3d.IFCPOINTBYDISTANCEEXPRESSION' IN TYPEOF(Point))
THEN RETURN(Point\IfcPointByDistanceExpression.BasisCurve.Dim);
END_IF;
IF ('IFC4X3_DEV_20bdb3d.IFCPOINTONCURVE' IN TYPEOF(Point))
THEN RETURN(Point\IfcPointOnCurve.BasisCurve.Dim);
END_IF;
IF ('IFC4X3_DEV_20bdb3d.IFCPOINTONSURFACE' IN TYPEOF(Point))
THEN RETURN(Point\IfcPointOnSurface.BasisSurface.Dim);
END_IF;
RETURN (?);
END_FUNCTION;