ClassesClassesClassesClasses | | | | Operators

gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpgen_nurbs_interpGenNurbsInterpGenNurbsInterp (Operator)

Name

gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpgen_nurbs_interpGenNurbsInterpGenNurbsInterp — Create control data of a NURBS curve that interpolates given points.

Signature

gen_nurbs_interp( : : Rows, Cols, Tangents, Degree : CtrlRows, CtrlCols, Knots)

Herror T_gen_nurbs_interp(const Htuple Rows, const Htuple Cols, const Htuple Tangents, const Htuple Degree, Htuple* CtrlRows, Htuple* CtrlCols, Htuple* Knots)

Herror gen_nurbs_interp(const HTuple& Rows, const HTuple& Cols, const HTuple& Tangents, const HTuple& Degree, HTuple* CtrlRows, HTuple* CtrlCols, HTuple* Knots)

void GenNurbsInterp(const HTuple& Rows, const HTuple& Cols, const HTuple& Tangents, const HTuple& Degree, HTuple* CtrlRows, HTuple* CtrlCols, HTuple* Knots)

void HOperatorSetX.GenNurbsInterp(
[in] VARIANT Rows, [in] VARIANT Cols, [in] VARIANT Tangents, [in] VARIANT Degree, [out] VARIANT* CtrlRows, [out] VARIANT* CtrlCols, [out] VARIANT* Knots)

static void HOperatorSet.GenNurbsInterp(HTuple rows, HTuple cols, HTuple tangents, HTuple degree, out HTuple ctrlRows, out HTuple ctrlCols, out HTuple knots)

Description

gen_nurbs_interpgen_nurbs_interpGenNurbsInterpgen_nurbs_interpGenNurbsInterpGenNurbsInterp creates the NURBS control data CtrlRowsCtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRows, CtrlColsCtrlColsCtrlColsCtrlColsCtrlColsctrlCols, and KnotsKnotsKnotsKnotsKnotsknots of a NURBS curve that interpolates the input points (RowsRowsRowsRowsRowsrows, ColsColsColsColsColscols). If the input point list is not closed (i.e., the first point is identical to the last point), the tangents of the first and last point must be given in TangentsTangentsTangentsTangentsTangentstangents in the order [drow_0,dcol_0,drow_n-1,dcol_n-1] (for closed point lists, TangentsTangentsTangentsTangentsTangentstangents must be an empty tuple). Furthermore the DegreeDegreeDegreeDegreeDegreedegree of the NURBS curve must be specified.

The output of gen_nurbs_interpgen_nurbs_interpGenNurbsInterpgen_nurbs_interpGenNurbsInterpGenNurbsInterp can be used directly with gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXld with the weights vector set to 'auto'"auto""auto""auto""auto""auto".

See the documentation of gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXld for more information on NURBS curves.

Parallelization

Parameters

RowsRowsRowsRowsRowsrows (input_control)  coordinates.y-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Row coordinates of input point list.

Number of elements: Rows == Cols

ColsColsColsColsColscols (input_control)  coordinates.x-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Column coordinates of input point list.

Number of elements: Cols == Rows

TangentsTangentsTangentsTangentsTangentstangents (input_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Tangents at first and last point.

Default value: []

DegreeDegreeDegreeDegreeDegreedegree (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Order of the output curve.

Default value: 3

Suggested values: 2, 3, 4, 5

Restriction: Degree >= 2

CtrlRowsCtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRows (output_control)  coordinates.y-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Row coordinates of the control polygon.

CtrlColsCtrlColsCtrlColsCtrlColsCtrlColsctrlCols (output_control)  coordinates.x-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Column coordinates of the control polygon.

Number of elements: Cols == Rows

KnotsKnotsKnotsKnotsKnotsknots (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

The knot vector of the output curve.

Result

If all input parameters are correct gen_nurbs_interpgen_nurbs_interpGenNurbsInterpgen_nurbs_interpGenNurbsInterpGenNurbsInterp returns the value 2 (H_MSG_TRUE).

Possible Successors

gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXld

See also

draw_nurbs_interpdraw_nurbs_interpDrawNurbsInterpdraw_nurbs_interpDrawNurbsInterpDrawNurbsInterp, draw_nurbs_interp_moddraw_nurbs_interp_modDrawNurbsInterpModdraw_nurbs_interp_modDrawNurbsInterpModDrawNurbsInterpMod

References

L. Piegl, W. Tiller: ”The NURBS Book”, 2nd Edition, Springer, 1997.

Module

Foundation


ClassesClassesClassesClasses | | | | Operators