Open CASCADE, the 3D modelling kernel
3D modeling & numerical simulation

Search the Forums
See All Topics

Solid from Multiple profiles with a Spine (CATIA equivalent: MultiSectionsVolume)

Solid from Multiple profiles with a Spine (CATIA equivalent: MultiSectionsVolume)
Jens Schmidt 2013/01/16 19:14
Good Day,

i want to create a Solid with multiple Sections which are NOT on a straight line.
the sections are all different too: e.g. 2 circles, one rectangle.
in addition i want to specify a spine for the created solid (like it is possible with the BRepOffsetAPI_MakePipe).

is there a way to define a Spine for the BRepOffsetAPI_ThruSections or more generally what would be the best way to achieve the desired output?

Greetings Jens
Sharjith Naramparambath 2013/02/12 01:49
Did you try BRepOffsetAPI_MakePipeShell? After looking at the documentation of the constructors and methods it looks like that you could achieve what you want. The section shapes taken are limited to Wire and Points (at the ends). So the created loft will be a shell and not a solid. You could, however, cap the ends by building faces from the end wires and convert the shell to solid.

Sharjith Naramparambath 2013/02/12 23:03
Correction: The class also has the method MakeSolid which converts the shell into a solid unless any of the profiles are open.
Sharjith Naramparambath 2013/02/13 19:30
Result from BRepOffsetAPI_MakePipeShell (See attached image)

BRepBuilderAPI_MakeWire MkWire(TopoDS::Edge(mySpine));
     BRepOffsetAPI_MakePipeShell MkPipeShell(MkWire.Wire());
     for(int i = 1; i <= mySeqOfSections->Length(); ++i)


          TopoDS_Shape builtShape = MkPipeShell.Shape();
          m_pDoc->GetAISContext()->Display(new AIS_Shape(builtShape));
You have to be logged in to download the attached file
Jens Schmidt 2013/05/29 18:22
Awesome! Just how i imagined it.
Thank you!
Latest news
  • JT Assistant Linux and CAD Assistant
  • Open CASCADE JT Assistant
  • OCCT Applications

  • © OPEN CASCADE 2000 - 2015  |  Search  |  Contacts   |  Site map