Interface for boolean operations (Cut, Fuse, Common)
import "GEOM_Gen.idl";
Public Member Functions | |
GEOM_Object | MakeBoolean (in GEOM_Object theShape1, in GEOM_Object theShape2, in long theOperation, in boolean IsCheckSelfInte) |
Perform one of boolean operations on two given shapes. More... | |
GEOM_Object | MakeFuse (in GEOM_Object theShape1, in GEOM_Object theShape2, in boolean IsCheckSelfInte, in boolean IsRmExtraEdges) |
Perform fusion boolean operation on two given shapes. More... | |
GEOM_Object | MakeFuseList (in ListOfGO theShapes, in boolean IsCheckSelfInte, in boolean IsRmExtraEdges) |
Perform fusion boolean operation on list of objects. More... | |
GEOM_Object | MakeCommonList (in ListOfGO theShapes, in boolean IsCheckSelfInte) |
Perform common boolean operation on list of objects. More... | |
GEOM_Object | MakeCutList (in GEOM_Object theMainShape, in ListOfGO theShapes, in boolean IsCheckSelfInte) |
Perform cutting of list of objects from theMainShape. More... | |
GEOM_Object | MakePartition (in ListOfGO theShapes, in ListOfGO theTools, in ListOfGO theKeepInside, in ListOfGO theRemoveInside, in short theLimit, in boolean theRemoveWebs, in ListOfLong theMaterials, in short theKeepNonlimitShapes) |
Perform partition operation. More... | |
GEOM_Object | MakePartitionNonSelfIntersectedShape (in ListOfGO theShapes, in ListOfGO theTools, in ListOfGO theKeepInside, in ListOfGO theRemoveInside, in short theLimit, in boolean theRemoveWebs, in ListOfLong theMaterials, in short theKeepNonlimitShapes, in boolean IsCheckSelfInte) |
Perform partition operation. More... | |
GEOM_Object | MakeHalfPartition (in GEOM_Object theShape, in GEOM_Object thePlane) |
Perform partition of the Shape with the Plane. More... | |
Public Member Functions inherited from GEOM::GEOM_IOperations | |
boolean | IsDone () |
To know, if the operation was successfully performed. More... | |
void | SetErrorCode (in string theErrorID) |
Set the operation error code. More... | |
string | GetErrorCode () |
Get the operation error code. More... | |
long | GetStudyID () |
Get ID of study, where the operation is defined. More... | |
void | StartOperation () |
Opens a new transaction. More... | |
void | FinishOperation () |
Closes the previously opened trasaction. More... | |
void | AbortOperation () |
Aborts the previously opened transaction. More... | |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakeBoolean | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2, | ||
in long | theOperation, | ||
in boolean | IsCheckSelfInte | ||
) |
theShape1 | First argument for boolean operation. |
theShape2 | Second argument for boolean operation. |
theOperation | Indicates the operation to be done: 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section. |
IsCheckSelfInte | If TRUE, perform check self intersection of arguments before an operation. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakeCommonList | ( | in ListOfGO | theShapes, |
in boolean | IsCheckSelfInte | ||
) |
theShapes | Shapes for common operation. |
IsCheckSelfInte | If TRUE, perform check self intersection of arguments before an operation. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakeCutList | ( | in GEOM_Object | theMainShape, |
in ListOfGO | theShapes, | ||
in boolean | IsCheckSelfInte | ||
) |
theMainShape | the object for cut operation. |
theShapes | Shapes to be cut from theMainShape (tools). |
IsCheckSelfInte | If TRUE, perform check self intersection of arguments before an operation. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakeFuse | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2, | ||
in boolean | IsCheckSelfInte, | ||
in boolean | IsRmExtraEdges | ||
) |
theShape1 | First argument for fuse operation. |
theShape2 | Second argument for fuse operation. |
IsCheckSelfInte | If TRUE, perform check self intersection of arguments before an operation. |
IsRmExtraEdges | If TRUE, perform removal of extra edges during an operation. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakeFuseList | ( | in ListOfGO | theShapes, |
in boolean | IsCheckSelfInte, | ||
in boolean | IsRmExtraEdges | ||
) |
theShapes | Shapes to be fused. |
IsCheckSelfInte | If TRUE, perform check self intersection of arguments before an operation. |
IsRmExtraEdges | If TRUE, perform removal of extra edges during an operation. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakeHalfPartition | ( | in GEOM_Object | theShape, |
in GEOM_Object | thePlane | ||
) |
theShape | Shape to be intersected. |
thePlane | Tool shape, to intersect theShape. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakePartition | ( | in ListOfGO | theShapes, |
in ListOfGO | theTools, | ||
in ListOfGO | theKeepInside, | ||
in ListOfGO | theRemoveInside, | ||
in short | theLimit, | ||
in boolean | theRemoveWebs, | ||
in ListOfLong | theMaterials, | ||
in short | theKeepNonlimitShapes | ||
) |
theShapes | Shapes to be intersected. |
theTools | Shapes to intersect theShapes. |
theLimit | Type of resulting shapes (corresponding to TopAbs_ShapeEnum). |
theKeepNonlimitShapes,: | if this parameter == 0, then only shapes of target type (equal to Limit) are kept in the result, else standalone shapes of lower dimension are kept also (if they exist). |
After implementation new version of PartitionAlgo (October 2006) other parameters are ignored by current functionality. They are kept in this function only for supporting old versions. Ignored parameters:
theKeepInside | Shapes, outside which the results will be deleted. Each shape from theKeepInside must belong to theShapes also. |
theRemoveInside | Shapes, inside which the results will be deleted. Each shape from theRemoveInside must belong to theShapes also. |
theRemoveWebs | If TRUE, perform Glue 3D algorithm. |
theMaterials | Material indices for each shape. Make sence, only if theRemoveWebs is TRUE. |
GEOM_Object GEOM::GEOM_IBooleanOperations::MakePartitionNonSelfIntersectedShape | ( | in ListOfGO | theShapes, |
in ListOfGO | theTools, | ||
in ListOfGO | theKeepInside, | ||
in ListOfGO | theRemoveInside, | ||
in short | theLimit, | ||
in boolean | theRemoveWebs, | ||
in ListOfLong | theMaterials, | ||
in short | theKeepNonlimitShapes, | ||
in boolean | IsCheckSelfInte | ||
) |
This method may be usefull if it is needed to make a partition for a compound containing nonintersected shapes. Performance will be better since intersection between shapes from compound is not performed.
Description of all parameters as in previous method MakePartition(). One additional parameter is provided:
IsCheckSelfInte | If TRUE, perform check self intersection of arguments before an operation. |