How to create a shell


In my app I'm building a set of faces and surfaces and I want to create a shell with them ? After that, I want to create automatically fillets on edges.
How can I do that ?
Thank you very much for answers.

Rob Bachrach's picture

If the faces already share edges and vertices (from a topological perspective), you can use BRep_Builder to make the shell.

BRep_Builder builder;
TopoDS_Shell shell;
builder.Add(shell, face); // do for each face

If they are not topologically joined, you will need to sew the faces together using BRepOffsetAPI_Sewing.

As for the fillets, look at BRepFilletAPI_MakeFillet. If all edges should have the same fillet radius, use SetRadius followed by Add for each edge. See the variations of Add to see how to set the radius for individual edges.

PG's picture

I did not find any function 'MakeShell' in BRep_Builder class.

Paul Jimenez's picture

That method gets inherited from TopoDS_Builder3D, so you can call it on BRep_Builder.