formZ SDK | 5.0 API Reference | Project | Modeling | Objects | Control Objects | Nurbz Curve
Description
Creates a nurbz curve from a given set of points. If knots is passed
in, it must be of size "npts + degree + 1". If weights is passed in
it must be of size npts. If the curve is closed,
closure can be achieved two different ways, depending on whether the
first and last control point are identical :
Not identical Closure is achieved by internally duplicating the first
degree + 1 control points at the end of the curve.
There is no knot multiplicity at the begin and end.
The control points passed in do NOT contain the duplicated
points.
Identical Closure is achieved by creating knot multiplicity at the
begin and end point of the curve. The knot vector, if passed
in, must have knot multiplicity. An error is returned if
these conditions are not met.
Plugin Prototype
fzrt_error_td fz_objt_cnstr_nrbz_curve(
fzrt_int | windex, |
pts, | |
fzrt_int | npts, |
fzrt_int | degree, |
closed, | |
do_smooth, | |
double * | knots, |
double * | weights, |
refn_opts, | |
obj ) |
Parameters
windex [Input]
project window index
pts [Input]
points array
npts [Input]
number of points in pts array
degree [Input]
degree of nurbz curve
closed [Input]
closed curve
do_smooth [Input]
smooth curve
knots [Input, Optional]
knot values array. must be preallocated to store npts + degree + 1 values
weights [Input, Optional]
weights values array. must be preallocated to store npts values
refn_opts [Input, Optional]
refinement options
obj [Result]
nurbz curve object
Returns
Error codes
Availability
5.0.0.0
Example Files
util_objt_edit_nrbz_curv.fsl
util_objt_cnstr_nrbz.fsl
util_objt_edit_nrbz_curv.fsl
util_objt_ncos.fsl
See Also
Function Set
Defined in