gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpGenNurbsInterpgen_nurbs_interp (算子名称)
名称
gen_nurbs_interpT_gen_nurbs_interpGenNurbsInterpGenNurbsInterpgen_nurbs_interp
— Create control data of a NURBS curve that interpolates given points.
参数签名
def gen_nurbs_interp(rows: Sequence[float], cols: Sequence[float], tangents: Sequence[float], degree: int) -> Tuple[Sequence[float], Sequence[float], Sequence[float]]
描述
gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpGenNurbsInterpgen_nurbs_interp
creates the NURBS control data
CtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRowsctrl_rows
, CtrlColsCtrlColsCtrlColsCtrlColsctrlColsctrl_cols
, 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_interpGenNurbsInterpGenNurbsInterpGenNurbsInterpgen_nurbs_interp
can be used directly with
gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld
with the weights vector set to
'auto'"auto""auto""auto""auto""auto".
See the documentation of gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld
for more information
on NURBS curves.
运行信息
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
参数表
RowsRowsRowsRowsrowsrows
(input_control) coordinates.y-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Row coordinates of input point list.
Number of elements:
Rows == Cols
ColsColsColsColscolscols
(input_control) coordinates.x-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Column coordinates of input point list.
Number of elements:
Cols == Rows
TangentsTangentsTangentsTangentstangentstangents
(input_control) real-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Tangents at first and last point.
Default:
[]
DegreeDegreeDegreeDegreedegreedegree
(input_control) integer →
HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Order of the output curve.
Default:
3
Suggested values:
2, 3, 4, 5
Restriction:
Degree >= 2
CtrlRowsCtrlRowsCtrlRowsCtrlRowsctrlRowsctrl_rows
(output_control) coordinates.y-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Row coordinates of the control polygon.
CtrlColsCtrlColsCtrlColsCtrlColsctrlColsctrl_cols
(output_control) coordinates.x-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Column coordinates of the control polygon.
Number of elements:
Cols == Rows
KnotsKnotsKnotsKnotsknotsknots
(output_control) real-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
The knot vector of the output curve.
结果
If all input parameters are correct gen_nurbs_interpgen_nurbs_interpGenNurbsInterpGenNurbsInterpGenNurbsInterpgen_nurbs_interp
returns the
value 2 (
H_MSG_TRUE)
.
可能的后置算子
gen_contour_nurbs_xldgen_contour_nurbs_xldGenContourNurbsXldGenContourNurbsXldGenContourNurbsXldgen_contour_nurbs_xld
参考其它
draw_nurbs_interpdraw_nurbs_interpDrawNurbsInterpDrawNurbsInterpDrawNurbsInterpdraw_nurbs_interp
,
draw_nurbs_interp_moddraw_nurbs_interp_modDrawNurbsInterpModDrawNurbsInterpModDrawNurbsInterpModdraw_nurbs_interp_mod
References
L. Piegl, W. Tiller: ”The NURBS Book”, 2nd Edition, Springer, 1997.
模块
Foundation