FUNCTION md_valid_content_in_geometric_set_for_placeholder
(* SCHEMA step_merged_ap_schema; *)
-- DIFF IN AP238 STEP-NC
-- IN AP238 STEP-NC/AP242
FUNCTION md_valid_content_in_geometric_set_for_placeholder
(input : geometric_set ) : BOOLEAN;
LOCAL
pass : BOOLEAN := FALSE;
boxes : BAG OF planar_box := [];
texts : BAG OF annotation_text := [];
placements : BAG OF placement := [];
points : BAG OF point := [];
END_LOCAL;
REPEAT i := LOINDEX(input\geometric_set.elements) TO HIINDEX(input\geometric_set.elements);
IF ('STEP_MERGED_AP_SCHEMA.POINT' IN TYPEOF(input\geometric_set.elements[i])) AND NOT (SIZEOF([ 'STEP_MERGED_AP_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_AP_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_AP_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(input\geometric_set.elements[i])) = 1) THEN
pass := FALSE;
ELSE
points := points + input\geometric_set.elements[i];
END_IF;
IF 'STEP_MERGED_AP_SCHEMA.PLANAR_BOX' IN TYPEOF(input\geometric_set.elements[i]) THEN
boxes := boxes + input\geometric_set.elements[i];
END_IF;
IF 'STEP_MERGED_AP_SCHEMA.ANNOTATION_TEXT' IN TYPEOF(input\geometric_set.elements[i]) THEN
texts := texts + input\geometric_set.elements[i];
END_IF;
IF 'STEP_MERGED_AP_SCHEMA.PLACEMENT' IN TYPEOF(input\geometric_set.elements[i]) THEN
placements := placements + input\geometric_set.elements[i];
END_IF;
END_REPEAT;
IF SIZEOF(boxes) > 1 THEN
pass := FALSE;
END_IF;
IF SIZEOF(texts) > 1 THEN
pass := FALSE;
END_IF;
IF SIZEOF(points) < 1 THEN
pass := FALSE;
END_IF;
IF SIZEOF(placements) <> 1 THEN
pass := FALSE;
END_IF;
RETURN (pass);
END_FUNCTION;
Referenced By
Defintion md_valid_content_in_geometric_set_for_placeholder is references by the following definitions:
[Top Level Definitions] [Exit]Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00