Functions | |
void | Show_NURBS_Surface (HC_KEY key, int *u_degree, int *v_degree, int *u_count, int *v_count, HC_POINT *points, float *weights, float *u_knots, float *v_knots) |
void | DShow_NURBS_Surface (HC_KEY key, int *u_degree, int *v_degree, int *u_count, int *v_count, HC_DPOINT *points, double *weights, double *u_knots, double *v_knots) |
void | Show_NURBS_Surface_Size (HC_KEY key, int *u_degree, int *v_degree, int *u_count, int *v_count, int *weights_count, int *u_knots_count, int *v_knots_count) |
void Show_NURBS_Surface | ( | HC_KEY | key, | |
int * | u_degree, | |||
int * | v_degree, | |||
int * | u_count, | |||
int * | v_count, | |||
HC_POINT * | points, | |||
float * | weights, | |||
float * | u_knots, | |||
float * | v_knots | |||
) |
Returns the definition of an existing NURBS surface, as referenced by a key.
key | - The unique identifier returned by a previous call to Insert_NURBS_Surface() | |
u_degree | - Degree of the surface in the u direction. Returned to user. Passed by reference always. | |
v_degree | - Degree of the surface in the v direction. Returned to user. Passed by reference always. | |
u_count | - Number of control points in the u direction. Returned to user. Passed by reference always. | |
v_count | - Number of control points in the v direction. Returned to user. Passed by reference always. | |
points | - Vector of x-y-z triplets for the coordinates of the control points. Returned to user. Passed by reference always. | |
weights | - Control point weights. Returned to user. Passed by reference always. | |
u_knots | - Knot sequence in the u direction. Returned to user. Passed by reference always. | |
v_knots | - Knot sequence in the v direction. Returned to user. Passed by reference always. |
Use Show_NURBS_Surface_Size() to determine how large the control_points, weights and knots arrays are going to be, before you actually call Show_NURBS_Surface() . Be sure to account for the case where weight_count, u_knot_count and/or v_knot_count return 0. Those are an indication that the surface was inserted with uniform weights and/or linear knots. Such weights and knots are unnecessary and can be ignored by passing null at the time of the call to Show_NURBS_Surface() .
void DShow_NURBS_Surface | ( | HC_KEY | key, | |
int * | u_degree, | |||
int * | v_degree, | |||
int * | u_count, | |||
int * | v_count, | |||
HC_DPOINT * | points, | |||
double * | weights, | |||
double * | u_knots, | |||
double * | v_knots | |||
) |
Similar to Show_NURBS_Surface() but operates on double-precision values.
key | - The unique identifier returned by a previous call to Insert_NURBS_Surface() | |
u_degree | - Degree of the surface in the u direction. Returned to user. Passed by reference always. | |
v_degree | - Degree of the surface in the v direction. Returned to user. Passed by reference always. | |
u_count | - Number of control points in the u direction. Returned to user. Passed by reference always. | |
v_count | - Number of control points in the v direction. Returned to user. Passed by reference always. | |
points | - Vector of x-y-z triplets for the coordinates of the control points. Returned to user. Passed by reference always. | |
weights | - Control point weights. Returned to user. Passed by reference always. | |
u_knots | - Knot sequence in the u direction. Returned to user. Passed by reference always. | |
v_knots | - Knot sequence in the v direction. Returned to user. Passed by reference always. |
void Show_NURBS_Surface_Size | ( | HC_KEY | key, | |
int * | u_degree, | |||
int * | v_degree, | |||
int * | u_count, | |||
int * | v_count, | |||
int * | weights_count, | |||
int * | u_knots_count, | |||
int * | v_knots_count | |||
) |
Finds the size of a given NURBS surface. This is useful in determining the size of the data structure that must hold points.
key | - The unique identifier returned by a previous call to Insert_NURBS_Surface() | |
u_degree | - Degree of the surface in the u direction. Returned to user. Passed by reference always. | |
v_degree | - Degree of the surface in the v direction. Returned to user. Passed by reference always. | |
u_count | - Number of control points in the u direction. Returned to user. Passed by reference always. | |
v_count | - Number of control points in the v direction. Returned to user. Passed by reference always. | |
weights_count | - Number of weights that were originally specified with the surface. Should always be either 0 or u_count x v_count. Returned to user. Passed by reference always. | |
u_knots_count | - Number of knots in the u direction that were originally specified with the surface. in the u direction. Should always be either 0 or u_count + u_degree + 1. Returned to user. Passed by reference always. | |
v_knots_count | - Number of knots in the v direction that were originally specified with the surface. in the v direction. Should always be either 0 or v_count + v_degree + 1. Returned to user. Passed by reference always. |