Functions | |
void | Show_Trim_Curve (int index, int *degree, int *cp_count, float *points, float *weights, float *knots, float *start_u, float *end_u) |
void | Show_Trim_Curve_Count (int index, int *degree, int *cp_count, int *w_count, int *knot_count) |
void Show_Trim_Curve | ( | int | index, | |
int * | degree, | |||
int * | cp_count, | |||
float * | points, | |||
float * | weights, | |||
float * | knots, | |||
float * | start_u, | |||
float * | end_u | |||
) |
Returns the definition of an existing NURBS curve trim object.
index | - Index of the particular object in the trim list. | |
degree | - Degree of the curve. Returned to user. Passed by reference always. | |
cp_count | - Control point count. 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. | |
knots | - Knot sequence. Returned to user. Passed by reference always. | |
start_u | - Start parameter. Returned to user. Passed by reference always. | |
end_u | - End parameter. Returned to user. Passed by reference always. |
Before calling Show_Trim_Curve() , you should first call Show_Trim_Curve_Count() to know how much space is required to hold the points, weights and knots array. Keep in mind that weights and knots will be zero if the trim curve was originally requesting default values when it was inserted. Many systems will crash when there is an attempt to allocate a zero-length array.
These calls are not legal except when there is a valid NURBS surface that has been opened with a call to Open_Geometry() . The index passed must also refer to a valid trim curve (as opposed to a trim collection or trim poly).
Offsets of trimming objects are zero-based. Offset 0 corresponds to the head of the list. Trimming objects are prepended to the head of the list, meaning that offset 0 is the most recently created.
NULL can be passed to any of the values in Show_Trim_Curve_Count() that are passed by reference in which the user is not interested.
void Show_Trim_Curve_Count | ( | int | index, | |
int * | degree, | |||
int * | cp_count, | |||
int * | w_count, | |||
int * | knot_count | |||
) |
Finds the number of points in a trim curve. This is useful in determining the size of the data structure that must hold points.
index | - Index of the particular object in the trim list. | |
degree | - Degree of the curve. Returned to user. Passed by reference always. | |
cp_count | - Control point count. Returned to user. Passed by reference always. | |
w_count | - Size of the weights array. Returned to user. Passed by reference always. | |
knot_count | - Size of the knots array. Returned to user. Passed by reference always. |