Overview Schemas Index

AIC_GEOMETRICALLY_BOUNDED_WIREFRAME (jsdai.SAic_geometrically_bounded_wireframe)


FUNCTION valid_geometrically_bounded_wf_curve
          (crv : curve) : BOOLEAN;

IF SIZEOF  ([ 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.POLYLINE', 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.B_SPLINE_CURVE', 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.ELLIPSE', 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.CIRCLE' ] * TYPEOF  (crv)) = 1 THEN  
 RETURN  (TRUE);
 ELSE  
 IF  'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.TRIMMED_CURVE' IN  TYPEOF  (crv) THEN  
 IF  SIZEOF  ([ 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.LINE', 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.PARABOLA', 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.HYPERBOLA' ] * TYPEOF  (crv\trimmed_curve.basis_curve)) = 1 THEN  
 RETURN  (TRUE);
 ELSE  
 RETURN  (valid_geometrically_bounded_wf_curve(crv\trimmed_curve.basis_curve));
 END_IF  ;
 ELSE  
 IF  'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.OFFSET_CURVE_3D' IN  TYPEOF  (crv) THEN  
 RETURN  (valid_geometrically_bounded_wf_curve(crv\offset_curve_3d.basis_curve));
 ELSE  
 IF  'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.CURVE_REPLICA' IN  TYPEOF  (crv) THEN  
 RETURN  (valid_geometrically_bounded_wf_curve(crv\curve_replica.parent_curve));
 ELSE 
 IF 'AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.COMPOSITE_CURVE' IN TYPEOF (crv) THEN 
 RETURN  ( SIZEOF ( 
QUERY ( ccs <* crv\composite_curve.segments| NOT valid_geometrically_bounded_wf_curve(ccs.parent_curve) )) = 0);
 END_IF  ;
 END_IF  ;
 END_IF  ;
 END_IF  ;
 END_IF ;
 RETURN (FALSE);

END_FUNCTION; -- valid_geometrically_bounded_wf_curve

public class FValid_geometrically_bounded_wf_curve
          public static Value run(SdaiContext _context, Value crv)