Synopsis

PDX_MSGT gcr_CurveBoundedSurf2(long option, MDA_PTR orig_db_ptr, MDA_PTR surface_ptr, PDX_BOOL implicit_outer, PDX_BOOL first_is_outer, MDA_COUNT num_of_bounds, MDA_PTR cec_ptrs[], int gdx_model, MDA_PTR *gdx_cbs_ptr)

Purpose

Create a GDX Curve Bounded Surface

Description

This function, given a surface, its boundaries, and appropriate flags, creates a GDX Curve Bounded Surface entity.

If the base surface is an unparameterized analytical surface (i.e., GDX_PLANE, GDX_CYLINDER, GDX_CONE w/ ref_vec magnitude = 0.0), gdx__UpdateSurfPBounds will be called to set the ref_vec and local bounds (*_parm fields).

If the base surface is a parameterized (ref_vec not 0. magnitude) but unbounded analytical surface (GDX_PLANE w/ u_parm or v_parm < 0., GDX_CYLINDER or GDX_CONE w/ top_parm < 0.) or an unbounded GDX_EXT_SURF, will create a GDX_RECT_TRIM_SURF (that references the analytical or extruded surface) and then call gdx__UpdateSurfPBounds to set the parametric bounds of the new GDX_RECT_TRIM_SURF.

If base surface is a GDX_RECT_TRIM_SURF and the parameter bounds are unlimited, will call gdx__UpdateSurfPBounds to determine the necessary bounds for the GDX_RECT_TRIM_SURF.

If the base surface referenced by surface_ptr is closed, within the GDX_MODEL_SPACE_PNT_TOL, in either the u or v direction, then the open_surf field is set to PDX_FALSE. Otherwise this field is set to PDX_TRUE.

The orig_db_ptr argument should contain the database pointer of the entity that the new entity was created from (usually this should be obtained by the calling routine via mda_GetOrigDbptr) or MDA_NULL_PTR. See the mda_intro man page for more information about predecessor entities.

Input

option

GCR_NOVALIDATE

No validation will occur on the input data

orig_db_ptr

The original entities orig_db_ptr as obtained from the mda_GetOrigDbptr call or MDA_NULL_PTR

surface_ptr

The database pointer of the surface to be bounded

num_of_bounds

The number of GDX Composite Edge Curves corresponding to the boundary and islands.

cec_ptrs

The database pointers of the GDX Composite Edge Curves forming the boundary and island curves.

implicit_outer

PDX_TRUE

outer boundary is the natural surface boundary

PDX_FALSE

outer boundary is not the natural surface boundary

first_is_outer

PDX_TRUE

the first boundary is the outer boundary

PDX_FALSE

the first boundary is not the outer boundary (all boundaries in the list are islands)

gdx_model

The GDX model for entity creation

Output

gdx_cbs_ptr

The database pointer of the GDX Curve Bounded Surface

Tolerances

      GDX COPLANAR_TOL
      .fi

Return

      GCR_NOERR
      GCR_INVALIDMODEL
      Low level error return
      .fi