For all issues regarding the Forums use, please, refer to the Forum Rules.

Our Solutions

Need professional assistance?
Consider our:

Support Offerings

 

Need to speed up your development?
Have a look at our:

Samples & Tools

 

Need some functionality extending standard OCCT capabilities?
Check out our:

Adv. Components

Related pages

How to split wires with shared edges

Anton Shabalin's picture
Forums: 

Hello everyone,

I have a wire showed on the attached picture (wires). How can I create 3 closed wires from it ? When I tried to make 

  ShapeAnalysis_FreeBounds::SplitWires(wires, GLOBAL_TOLERANCE, true, closedWires, openWires);
I've got 1 closed wire and 2 opened wires (as shown at pic2)

Thank you.

Attachments: 
Qr Qr's picture

Hi,

The solution is Boolean operation (General Fuse: https://www.opencascade.com/doc/occt-7.0.0/overview/html/occt_user_guide...) and then proper iterating your fused wires (e.g. with left-turn rule). Not sure if left turn is available in OpenCascade (there is something similar at BRepFeat_SplitShape and also in shape healing), but this is something you can develop from scratch.