ГОСТ Р ИСО 10303-203-2003
there verst := dummytri 11faee(sct_of_topoIogy_rcvcrsed(a_facc.
bounds)) 11oricntcdjaccfaJacc\orientcdJacc.face_clcmcnt, NOT
a_facc\oricntcd_fdcc.oricntation) ;
ELSE
thc_reversedummytri 11facet set_ofJopo!ogy reversed(а Гасe.
bounds)) 11oricntedJacc(aJacc, FALSE):
ENDJF;
RETURN (the reverse);
END_FUNCTION: - - face_rcversed
FUNCTION first_proj_axis(z_axis. arg: direction): direction;
LOCAL
x_vcc: vector;
V: direction:
z: direction:
x_a\is: direction:
END_LOCAL ;
IF NOT EXISTS(z_axis) THEN RETURN!?);
ELSE
z:= normalisc(z_uxis);
IF NOT EXISTS (arg) THEN
IF z.direc(ion_ratios < > |l, 0. 0) THEN
v := dummv_gri !| direction (jl. 0, 0|);
ELSE
v := dummv_gri !idirection (|0, I, 0|);
END_IF ;
ELSE
IF arg.dim < > 3 THEN RETURN(?);
ENDJF;
IF cross_product(arg,z).magnitude * 0 THEN RETURN(?);
ELSE
v := normalise (arg);
E N D JF;
E N D JF;
x_vec := scalar_timcs_vcctor(dol_product(v. z). z);
x_axis := vector_diffcrence(v, x_vcc).oricntation;
x_axis :e normalise(x_avis);
E N D JF ;
RETURN (x_a\is) ;
END_FUNCTION; - - lirst_proj_axis
FUNCTION gbsf_chcck_curvc(cv: curve): BOOLEAN:
IF SIZEOF (|’CONFIG_CONTROL_DESIGN.BOUNDED_C’LRVE’ ,
•CONFIG_CONTROL_DESIGN.CONIC ,
’CONFIG_CONTROL_DESIGN.CURVE_REPLIC’A’ ,
CONFIG_CONTROL_DESIGN.LINE*,
’CONFlG_CONTROL_DESIGN.OFFSET_CURVE_3D‘| * TYPEOF(cv)) > I THEN
RETURN (FALSE) ;
ELSE
IF SIZEOF ([’CONFIG_C’ONTROL_DESIGN.CIRCLE’ ,
’CONFIG_C’ONTROL_DESIGN.ELLIPSE’| * TYPEOF(cv)) - I THEN
RETURN (TRUE) ;
ELSE
IF ((’CONFIG_CONTROL_DESlGN.B_SPLINE_CURVE’ IN TYPEOF(cv)) AND (cv
\b_spline_curve.selfjntcreect * FALSE)) OR (cv\b_spline_curve.
selfjntcrsect - UNKNOWN) THEN
RETURN (TRUE) ;
ELSE
IF ((’CONFIG.CONTROL_DESIGN.COMPOSITE_CURVE’ IN TYPEOF(cv)) AND
(cv\composite_curve.sclfjntcrsect = FALSE)) OR (cv\
191