worth investing in OCC


I asked on this forum, just few days ago, a question regarding non-regularized booleans. I've got no answer so far on this forum. Perhaps this is a trivial question, or a problem that does not raise any interest among the members.

However, what I would like to point out is the fact that I raised the same problem ,about one year and a half ago, by filling in the contact form available at http://www.opencascade.org/about/contacts/. There was an answer asking for more details on the exact meaning of the regularized/non-regularized boolean ops. I've given a detailed reply (including drawings/sketches) on what regularized/non-regularized ops mean. No response so far.

A straight answer (from the OCC team) could be "yes", "no", or "there are workarounds".

A potential support buyer would really appreciate a straight response.

If OCC support team does not bother, why no buy commercial libs ?

David Egan's picture

Why don't you explain exactly what you need to do. Intersections /Boolean ops can be problematic in OCC but in some situations they work just fine especially if speed is not a major concern.

Valeriu Catina's picture

Hello and thanks for the quick answer,

I need non-regularized booleans (booleans that include interactions of model boundaries) for finite element and boundary integral calculations for electromagnetic problems. Consider the contact region between two different media (solids). This contact region needs to be meshed in order to impose the appropriate boundary conditions. When performing booleans in OCC this contact region is actually dropped; usually a face with a hole results from a boolean operation. The only workaround I could think of was to add to a TopoDS_Compound the resulting solid (the one contaning the face with the hole) plus a face created from the internal (hole) wire. The compound is then written to a IGES/STEP/BRep file which is used as input to a meshing tool.
This works for some simple cases but is not a robust solution.

The booleans are performed only once in a frequency sweep and the structure to be analyzed usually needs very few (less than ten) ops for its construction. Thus, the speed is not an issue.


V. Catina

Valeriu Catina's picture

Just to add to my previous post.

I have minimal experience with ACIS. When performing booleans in ACIS one can specify if a regularized or non-regularized boolean is to be performed. Looking in the OCC docs I could not find anything similar.

David Egan's picture

OK,so you really are just after the intersection contours and then you can do what ever you please. There are several ways I can think of to do this within open cascade and I am sure a few more I have not tried :).

You can also look at GEOMAlgo_Splitter from salome's GEOM project:

You can download the package at :
http://sourceforge.net/projects/salomegeometry (or search this forum for some good posts ....)

Or you can use the booleans in OCC.
I work in B/Element too and it is just a matter of collecting the trimming curves you need and applying them to the base surface. The section command will give you the intersection curves and then you can use them to trim the faces however you require.

Valeriu Catina's picture

Hello and thanks again for your answer,

could you please post a small code example regarding your last suggestion ?


V. Catina

Forum supervisor's picture

Hello Mr. Catina,

We received your first request via our Contact Form on November 6 2008 and replied to you on November 7. After that we did not receive any more messages from you. Sorry but we can not be responsible for any not delivered emails.

Best regards,
Forum Supervisor