ГОСТ Р ИСО 10303-203-2003
E N D JF:
E N D JF ;
END JF :
E N D JF ;
END_IF;
E N D JF;
END JF ;
EN D JF:
E N D JF ;
E N D JF;
RETURN (FALSE) ;
END FUNCTION: - - gfrsf_check_curve
FUNCTION gbsf_check_point(piU: point): BOOLEAN;
IF ’CONFIG_CONTROL_DESIGN.CARTESlAN_POINT’ IN TYPEOF(pnt) THEN
RETURN (TRUE);
ELSE
IF CONFIG_CONTROL_DESIGN.POINT_ON_CURVE’ IN TYPEOF(pnt) THEN
RETURN(gbsf_chcck_curve(pnt\point_on_curve.bas»s_Ciirve)) ;
ELSE
IF CONFIG_CONTROL_DESIGN.POINT_ON_SURFACE* IN TYPEOF(pnt) THEN
RETL’ RN (gbsf_chcck surface(pnt\point_on_surfacc.basjs_surface)) ;
ELSE
IF ’CONFIG_CONTROL_DESIGN.DEGENERATE_PCURVE’ IN TYPEOF(pnt)
THEN
RETURN (ghsf_chcck_curvc(pnt\degcncratc_pcurve.
rcfcrcncc_to_curve\rcpreseniatk»n.ilcmsl 11) AND
gbsf_chcck_surfacc(pm\dcgcncratc_pcurve.basis_surfacc)) ;
E N D JF ;
END JF :
E N D JF;
E N D JF;
RETURN (FALSE) ;
END_FUNCTION; - - gbsf_check_point
FUNCTION gbsf_chcck_surfacc(sf: surface): BOOLEAN;
IF ((’CONFIG_CONTROL_DESIGN.B_SPLlNEJsURFACE‘ IN TYPEOF(sf)) AND (sl\
b_splinc_surfacc.sclfjntcrscct * FALSE)) OR (sf\b spline surface,
self intersect = UNKNOWN) THEN RETURN(TRUE);
ELSE
IF SIZEOF (|‘CONFIG_CONTROL_DESIGN.SPHERICAL_SURFACE‘ ,
*CONFIG_CONTROL_DESIGN.TOROIDAL_SURFACE’| * TYPEOF(sO) - I THEN
RETURNfTRUE) ;
ELSE
IF ’CONFIG_CONTROL_DESlGN.CURV’E_BOUNDED_SLRFACE’ IN TYPEOF(sf)
THEN
IF SI2EOF (|‘CONFIG_CONTROL_DESIGN.CONICAL_SURFAC£* ,
CONFIG_CONTROL_DESIGN.CYLlNDRICAL_SURFACE\
’CONFIG_CONTROL_DESIGN.PLANE’| * TYPEOF(sl\
curveJraundcd_surfacc.basis_surface)) = 1 THEN
RETURN (SIZEOF(QUERY ( beurve <* sJ\curvc_boundcd_surfacc.
boundiirics |(NOT gbsf check curve(bcuive)) » = 0);
ELSE
IF gbsf_chcck_.surface (d\curve_bounded_surfacc.basis_surface)
THEN
RETURN<SIZEOF(QUERY ( beurve <* sf\curve_bounded_stirface.
boundaries | (NOT gbsf_check_Curve( beurve)) )) =• 0):
E N D JF ;
E N D JF ;
ELSE
193