Synopsis
PDX_MSGT igeo_Approx128As114(long option, MDA_PTR db_ptr_128, EAM_STACK *stack, int model, double tolerance, int max_iters, MDA_PTR *db_ptr)
Purpose
Approximate an IGES NURBS surface (128) to an IGES Spline surface (114)
Description
if the IGES NURBS surface is rational and/or degree in U or V greater than 3 the IGES NURBS surface is converted to an approximation of the IGES NURBS surface as non-rational and U and V order less than 3. The non-rational U and V degree 3 or less NURBS surface is then converted to the IGES 114 surface. By default, the IGES NURBS surface matrix is concatenated with any matrix on the attribute stack and applied to the data. All the original IGES NURBS surface non-pointer DE attributes are applied to the IGES parametric spline surface. If a conversion error occurs any data created during the conversion is deleted and no IGES spline surface is created. The IGES NURBS surface entity must be a valid IGES NURBS surface definition. The conversion is exact to the precision of the input data and to machine precision for a non-rational degree less than 4 IGES NURBS surface, otherwise the conversion is an approximation to tolerance.
Input
option
IGES_NOMATRIX
Do not apply entity matrix to data
db_ptr_128
The valid IGES NURBS surface entity database pointer
stack
The entity attribute stack
model
The model to create the IGES surface in
tolerance
The conversion approximation tolerance Note: The MODEL_SPACE_PNT_TOL should be at least two orders of magnitude less than this tolerance for correct results.
max_iters
The maximium iterations to allow for convergence to tolerance
Output
db_ptr
The IGES 114 surface entity database pointer
Tolerances
MODEL_SPACE_PNT_TOL
ANGLE_TOL
PNT_PROJ_TOL
ZERO_TOL
.fi
Return
IGEO_NOERR
IGEO_SURFACENOTNURBS
IGEO_NOMEMORY
Low level error return
.fi