Sewing faces to make solids

Hi everyone,

I'm trying to sew faces to make solid(s).

It works fine when I sew, for example, the six faces of a cube, with BRepOffsetAPI_Sewing.
And I make a solid from the closed shell it returns, by using BRepBuilderAPI_MakeSolid.
Everything ok for one solid.

But when I try to do the same for two cubes who share one face ( overall 11 faces ) the sewing algorithm returns two unclosed shells because the shared faces is neither in the first one nor in the second.
How should I do to obtain 2 closed shells from my 2 cubes who share 1 face ?


Guillaume Paran's picture

I guess it means I should find something by myself.


Chenthil's picture


I want to create a solid from a given surface by appying thickness to it
I've written the folllowing code...but its not giving the desired output
its not entering the code
BRepBuilderAPI_MakeSolid brep_solid(TopoDS::Shell(shell));

BRepOffsetAPI_MakeOffsetShape offset(myshape1, offset, 1.0E-06, BRepOffset_Skin,
Standard_False, Standard_False, GeomAbs_Arc);

BRepOffsetAPI_Sewing(1.0e-06, Standard_True);
BRepOffsetAPI_Sewing sew;
TopoDS_Shape shell = sew.SewedShape();

BRepBuilderAPI_MakeSolid brep_solid(TopoDS::Shell(shell));
TopoDS_Solid top_solid = brep_solid.Solid();
please suggest what can be done


Gerhard Hofmann's picture

Hello Chenthil,
maybe you should try to use BRepOffsetAPI_MakeThickSolid, but you would have to add some faces before to close your shell.

best regards