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

Search the Forums
See All Topics
Open CASCADEShowroomGet it!Developer CornerSupport and ProductsAbout us
Technical overview
Areas of use
Shape factory
Shape gallery
What's new
System requirements
Download Center
Public license
Getting started
Open Source community
Training and e-learning
A-la Carte Support
Value-added software
Complementary Components
Customer Corner
Company Profile
Marketing Materials
Contact Us
Home / Developer Corner / Forums / Usage issues / Remove seams after Fuse

Remove seams after Fuse

Remove seams after Fuse
Massimo Del Fedele 2012/12/28 20:24

after some trial and error, I found a way to have BrepAlgoAPI_Fuse to behave like good old BrepAlgo_Fuse
method, so joining all faces after fusion as normally expected.
It's enough, after fusion, to reprocess the resulting solid like this :

BRepAlgoAPI_Fuse fuser(s1, s2);
TopoDS_Shape fused = fuser.Shape();
ShapeUpgrade_UnifySameDomain unif(fused, false, true, false);
TopoDS_Shape fixed = unif.Shape();

in 'fixed' you'll find the fused soids with all faces lying on same surfaces joined as expected
and with all unneeded edges removed.
Tested with complex solids and works quite well; the new api is quite more stable than older one
and, with this fix, it behaves as expected.



Mauro Mariotti 2012/12/28 20:35
Thank you, Max.

ShapeUpgrade_UnifySameDomain is very interesting (we called it face simplification in my old company), but I cannot find it in my OCC 6.5.3.

Is it in some extra package?

Massimo Del Fedele 2012/12/28 20:57
Hi Mauro,

I've 6.5.4 and it's there, just added

#include <ShapeUpgrade_UnifySameDomain.hxx>

Maybe it's a recent addition... I don't know.
Mauro Mariotti 2012/12/31 12:53
Dear Forum Supervisor,

ShapeUpgrade_UnifySameDomain is not mentioned in

Is is in some special package?

Thanks and happy 2013.

Pawel 2013/01/03 20:11
Hi Mauro,

the 'ShapeUpgrade_UnifySameDomain' files were added in course of the integration of the feature:

0023367: New functionality restoring the middle path of pipe-like shape

I agree, this functionality is very interesting and some documentation on that could be very useful ;)

Forum supervisor 2013/01/09 14:16
Dear Mauro,
The specified class is a new one and unfortunately it is still is not documented.
Consider it as a documentation bug (you are welcome to register it in Mantis BugTracker).
In short:
"ShapeUpgrade_UnifySameDomain class
rebuilds the input shape according to the values of flags: <myUnifyFaces>, <myUnifyEdges>, <myConcatBSplines>. If <myUnifyFaces> and <myUnifyEdges> are set to "TRUE", first the same domain faces are unified, then the same domain edges are unified. If <myConcatBSplines> is set to "TRUE", a chain of edges based on BSpline curves and connecting the same couple of faces is being unified into one edge.

The class supports a history approach, i.e. it allows to extract new-built sub-shapes from the old ones."
Massimo Del Fedele 2013/01/09 14:28

I could add a note :

if you cut a cone (or something with a closed curve as a base edge, I guess) and then refuse with the new api,
if you use UnifySameDomain with UnifyFaces ALONE it works as expected, restoring original cone;
if you use UnifyEdges flag too, it builds an INVALID solid, I guess it has something to do with
removing the needed seam closing the lateral surface, but not so sure.

So, for best results, I do
ShapeUpgrade_UnifySameDomain(shape, false, true, false)
and NOT
ShapeUpgrade_UnifySameDomain(shape, true, true, false)

jelle 2013/01/16 22:04
Very useful comment Massimo, many thanks...
Latest news
  • Open CASCADE Technology 6.7.1 is available for download!
  • Open CASCADE Technology 6.7.0 is available for download!
  • Open CASCADE Technology 6.6.0 is available for download!

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