Overview Schemas Index

GEOMETRY_SCHEMA (jsdai.SGeometry_schema)


FUNCTION get_basis_surface
          (c : curve_on_surface) : SET [0:2] OF surface;

 LOCAL surfs : SET [ 0 : 2 ] OF surface ; n : INTEGER ; END_LOCAL ; surfs := [ ] ; IF  'geometry_schema.pcurve' IN  TYPEOF  ( c ) THEN  surfs := [ c \ pcurve . basis_surface ] ; ELSE IF  'geometry_schema.surface_curve' IN  TYPEOF  ( c ) THEN  n := SIZEOF  ( c \ surface_curve . associated_geometry ) ; REPEAT  i := 1 TO  n ; surfs := surfs + associated_surface ( c \ surface_curve . associated_geometry [ i ] ) ; END_REPEAT  ; END_IF  ; END_IF  ; IF  'geometry_schema.composite_curve_on_surface' IN TYPEOF ( c ) THEN  n := SIZEOF ( c \ composite_curve . segments ) ; surfs := get_basis_surface ( c \ composite_curve . segments [ 1 ] . parent_curve ) ; IF n > 1 THEN REPEAT i := 2 TO n ; surfs := surfs * get_basis_surface ( c \ composite_curve . segments [ i ] . parent_curve ) ; END_REPEAT ; END_IF  ; END_IF ; RETURN ( surfs ) ; 

END_FUNCTION; -- get_basis_surface

public class FGet_basis_surface
          public static Value run(SdaiContext _context, Value c)