92 double angle_rad = 2.0 * M_PI);
137 [[nodiscard]]
BrepModel loft(
const std::vector<curves::NurbsCurve>& profiles);
NURBS 曲线(Non-Uniform Rational B-Spline)
double distance(const Point3D &a, const Point3D &b)
两点之间的欧氏距离
BrepModel fillet(const BrepModel &body, int edge_id, double radius)
对边做圆角处理
BrepModel extrude(const curves::NurbsCurve &profile, const Vector3D &dir)
沿方向挤出平面轮廓
BrepModel chamfer(const BrepModel &body, int edge_id, double distance)
对边做倒角
BrepModel make_sphere(double radius, int segments_u=32, int segments_v=16)
创建球体
BrepModel shell(const BrepModel &body, int face_id, double thickness)
抽壳(挖空实体)
BrepModel sweep(const curves::NurbsCurve &profile, const curves::NurbsCurve &path)
沿任意路径扫掠轮廓
BrepModel make_box(double w, double h, double d)
创建立方体
BrepModel make_cylinder(double radius, double height, int segments=32)
创建圆柱体
BrepModel loft(const std::vector< curves::NurbsCurve > &profiles)
在两个或多个轮廓曲线之间放样
BrepModel revolve(const curves::NurbsCurve &profile, const Point3D &axis_origin, const Vector3D &axis_dir, double angle_rad=2.0 *M_PI)
绕轴旋转平面轮廓
AABB< double > AABB3D
双精度三维包围盒
foundation::Vector3D Vector3D
双精度三维向量(重新导出)
foundation::Point3D Point3D
双精度三维点(重新导出)