GMOperatorsInterfaces Global Function CATCGMCreateTopAssemble
CATCGMCreateTopAssemble( | | iFactory, |
| | iData, |
| | iBodiesToAssemble) |
-
Constructs a CATICGMHybAssemble that assembles bodies.
THIS FUNCTION CAN BE USED FOR SHELLS AND WIRES. HOWEVER, THE
CATCGMCreateNewTopAssemble FUNCTION SHOULD BE PREFERED OVER CATCGMCreateTopAssemble
WHEN THE INPUT BODIES ARE SHELLS.
CAA DEVELOPERS USING THIS FUNCTION ARE RECOMMENDED TO MIGRATE
TO CATCGMCreateNewTopAssemble WHICH IS MORE ROBUST.
In the case of shell domains the operator detects the edges
of shell domains laying on curves that are geometrically coiencident,
gathers them in one edge, and manages the topology to return a valid body.
The operator only scans the shell domains. It can create closed shells.
Orientation: The orientation of a resulting shell is the orientation of the first
face (obtained by the CATDomain::GetCell method) of the first shell
(obtained by the CATBody::GetDomain method).
Even if a shell cannot be assembled,
it is put in the resulting body. However, its orientation may have been changed,
if the orientation of its first face and its own orientation are
opposite.
In the case of wire domains the operator detects the vertices
of wire domains laying on points that are geometrically
coiencident, gathers them in one vertex, and manages the topology to return a valid body.
The operator only scans the wire domains. It can create closed wires.
Each input body each can contain several disconnected wires.
If all the wires of the input bodies can be connected in one resulting wire, the orientation
of the result is the orientation of the first wire (CATBody::GetWire(1)) of the first body.
If not, the result contains several disconnected wires, which orientation is given by the first wire
found in the list and belonging to this portion.
- Parameters:
-
- iFactory
- The pointer to the factory of the geometry.
- iData
- The pointer to the data defining the software configuration and the journal. If the journal inside iData
is NULL, it is not filled.
- iBodiesToAssemble
- The pointer to the list of bodies containing the domains to assemble. These bodies must contain at least one
shell domain. Wires and lumps domains are ignored.
The operator does not any self-intersecting tests.
If shells are intersecting each other, the operator does not assemble them. However, it put
them into the resulting body.
- Returns:
- [out, IUnknown#Release] The pointer to the created operator. To be released with the Release method after use.
This object is included in the file: CATCGMCreateTopAssemble.h
Copyright © 1999-2015, Dassault Systèmes. All rights reserved.