gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpGenNurbsInterpgen_nurbs_interp (Operator)

Name

gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpGenNurbsInterpgen_nurbs_interp — 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)

def gen_nurbs_interp(rows: Sequence[float], cols: Sequence[float], tangents: Sequence[float], degree: int) -> Tuple[Sequence[float], Sequence[float], Sequence[float]]

Beschreibung

gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpgen_nurbs_interp erzeugt die Kontrolldaten CtrlRowsCtrlRowsCtrlRowsctrlRowsctrl_rows, CtrlColsCtrlColsCtrlColsctrlColsctrl_cols 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über hinaus muss der gewünschte Grad für die NURBS Kurve in DegreeDegreeDegreedegreedegree angegeben werden.

Die Ausgabe von gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpgen_nurbs_interp kann direkt in gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld 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_xldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld.

Ausführungsinformationen

Parameter

RowsRowsRowsrowsrows (input_control)  coordinates.y-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Zeilenkoordinaten der Eingabepunkte.

Parameteranzahl: Rows == Cols

ColsColsColscolscols (input_control)  coordinates.x-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Spaltenkoordinaten der Eingabepunkte.

Parameteranzahl: Cols == Rows

TangentsTangentsTangentstangentstangents (input_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Tangenten des ersten und letzten Punktes.

Default: []

DegreeDegreeDegreedegreedegree (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Grad der Ausgabekurve.

Default: 3

Wertevorschläge: 2, 3, 4, 5

Restriktion: Degree >= 2

CtrlRowsCtrlRowsCtrlRowsctrlRowsctrl_rows (output_control)  coordinates.y-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Zeilenkoordinaten des Kontrollpolygons.

CtrlColsCtrlColsCtrlColsctrlColsctrl_cols (output_control)  coordinates.x-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Spaltenkoordinaten des Kontrollpolygons.

Parameteranzahl: Cols == Rows

KnotsKnotsKnotsknotsknots (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Knotenvektor der Ausgabekurve.

Ergebnis

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

Nachfolger

gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld

Siehe auch

draw_nurbs_interpdraw_nurbs_interpDrawNurbsInterpDrawNurbsInterpdraw_nurbs_interp, draw_nurbs_interp_moddraw_nurbs_interp_modDrawNurbsInterpModDrawNurbsInterpModdraw_nurbs_interp_mod

Literatur

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

Modul

Foundation