Non regularized boolean operations

Hello,

It is known that Open Cascade supports regularized boolean operations for solids and shells.

Is it possible to perform nonregularized boolean operations for solids and shells ? These nonregularized boolean operations include interactions of model boundaries. These are needed for cellular topology informations during the interactins between feature based designs.

With advance thanks Balasubramanian, P.

Vincent Delos's picture

Hello Mr Balasubramanian,

It is possible to perform non regularized (non manifold) topological operations in Open Cascade. Most of them are devoted to finite elements applications. You can invoke them on every kind of shapes, just take into account the fact that the result is well defined

according to orientation of the shapes and to the kind of boolean operation. It is also possible to use them in Draw (Test Harness).

Vincent Delos.

Balasubra,manian, P.'s picture

Hello Mr.Vincent Delos,

Thank you for your information. Can you please give a simple test harness code for the case of partial intersection of a box with a plate ?

With regards,

Balasubramanian, P.

Vincent Delos's picture

Hello Mr. Balasubramanian,

First of all what we call plate in Cascade is a geometrical surface created under constraints. You can use the classes Plate or PlateFE (the last one can treat a very high number of constraints).

As I understand you work with non manifold cases, so I guess that you want to compute the COMMON of a box and a face (3D topological object without thickness).

In Draw you create a box like this :
>box name1 x y z dx dy dz (a box parallel to the axes with dimensions dx,dy,dz x,y,z is the corner of the box)

You create a face like this :
>mkface name2 surface ufirst ulast vfirst vlast (it generates a topological face from a geometrical surface, parameter values can be given to trim a rectangular area)

Then you need to set the orientation of the face by a call to orientation :
>orientation name2 F/R/E/I (values can be : FORWARD, REVERSED, INTERNAL, EXTERNAL)

Finally you compute intersection :
>commun result name1 name2

With regards,

Vincent Delos.

Balasubra,manian, P.'s picture

Hello Mr.Vincent Delos,

Yes, the procedure gives result like the regularised boolean operation(Common). But I like to know the non-regularised boolean operation like union (fuse). Kindly consider a union (fuse) operation for the same example of box and face from plate case. This is suppose to give a face embedded in a solid; embedded face is not merged with solid; The face is splitted into two portions, one inside solid another outside solid as shown below;

| ----------------| BOX | | | |----------- |------| | | | | |----|------------| |

| | PLATE

|------------|------|

box b 0 0 10 20 20 10 normals b 2 fit

polyline pl 5 5 15 30 5 15 30 30 15 5 30 15 5 5 15 mkplane f pl fit orientation f f normals f 2

fuse s b f

Kindly modify the above example for non-regularised boolean (union-fuse) operation. Instead of plate, another box may be considered; but the common/intersecting portion of both boxes are not merged with other portions in case of non-regularised fuse/union boolean operation; i.e. three cells are created.

With best regards and thanks,

Balasubramanian, P.

Vincent Delos's picture

Hello Mr Balasubramanian,

First of all I would like to tell you that in the example that you give in Draw the fuse operation cannot work properly. A FORWARD orientation should not be given to a single face that will be both OUTSIDE and INSIDE the box. The final result won't be coherent as it will raise contradictions about location of emptiness and mateer. So you need to code your single face EXTERNAL. In this case you're able to launch the fuse operation but it will not work yet in Cascade. We are currently working to fix it and we hope you will be able to use it in the following months. For the moment you can do your Boolean operations treating apart manifold and non manifold shapes and at the end sew the final results.

With best regards,

Vincent Delos.

Balasubramanian, P.'s picture

Hello,

In the earlier mails it was indicated that nonregularized boolean operations are under development for non-manifold structures. Is it possible to get result, from the existing version of opencascade, for a simple nonregularized boolean addition (Union) of two intersecting boxes A & B? If so, sample test harness / appropriate APIs may be indicated.

With advanced thanks and regards,

Balasubramanian, P.

Anup's picture

Hi,

Can you tell me whether it is possible to merge IGES and STL file using boolean operation and export it as IGES file??