Synopsis
PDX_MSGT gcr_SplineSurf(long option, MDA_PTR orig_db_ptr, int u_degree, int v_degree, MDA_COUNT num_of_u_segs, MDA_COUNT num_of_v_segs, struct t_gdx_spline_surf_poly_surf **poly_surf, double *u_break_pnts, double *v_break_pnts, int gdx_model, MDA_PTR *gdx_SS_ptr)
Purpose
Create a GDX Spline Surface.
Description
Given a set of 3D XYZ UV ABCD... coefficients for each segment, the number of U and V segments, the U and V break points, and the U and V degree of Spline surface, creates a GDX Spline surface.
The U and V degree (u_degree and v_degree) and the number of U and V spline segments (num_of_u_segs and num_of_v_segs) must be > 0
If the u_break_pnts and/or v_break_pnts U and/or V knot values array is NULL, then the Spline surface is assumed to be a uniform surface and the GDX Spline surface uniform break point values are generated.
If the break point value array is specified, the break point sequence must be in increasing order.
The GDX Spline surface is parameterized from the first break point to the last break point.
\fBRules\fR .IP • 3 The u_degree must be > 0 .IP • 3 The v_degree must be > 0 .IP • 3 The num_of_u_segs must be > 0 .IP • 3 The num_of_v_segs must be > 0 .IP • 3 u_order = u_degree + 1 .IP • 3 v_order = v_degree + 1 .LP
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
u_degree
The U degree of the Spline surface
v_degree
The V degree of the Spline surface
num_of_u_segs
The number of U spline patches for the Spline surface
num_of_v_segs
The number of V spline patches for the Spline surface
poly_surf
MDA memory array containing the 3D XYZ UV ABCD... U, V order coefficient values as num_of_u_segs U columns of num_of_v_segs V patch V,U order coefficients. poly_surf[num_of_u_segs][num_of_v_segs].patches [v_degree + 1][u_degree + 1][3] Always consumed by this function even on error.
u_break_pnts
MDA memory containing the num_u_of_segs + 1 U spline surface patch break point values, or NULL Always consumed by this function even on error.
v_break_pnts
MDA memory containing the num_v_of_segs + 1 V spline surface patch break point values, or NULL Always consumed by this function even on error.
gdx_model
The GDX model for entity creation
Output
gdx_SS_ptr
Entity database pointer of the GDX Spline Surface
Tolerances
.fi
Return
GCR_NOERR
GCR_INVALID_MODEL
GCR_SPLINE_SURF_U_DEGREE
GCR_SPLINE_SURF_V_DEGREE
GCR_SPLINE_SURF_NUM_U_SEGS
GCR_SPLINE_SURF_NUM_V_SEGS
Low level error return
.fi