0

我使用点数据创建了几个部分,最后使用 OPENCASCADE 创建了一个 CAD 模块来创建实体。至此,使用点创建截面的工作已经完成。我想知道如何使用这些部分创建实体。任何人都可以帮忙吗?

std::vector<iFan::vector3D>::const_iterator posS;
for (posS = pointData.begin(); posS != pointData.end(); ++posS)
{
    //curve
    Handle(Geom_BSplineCurve) bspline = COCC_Geometry::GenBSplineCurve((*posS), 0.00001, true);
    TopoDS_Edge out_shape = BRepBuilderAPI_MakeEdge(bspline);

    TopoDS_Wire Wc = BRepBuilderAPI_MakeWire(out_shape);
    
    TopoDS_Face F = BRepBuilderAPI_MakeFace(gp_Pln(gp::ZOX()), Wc);
}

在此处输入图像描述

4

1 回答 1

0

您可能可以使用BRepOffsetAPI_MakePipe :https ://dev.opencascade.org/doc/refman/html/class_b_rep_offset_a_p_i___make_pipe.html

我只使用它来将线组合为轮廓以创建壳,但文档似乎暗示您也可以扫描面以从中创建实体。唯一的限制是轮廓本身可能不是实体。

您必须BRepOffsetAPI_MakePipe在每个部分之间使用,然后将所有实体组合成一个生成的实体。

于 2020-12-18T19:43:12.500 回答