67 [[nodiscard]]
int degree()
const {
return degree_; }
73 [[nodiscard]] std::pair<double, double>
domain()
const;
79 [[nodiscard]]
const std::vector<Point3D>&
control_points()
const {
return cp_; }
85 [[nodiscard]]
const std::vector<double>&
weights()
const {
return weights_; }
91 [[nodiscard]]
const std::vector<double>&
knots()
const {
return knots_; }
94 std::vector<Point3D> cp_;
95 std::vector<double> knots_;
96 std::vector<double> weights_;
NURBS 曲线(Non-Uniform Rational B-Spline)
std::pair< double, double > domain() const
参数定义域
const std::vector< Point3D > & control_points() const
控制点访问
Point3D evaluate(double t) const
在参数 t 处求值
Vector3D derivative(double t, int order=1) const
在参数 t 处求导数
const std::vector< double > & knots() const
节点向量访问
NurbsCurve(std::vector< Point3D > control_points, std::vector< double > knots, std::vector< double > weights, int degree)
构造 NURBS 曲线
const std::vector< double > & weights() const
权重访问
foundation::Vector3D Vector3D
双精度三维向量(重新导出)
foundation::Point3D Point3D
双精度三维点(重新导出)