Surface Weights Positive |
NOTE Definition according to ISO/CD 10303-42:1992
This function checks the weights associated with the control points of a rational b-spline surface and returns TRUE if they are all positive.
NOTE Function adapted from surface_weights_positive defined in ISO 10303-42.
HISTORY New function in IFC4
FUNCTION IfcSurfaceWeightsPositive
( B: IfcRationalBSplineSurfaceWithKnots)
: BOOLEAN;
LOCAL
Result : BOOLEAN := TRUE;
Weights : ARRAY [ 0 : B\IfcBSplineSurface.UUpper ] OF ARRAY [ 0 : B\IfcBSplineSurface.VUpper ] OF REAL := B.Weights;
END_LOCAL;
REPEAT i := 0 TO B\IfcBSplineSurface.UUpper;
REPEAT j := 0 TO B\IfcBSplineSurface.VUpper;
IF (Weights[i][j] <= 0.0) THEN
Result := FALSE;
RETURN(Result);
END_IF;
END_REPEAT;
END_REPEAT;
RETURN(Result);
END_FUNCTION;
References: IfcRationalBSplineSurfaceWithKnots