Synopsis

PDX_MSGT igeo_Convert126ToContinuous(long option, MDA_PTR db_ptr_126, EAM_STACK *stack, int model, MDA_PTR *db_ptr)

Purpose

Converts a discontinuous IGES NURBS curve (126) to a continuous NURBS curve (126)

Description

Converts a discontinuous IGES NURBS curve to a G0 continuous IGES NURBS curve. The conversion converts the discontinuous NURBS curve to a continuous NURBS curve by creating new control points at the discontinuity that are the average of the discontinuous control points and then performing knot removal (to MODEL_SPACE_PNT_TOL) to remove at least one of the orderful internal multiple knots making the NURB curve at least G0 continuous everywhere. If the option IGEO_G1CONT is specified, the NURBS curve is then made G1 continuous everywhere to within TANGENT_TOL. All the original IGES curve non-pointer DE attributes are applied to the IGES NURBS curve. By default, the IGES NURBS curve matrix is concatenated with the matrix on the attribute stack and applied to the converted data. If a conversion error occurs any data created during the conversion is deleted and no IGES NURBS curve (126) is created. The IGES NURBS curve entity must be a valid IGES definition.

Input

option

IGES_NOMATRIX

Do not apply entity matrix to data

IGEO_G1CONT

Force G1 discontinuities to continuous

db_ptr_126

The valid IGES 126 NURBS curve entity database pointer

stack

The entity attribute stack

model

The model to create the IGES curve in

Output

db_ptr

The IGES 126 curve entity database pointer

Tolerances

      MODEL_SPACE_PNT_TOL
      TANGENT_TOL
      .fi

Return

      IGEO_NOERR
      IGEO_CURVENOTNURBS
      IGEO_NOMEMORY
      Low level error return
      .fi