gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpGenNurbsInterp (Operator)

Name

gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpGenNurbsInterp — Erzeugen von Kontrolldaten einer NURBS Kurve, die gegebene Punkte interpoliert.

Signatur

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)

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

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

Beschreibung

gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpGenNurbsInterp erzeugt die Kontrolldaten CtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRows, CtrlColsCtrlColsCtrlColsCtrlColsctrlCols und KnotsKnotsKnotsKnotsknots einer NURBS Kurve, die die Eingabepunkte (RowsRowsRowsRowsrows, ColsColsColsColscols) interpoliert. Falls die Eingabepunktliste nicht geschlossen ist (das heißt, der erste und der letzte Punkt sind identisch), müssen zusätzlich die Tangenten im ersten und im letzten Punkt in der Reihenfolge [drow_0,dcol_0,drow_n-1,dcol_n-1] in TangentsTangentsTangentsTangentstangents übergeben werden (für geschlossene Punktlisten muss TangentsTangentsTangentsTangentstangents ein leeres Tupel sein). Darüberhinaus muss der gewünschte Grad für die NURBS Kurve in DegreeDegreeDegreeDegreedegree angegeben werden.

Die Ausgabe von gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpGenNurbsInterp kann direkt in gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXld verwendet werden, wenn der Gewichtsvektor auf 'auto'"auto""auto""auto""auto" gesetzt wird.

Ausführliche Informationen über NURBS Kurven befinden sich in der Dokumentation von gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXld.

Ausführungsinformationen

Parameter

RowsRowsRowsRowsrows (input_control)  coordinates.y-array → HTupleHTupleHtuple (real) (double) (double) (double)

Zeilenkoordinaten der Eingabepunkte.

Parameteranzahl: Rows == Cols

ColsColsColsColscols (input_control)  coordinates.x-array → HTupleHTupleHtuple (real) (double) (double) (double)

Spaltenkoordinaten der Eingabepunkte.

Parameteranzahl: Cols == Rows

TangentsTangentsTangentsTangentstangents (input_control)  real-array → HTupleHTupleHtuple (real) (double) (double) (double)

Tangenten des ersten und letzten Punktes.

Defaultwert: []

DegreeDegreeDegreeDegreedegree (input_control)  integer → HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Grad der Ausgabekurve.

Defaultwert: 3

Wertevorschläge: 2, 3, 4, 5

Restriktion: Degree >= 2

CtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRows (output_control)  coordinates.y-array → HTupleHTupleHtuple (real) (double) (double) (double)

Zeilenkoordinaten des Kontrollpolygons.

CtrlColsCtrlColsCtrlColsCtrlColsctrlCols (output_control)  coordinates.x-array → HTupleHTupleHtuple (real) (double) (double) (double)

Spaltenkoordinaten des Kontrollpolygons.

Parameteranzahl: Cols == Rows

KnotsKnotsKnotsKnotsknots (output_control)  real-array → HTupleHTupleHtuple (real) (double) (double) (double)

Knotenvektor der Ausgabekurve.

Ergebnis

Sind alle Eingabeparameter korrekt, gibt gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpGenNurbsInterp den Wert 2 (H_MSG_TRUE) zurück.

Nachfolger

gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXld

Siehe auch

draw_nurbs_interpdraw_nurbs_interpDrawNurbsInterpDrawNurbsInterpDrawNurbsInterp, draw_nurbs_interp_moddraw_nurbs_interp_modDrawNurbsInterpModDrawNurbsInterpModDrawNurbsInterpMod

Literatur

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

Modul

Foundation