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_interpGenNurbsInterpGenNurbsInterpGenNurbsInterpgen_nurbs_interp erzeugt die Kontrolldaten CtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRowsctrl_rows, CtrlColsCtrlColsCtrlColsCtrlColsctrlColsctrl_cols und KnotsKnotsKnotsKnotsknotsknots einer NURBS Kurve, die die Eingabepunkte (RowsRowsRowsRowsrowsrows, ColsColsColsColscolscols) 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 TangentsTangentsTangentsTangentstangentstangents übergeben werden (für geschlossene Punktlisten muss TangentsTangentsTangentsTangentstangentstangents ein leeres Tupel sein). Darüber hinaus muss der gewünschte Grad für die NURBS Kurve in DegreeDegreeDegreeDegreedegreedegree angegeben werden.

Die Ausgabe von gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpGenNurbsInterpgen_nurbs_interp kann direkt in gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld verwendet werden, wenn der Gewichtsvektor auf 'auto'"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_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld.

Ausführungsinformationen

Parameter

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

Zeilenkoordinaten der Eingabepunkte.

Parameteranzahl: Rows == Cols

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

Spaltenkoordinaten der Eingabepunkte.

Parameteranzahl: Cols == Rows

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

Tangenten des ersten und letzten Punktes.

Defaultwert: []

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

Grad der Ausgabekurve.

Defaultwert: 3

Wertevorschläge: 2, 3, 4, 5

Restriktion: Degree >= 2

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

Zeilenkoordinaten des Kontrollpolygons.

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

Spaltenkoordinaten des Kontrollpolygons.

Parameteranzahl: Cols == Rows

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

Knotenvektor der Ausgabekurve.

Ergebnis

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

Nachfolger

gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld

Siehe auch

draw_nurbs_interpdraw_nurbs_interpDrawNurbsInterpDrawNurbsInterpDrawNurbsInterpdraw_nurbs_interp, draw_nurbs_interp_moddraw_nurbs_interp_modDrawNurbsInterpModDrawNurbsInterpModDrawNurbsInterpModdraw_nurbs_interp_mod

Literatur

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

Modul

Foundation