Hello,
S3 is not solid, but shell and boolean operation between shells and solids are not well defined. To get solid instead shell you should make face from wire W.
Commenter-1
Archived discussion
hello,
I tried to make an extraction of a solid out of an other solid(!?) (of revolution!!!) ... the result is incorrect ... what is missing from the bellow code?
thanks...
TopoDS_Shape theBox = BRepPrimAPI_MakeSphere(gp_Pnt(70,0,70),170);
TopoDS_Edge E1 = BRepBuilderAPI_MakeEdge(gp_Pnt(0., 0., 0.),gp_Pnt(100., 0., 0.)); TopoDS_Edge E2 = BRepBuilderAPI_MakeEdge(gp_Pnt(100., 0., 0.), gp_Pnt(75.,50., 0.)); TopoDS_Edge E3 = BRepBuilderAPI_MakeEdge(gp_Pnt(75.,50., 0.), gp_Pnt0.,50., 0.)); TopoDS_Edge E4 = BRepBuilderAPI_MakeEdge(gp_Pnt(0.,50., 0.),gp_Pnt(0., 0., 0.)); TopoDS_Wire W = BRepBuilderAPI_MakeWire(E1,E2,E3,E4);
axe = gp_Ax1(gp_Pnt(0.,0.,0.),gp_Dir(0.,1.,0.));
TopoDS_Shape S3 = BRepPrimAPI_MakeRevol(W,axe);
TopoDS_Shape ShapeCut = BRepAlgoAPI_Cut( S3, theBox );
Discussion
Posts are displayed in their archived order.
Hello,
S3 is not solid, but shell and boolean operation between shells and solids are not well defined. To get solid instead shell you should make face from wire W.
Commenter-1
Hi,
Try to make a face from your wirecalled "w" before applaying the BRepPrimAPI_MakeRevol function.
Make me informed.