如何从 gp_Pnts 创建 TopoDS_Face

OCCUtils 提供 Face::FromPoints() 来线性连接一组 gp_Pnt 点并从生成的边创建面:

face_from_points.cpp
#include <occutils/Face.hxx>

using namespace OCCUtils;

gp_Pnt p1, p2, p3; // 你的点!

TopoDS_Face face = Face::FromPoints({p1, p2, p3});

Face::FromPoints() 将自动移除连续的重复点并将最后一个点连接到第一个点。

注意如果没有足够的唯一点(你需要至少 3 个唯一点来创建有效的面!),Face::FromPoints() 将返回 .IsNull()trueTopoDS_Face


Check out similar posts by category: OpenCASCADE