Version: 8.3.0
Home
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
GEOM_IShapesOperations Interface Reference

Interface for Shapes creation: More...

import "GEOM_Gen.idl";

Data Structures

struct  ExtractionStat
 

Public Types

enum  ExtractionStatType { EST_Removed, EST_Modified, EST_Added }
 This enumeration represents an extraction statistics type. More...
 
typedef sequence< ExtractionStatExtractionStats
 

Public Member Functions

GEOM_Object MakeEdge (in GEOM_Object thePnt1, in GEOM_Object thePnt2)
 Create a linear edge with specified ends. More...
 
GEOM_Object MakeEdgeOnCurveByLength (in GEOM_Object theRefCurve, in double theLength, in GEOM_Object theStartPoint)
 Create an edge on another edge, corresponding to the given length on the given edge. More...
 
GEOM_Object MakeEdgeWire (in GEOM_Object theWire, in double theLinearTolerance, in double theAngularTolerance)
 Create an edge from specified wire. More...
 
GEOM_Object MakeWire (in ListOfGO theEdgesAndWires, in double theTolerance)
 Create a wire from the set of edges and wires. More...
 
GEOM_Object MakeFace (in GEOM_Object theWire, in boolean isPlanarWanted)
 Create a face on the given wire. More...
 
GEOM_Object MakeFaceWires (in ListOfGO theWires, in boolean isPlanarWanted)
 Create a face on the given wires set. More...
 
GEOM_Object MakeFaceFromSurface (in GEOM_Object theFace, in GEOM_Object theWire)
 Create a face based on surface of theFace limited by theWire. More...
 
GEOM_Object MakeFaceWithConstraints (in ListOfGO theConstraints)
 Create a face from a set of edges with the given constraints. More...
 
GEOM_Object MakeShell (in ListOfGO theFacesAndShells)
 Create a shell from the set of faces and shells. More...
 
GEOM_Object MakeSolidShell (in GEOM_Object theShell)
 Create a solid, bounded by the given shell. More...
 
GEOM_Object MakeSolidShells (in ListOfGO theShells)
 Create a solid, bounded by the given shells. More...
 
GEOM_Object MakeCompound (in ListOfGO theShapes)
 Create a compound of the given shapes. More...
 
GEOM_Object MakeSolidFromConnectedFaces (in ListOfGO theFacesOrShells, in boolean isIntersect)
 Make a solid (or solids) from connected set of faces and/or shells. More...
 
GEOM_Object MakeGlueFaces (in ListOfGO theShapes, in double theTolerance, in boolean doKeepNonSolids)
 Replace coincident faces in theShapes by one face. More...
 
ListOfGO GetGlueFaces (in ListOfGO theShapes, in double theTolerance)
 
GEOM_Object MakeGlueFacesByList (in ListOfGO theShapes, in double theTolerance, in ListOfGO theFaces, in boolean doKeepNonSolids, in boolean doGlueAllEdges)
 Replace coincident faces in theShapes by one face in compliance with given list of faces. More...
 
GEOM_Object MakeGlueEdges (in ListOfGO theShapes, in double theTolerance)
 Replace coincident edges in theShapes by one edge. More...
 
ListOfGO GetGlueEdges (in ListOfGO theShapes, in double theTolerance)
 
GEOM_Object MakeGlueEdgesByList (in ListOfGO theShapes, in double theTolerance, in ListOfGO theEdges)
 Replace coincident edges in theShapes by one edge in compliance with given list of edges. More...
 
ListOfGO GetExistingSubObjects (in GEOM_Object theShape, in boolean theGroupsOnly)
 Get all sub-shapes and groups of theShape, that were created already by any other methods. More...
 
ListOfGO MakeExplode (in GEOM_Object theShape, in long theShapeType, in boolean isSorted)
 Deprecated method. More...
 
ListOfGO MakeAllSubShapes (in GEOM_Object theShape, in long theShapeType, in boolean isSorted)
 Explode a shape on sub-shapes of a given type. More...
 
ListOfGO ExtractSubShapes (in GEOM_Object theShape, in long theShapeType, in boolean isSorted)
 Extract all sub-shapes of the given type from the given shape, excluding the shape itself. More...
 
ListOfLong SubShapeAllIDs (in GEOM_Object theShape, in long theShapeType, in boolean isSorted)
 Deprecated method. Use GetAllSubShapesIDs() instead. More...
 
ListOfLong GetAllSubShapesIDs (in GEOM_Object theShape, in long theShapeType, in boolean isSorted)
 Explode a shape on sub-shapes of a given type. More...
 
GEOM_Object GetSubShape (in GEOM_Object theMainShape, in long theID)
 Get a sub-shape defined by its unique ID inside theMainShape. More...
 
ListOfGO MakeSubShapes (in GEOM_Object theMainShape, in ListOfLong theIndices)
 Get a set of sub-shapes defined by their unique IDs inside theMainShape. More...
 
long GetSubShapeIndex (in GEOM_Object theMainShape, in GEOM_Object theSubShape)
 
ListOfLong GetSubShapesIndices (in GEOM_Object theMainShape, in ListOfGO theSubShapes)
 
long GetTopologyIndex (in GEOM_Object theMainShape, in GEOM_Object theSubShape)
 Get index of theSubShape in theMainShape, unique among sub-shapes of the same type. More...
 
string GetShapeTypeString (in GEOM_Object theShape)
 Get name of type of theShape. More...
 
boolean IsSubShapeBelongsTo (in GEOM_Object theSubObject, in long theSubObjectIndex, in GEOM_Object theObject, in long theObjectIndex)
 Check if the object is a sub-object of another GEOM object. More...
 
long NumberOfFaces (in GEOM_Object theShape)
 Count number of faces in the given shape. More...
 
long NumberOfEdges (in GEOM_Object theShape)
 Count number of edges in the given shape. More...
 
long NumberOfSubShapes (in GEOM_Object theShape, in long theShapeType)
 Count number of sub-shapes of type theShapeType in the given shape. More...
 
GEOM_Object ChangeOrientation (in GEOM_Object theShape)
 
ListOfLong GetFreeFacesIDs (in GEOM_Object theShape)
 Retrieve all free faces from the given shape. More...
 
ListOfGO GetSharedShapes (in GEOM_Object theShape1, in GEOM_Object theShape2, in long theShapeType)
 Get all sub-shapes of theShape1 of the given type, shared with theShape2. More...
 
ListOfGO GetSharedShapesMulti (in ListOfGO theShapes, in long theShapeType, in boolean theMultiShare)
 Get sub-shapes, shared by input shapes. More...
 
ListOfGO GetShapesOnPlane (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAx1, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter. More...
 
ListOfGO GetShapesOnPlaneWithLocation (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAx1, in GEOM_Object thePnt, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter. More...
 
ListOfGO GetShapesOnCylinder (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAxis, in double theRadius, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter. More...
 
ListOfGO GetShapesOnCylinderWithLocation (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAxis, in GEOM_Object thePnt, in double theRadius, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter. More...
 
ListOfGO GetShapesOnSphere (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theCenter, in double theRadius, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified sphere by the certain way, defined through theState parameter. More...
 
ListOfGO GetShapesOnQuadrangle (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theTopLeftPoint, in GEOM_Object theTopRigthPoint, in GEOM_Object theBottomLeftPoint, in GEOM_Object theBottomRigthPoint, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified quadrangle by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnPlaneIDs (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAx1, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnPlaneWithLocationIDs (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAx1, in GEOM_Object thePnt, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnCylinderIDs (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAxis, in double theRadius, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnCylinderWithLocationIDs (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theAxis, in GEOM_Object thePnt, in double theRadius, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnSphereIDs (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theCenter, in double theRadius, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified sphere by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnQuadrangleIDs (in GEOM_Object theShape, in long theShapeType, in GEOM_Object theTopLeftPoint, in GEOM_Object theTopRigthPoint, in GEOM_Object theBottomLeftPoint, in GEOM_Object theBottomRigthPoint, in shape_state theState)
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified quadrangle by the certain way, defined through theState parameter. More...
 
ListOfLong GetShapesOnBoxIDs (in GEOM_Object theBox, in GEOM_Object theShape, in long theShapeType, in shape_state theState)
 Find sub-shapes complying with given status. More...
 
ListOfGO GetShapesOnBox (in GEOM_Object theBox, in GEOM_Object theShape, in long theShapeType, in shape_state theState)
 Find sub-shapes complying with given status. More...
 
ListOfLong GetShapesOnShapeIDs (in GEOM_Object theCheckShape, in GEOM_Object theShape, in short theShapeType, in shape_state theState)
 Find sub-shapes complying with given status. More...
 
ListOfGO GetShapesOnShape (in GEOM_Object theCheckShape, in GEOM_Object theShape, in short theShapeType, in shape_state theState)
 Find sub-shapes complying with given status. More...
 
GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape, in GEOM_Object theShape, in short theShapeType, in shape_state theState)
 Find sub-shapes complying with given status. More...
 
GEOM_Object GetInPlace (in GEOM_Object theShapeWhere, in GEOM_Object theShapeWhat)
 Get sub-shape(s) of theShapeWhere, which are coincident with theShapeWhat or could be a part of it. More...
 
GEOM_Object GetInPlaceOld (in GEOM_Object theShapeWhere, in GEOM_Object theShapeWhat)
 
GEOM_Object GetInPlaceByHistory (in GEOM_Object theShapeWhere, in GEOM_Object theShapeWhat)
 Get sub-shape(s) of theShapeWhere, which are coincident with theShapeWhat or could be a part of it. More...
 
GEOM_Object GetSame (in GEOM_Object theShapeWhere, in GEOM_Object theShapeWhat)
 Get sub-shape of theShapeWhere, which are coincident with theShapeWhat that can either SOLID, FACE, EDGE or VERTEX. More...
 
ListOfLong GetSameIDs (in GEOM_Object theShapeWhere, in GEOM_Object theShapeWhat)
 Get sub-shape Ids of theShapeWhere, which are coincident with theShapeWhat that can either SOLID, FACE, EDGE or VERTEX. More...
 
GEOM_Object ExtendEdge (in GEOM_Object theEdge, in double theMin, in double theMax)
 Resize the input edge with the new Min and Max parameters. The input edge parameters range is [0, 1]. If theMin parameter is negative, the input edge is extended, otherwise it is shrinked by theMin parameter. If theMax is greater than 1, the edge is extended, otherwise it is shrinked by theMax parameter. More...
 
GEOM_Object ExtendFace (in GEOM_Object theFace, in double theUMin, in double theUMax, in double theVMin, in double theVMax)
 Resize the input face with the new UMin, UMax, VMin and VMax parameters. The input face U and V parameters range is [0, 1]. If theUMin parameter is negative, the input face is extended, otherwise it is shrinked along U direction by theUMin parameter. If theUMax is greater than 1, the face is extended, otherwise it is shrinked along U direction by theUMax parameter. So as for theVMin, theVMax and V direction of the input face. More...
 
GEOM_Object MakeSurfaceFromFace (in GEOM_Object theFace)
 Make a surface from a face. This function takes some face as input parameter and creates new GEOM_Object, i.e. topological shape by extracting underlying surface of the source face and limiting it by the Umin, Umax, Vmin, Vmax parameters of the source face (in the parametrical space). More...
 
ListOfGO GetSubShapeEdgeSorted (in GEOM_Object theShape, in GEOM_Object theStartPoint)
 Explode a shape into edges sorted in a row from a starting point. More...
 
ListOfGO GetSubShapesWithTolerance (in GEOM_Object theShape, in short theShapeType, in comparison_condition theCondition, in double theTolerance)
 Return the list of subshapes that satisfies a certain tolerance criterion. The user defines the type of shapes to be returned, the condition and the tolerance value. The operation is defined for faces, edges and vertices only. E.g. for theShapeType FACE, theCondition CC_GT and theTolerance 1.e-7 this method returns all faces of theShape that have tolerances greater then 1.e7. More...
 
GEOM_Object MakeExtraction (in GEOM_Object theShape, in ListOfLong theSubShapeIDs, out ExtractionStats theStats)
 Return the shape that is constructed from theShape without extracted sub-shapes from the input list. More...
 
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...
 

Detailed Description

Interface for Shapes creation:

Edge from two points, Wire from edges, Face from wire, Shell from faces, Solid from shells, Compound from shapes

Member Typedef Documentation

typedef sequence<ExtractionStat> ExtractionStats

Member Enumeration Documentation

This enumeration represents an extraction statistics type.

It is used in the interface GEOM_IShapesOperations::MakeExtraction.

Enumerator
EST_Removed 

Removed sub-shapes.

EST_Modified 

Modified sub-shapes.

EST_Added 

Newly created sub-shapes.

Member Function Documentation

GEOM_Object MakeEdge ( in GEOM_Object  thePnt1,
in GEOM_Object  thePnt2 
)

Create a linear edge with specified ends.

Parameters
thePnt1Point for the first end of edge.
thePnt2Point for the second end of edge.
Returns
New GEOM_Object, containing the created edge.
GEOM_Object MakeEdgeOnCurveByLength ( in GEOM_Object  theRefCurve,
in double  theLength,
in GEOM_Object  theStartPoint 
)

Create an edge on another edge, corresponding to the given length on the given edge.

Parameters
theRefCurveThe referenced edge.
theLengthLength on the referenced edge. It can be negative for extrapolation on base curve.
theStartPointAny vertex close to one of edge's ends to select start point among them. If NULL, fist vertex is used.
Returns
New GEOM_Object, containing the created edge.
GEOM_Object MakeEdgeWire ( in GEOM_Object  theWire,
in double  theLinearTolerance,
in double  theAngularTolerance 
)

Create an edge from specified wire.

Parameters
theWiresource Wire.
theLinearTolerancelinear tolerance value
theAngularToleranceangular tolerance value
Returns
New GEOM_Object, containing the created edge.
GEOM_Object MakeWire ( in ListOfGO  theEdgesAndWires,
in double  theTolerance 
)

Create a wire from the set of edges and wires.

Parameters
theEdgesAndWiresList of edge and/or wires.
theToleranceMaximum distance between vertices, that will be merged. Values less than 1e-07 are equivalent to 1e-07 (Precision::Confusion()).
Returns
New GEOM_Object, containing the created wire.
GEOM_Object MakeFace ( in GEOM_Object  theWire,
in boolean  isPlanarWanted 
)

Create a face on the given wire.

Parameters
theWireclosed Wire or Edge to build the face on.
isPlanarWantedIf TRUE, only planar face will be built. If impossible, NULL object will be returned.
Returns
New GEOM_Object, containing the created face.
GEOM_Object MakeFaceWires ( in ListOfGO  theWires,
in boolean  isPlanarWanted 
)

Create a face on the given wires set.

Parameters
theWiresList of closed wires or edges to build the face on.
isPlanarWantedIf TRUE, only planar face will be built. If impossible, NULL object will be returned.
Returns
New GEOM_Object, containing the created face.
GEOM_Object MakeFaceFromSurface ( in GEOM_Object  theFace,
in GEOM_Object  theWire 
)

Create a face based on surface of theFace limited by theWire.

Parameters
theFacethe face whose surface is used to create a new face.
theWireclosed Wire build the face.
Returns
New GEOM_Object, containing the created face.
GEOM_Object MakeFaceWithConstraints ( in ListOfGO  theConstraints)

Create a face from a set of edges with the given constraints.

Parameters
theConstraintsList of edges and constraint faces (as a sequence of a Edge + Face couples):
  • edges should form a closed wire;
  • for each edge, constraint face is optional: if a constraint face is missing for some edge, this means that there no constraint associated with this edge.
Returns
New GEOM_Object, containing the created face.
GEOM_Object MakeShell ( in ListOfGO  theFacesAndShells)

Create a shell from the set of faces and shells.

Parameters
theFacesAndShellsList of faces and/or shells.
Returns
New GEOM_Object, containing the created shell.
GEOM_Object MakeSolidShell ( in GEOM_Object  theShell)

Create a solid, bounded by the given shell.

Parameters
theShellBounding shell.
Returns
New GEOM_Object, containing the created solid.
GEOM_Object MakeSolidShells ( in ListOfGO  theShells)

Create a solid, bounded by the given shells.

Parameters
theShellsBounding shells.
Returns
New GEOM_Object, containing the created solid.
GEOM_Object MakeCompound ( in ListOfGO  theShapes)

Create a compound of the given shapes.

Parameters
theShapesList of shapes to put in compound.
Returns
New GEOM_Object, containing the created compound.
GEOM_Object MakeSolidFromConnectedFaces ( in ListOfGO  theFacesOrShells,
in boolean  isIntersect 
)

Make a solid (or solids) from connected set of faces and/or shells.

Parameters
theFacesOrShellsList of faces and/or shells.
isIntersectIf TRUE, forces performing intersections between arguments.
Returns
New GEOM_Object, containing the created solid (or compound of solids).
GEOM_Object MakeGlueFaces ( in ListOfGO  theShapes,
in double  theTolerance,
in boolean  doKeepNonSolids 
)

Replace coincident faces in theShapes by one face.

Parameters
theShapesInitial shapes.
theToleranceMaximum distance between faces, which can be considered as coincident.
doKeepNonSolidsIf FALSE, only solids will present in the result, otherwise all initial shapes.
Returns
New GEOM_Object containing copies of theShapes without coincident faces.
ListOfGO GetGlueFaces ( in ListOfGO  theShapes,
in double  theTolerance 
)

Find coincident faces in theShapes for possible gluing.

Parameters
theShapesInitial shapes.
theToleranceMaximum distance between faces, which can be considered as coincident.
Returns
ListOfGO
GEOM_Object MakeGlueFacesByList ( in ListOfGO  theShapes,
in double  theTolerance,
in ListOfGO  theFaces,
in boolean  doKeepNonSolids,
in boolean  doGlueAllEdges 
)

Replace coincident faces in theShapes by one face in compliance with given list of faces.

Parameters
theShapesInitial shapes.
theToleranceMaximum distance between faces, which can be considered as coincident.
theFacesList of faces for gluing.
doKeepNonSolidsIf FALSE, only solids will present in the result, otherwise all initial shapes.
doGlueAllEdgesIf TRUE, all coincident edges of theShape will be glued, otherwise only the edges, belonging to theFaces.
Returns
New GEOM_Object containing copies of theShapes without coincident faces.
GEOM_Object MakeGlueEdges ( in ListOfGO  theShapes,
in double  theTolerance 
)

Replace coincident edges in theShapes by one edge.

Parameters
theShapesInitial shapes.
theToleranceMaximum distance between edges, which can be considered as coincident.
Returns
New GEOM_Object containing copies of theShapes without coincident edges.
ListOfGO GetGlueEdges ( in ListOfGO  theShapes,
in double  theTolerance 
)

Find coincident edges in theShapes for possible gluing.

Parameters
theShapesInitial shapes.
theToleranceMaximum distance between edges, which can be considered as coincident.
Returns
ListOfGO
GEOM_Object MakeGlueEdgesByList ( in ListOfGO  theShapes,
in double  theTolerance,
in ListOfGO  theEdges 
)

Replace coincident edges in theShapes by one edge in compliance with given list of edges.

Parameters
theShapesInitial shapes.
theToleranceMaximum distance between edges, which can be considered as coincident.
theEdgesList of edges for gluing.
Returns
New GEOM_Object containing copies of theShapes without some edges.
ListOfGO GetExistingSubObjects ( in GEOM_Object  theShape,
in boolean  theGroupsOnly 
)

Get all sub-shapes and groups of theShape, that were created already by any other methods.

Parameters
theShapeAny shape.
theGroupsOnlyIf this parameter is TRUE, only groups will be returned, else all found sub-shapes and groups.
Returns
List of existing sub-objects of theShape.
ListOfGO MakeExplode ( in GEOM_Object  theShape,
in long  theShapeType,
in boolean  isSorted 
)

Deprecated method.

Use MakeAllSubShapes() instead.

ListOfGO MakeAllSubShapes ( in GEOM_Object  theShape,
in long  theShapeType,
in boolean  isSorted 
)

Explode a shape on sub-shapes of a given type.

If the shape itself has the given type, it is also returned.

Parameters
theShapeShape to be exploded.
theShapeTypeType of sub-shapes to be retrieved.
isSortedIf this parameter is TRUE, sub-shapes will be sorted by coordinates of their gravity centers.
Returns
List of sub-shapes of type theShapeType, contained in theShape.
ListOfGO ExtractSubShapes ( in GEOM_Object  theShape,
in long  theShapeType,
in boolean  isSorted 
)

Extract all sub-shapes of the given type from the given shape, excluding the shape itself.

Parameters
theShapeShape to be exploded.
theShapeTypeType of sub-shapes to be retrieved.
isSortedIf this parameter is TRUE, sub-shapes will be sorted by coordinates of their gravity centers.
Returns
List of sub-shapes of type theShapeType, contained in theShape.
ListOfLong SubShapeAllIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in boolean  isSorted 
)

Deprecated method. Use GetAllSubShapesIDs() instead.

ListOfLong GetAllSubShapesIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in boolean  isSorted 
)

Explode a shape on sub-shapes of a given type.

Does the same, as MakeAllSubShapes, but returns IDs of sub-shapes, not GEOM_Object. It works faster.

Parameters
theShapeShape to be exploded.
theShapeTypeType of sub-shapes to be retrieved.
isSortedIf this parameter is TRUE, sub-shapes will be sorted by coordinates of their gravity centers.
Returns
List of IDs of sub-shapes of type theShapeType, contained in theShape.
GEOM_Object GetSubShape ( in GEOM_Object  theMainShape,
in long  theID 
)

Get a sub-shape defined by its unique ID inside theMainShape.

Parameters
theMainShapeMain shape.
theIDUnique ID of sub-shape inside theMainShape.
Returns
GEOM_Object, corresponding to found sub-shape.
Note
The sub-shape GEOM_Object can has ONLY ONE function. Don't try to apply modification operations (without copy) on them.
ListOfGO MakeSubShapes ( in GEOM_Object  theMainShape,
in ListOfLong  theIndices 
)

Get a set of sub-shapes defined by their unique IDs inside theMainShape.

Parameters
theMainShapeMain shape.
theIndicesList of unique IDs of sub-shapes inside theMainShape.
Returns
List of GEOM_Object, corresponding to found sub-shapes.
Note
The sub-shape GEOM_Object can has ONLY ONE function. Don't try to apply modification operations (without copy) on them.
long GetSubShapeIndex ( in GEOM_Object  theMainShape,
in GEOM_Object  theSubShape 
)

Get global index of theSubShape in theMainShape.

Parameters
theMainShapeMain shape.
theSubShapeSub-shape of the main shape.
Returns
global index of theSubShape in theMainShape.
ListOfLong GetSubShapesIndices ( in GEOM_Object  theMainShape,
in ListOfGO  theSubShapes 
)

Get global indices of theSubShapes in theMainShape.

Parameters
theMainShapeMain shape.
theSubShapesList of sub-shapes of the main shape.
Returns
list of global indices of theSubShapes in theMainShape.
long GetTopologyIndex ( in GEOM_Object  theMainShape,
in GEOM_Object  theSubShape 
)

Get index of theSubShape in theMainShape, unique among sub-shapes of the same type.

Together with method GetShapeTypeString() it can be used to generate automatic names for sub-shapes, when publishing them in a study.

Parameters
theMainShapeMain shape.
theSubShapeSub-shape of the main shape.
Returns
index of theSubShape in a list of all sub-shapes of theMainShape of the same type.
string GetShapeTypeString ( in GEOM_Object  theShape)

Get name of type of theShape.

Use wide type notation, taking into consideration both topology and geometry of the shape. Together with method GetTopologyIndex() it can be used to generate automatic names for sub-shapes, when publishing them in a study.

Parameters
theShapeThe shape to get a type of.
Returns
String, containing a type name of theShape.
boolean IsSubShapeBelongsTo ( in GEOM_Object  theSubObject,
in long  theSubObjectIndex,
in GEOM_Object  theObject,
in long  theObjectIndex 
)

Check if the object is a sub-object of another GEOM object.

Parameters
theSubObjectChecked sub-object (or its parent object, in case if theSubObjectIndex is non-zero).
theSubObjectIndexWhen non-zero, specifies a sub-shape index that identifies a sub-object within its parent specified via theSubObject.
theObjectAn object that is checked for ownership (or its parent object, in case if theObjectIndex is non-zero).
theObjectIndexWhen non-zero, specifies a sub-shape index that identifies an object within its parent specified via theObject.
Returns
TRUE, if the given object contains sub-object.
long NumberOfFaces ( in GEOM_Object  theShape)

Count number of faces in the given shape.

Parameters
theShapeShape to count faces in.
Returns
Number of faces in the given shape.
long NumberOfEdges ( in GEOM_Object  theShape)

Count number of edges in the given shape.

Parameters
theShapeShape to count edges in.
Returns
Number of edges in theShape.
long NumberOfSubShapes ( in GEOM_Object  theShape,
in long  theShapeType 
)

Count number of sub-shapes of type theShapeType in the given shape.

Parameters
theShapeShape to count sub-shapes in.
theShapeTypeThe type of sub-shapes to count.
Returns
Number of sub-shapes of type theShapeType in theShape.
GEOM_Object ChangeOrientation ( in GEOM_Object  theShape)

Reverses an orientation the given shape.

Parameters
theShapeShape to be reversed.
Returns
The reversed copy of theShape.
ListOfLong GetFreeFacesIDs ( in GEOM_Object  theShape)

Retrieve all free faces from the given shape.

Free face is a face, which is not shared between two shells of the shape.

Parameters
theShapeShape to find free faces in.
Returns
List of IDs of all free faces, contained in theShape.
ListOfGO GetSharedShapes ( in GEOM_Object  theShape1,
in GEOM_Object  theShape2,
in long  theShapeType 
)

Get all sub-shapes of theShape1 of the given type, shared with theShape2.

Parameters
theShape1Shape to find sub-shapes in.
theShape2Shape to find shared sub-shapes with.
theShapeTypeType of sub-shapes to be retrieved.
Returns
List of sub-shapes of theShape1, shared with theShape2.
ListOfGO GetSharedShapesMulti ( in ListOfGO  theShapes,
in long  theShapeType,
in boolean  theMultiShare 
)

Get sub-shapes, shared by input shapes.

Parameters
theShapesShapes to find common sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theMultiShareSpecifies what type of shares should be checked:
  • TRUE: search sub-shapes from 1st input shape shared with all other input shapes;
  • FALSE: causes to search sub-shapes shared between couples of input shapes.
Note
If theShapes contains single compound, the shares between all possible couples of its top-level shapes are returned; otherwise, only shares between 1st input shape and all rest input shapes are returned.
Returns
List of all found sub-shapes.
ListOfGO GetShapesOnPlane ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAx1,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAx1Vector (or line, or linear edge), specifying normal direction and location of the plane to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of all found sub-shapes.
ListOfGO GetShapesOnPlaneWithLocation ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAx1,
in GEOM_Object  thePnt,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAx1Vector (or line, or linear edge), specifying normal direction of the plane to find shapes on.
thePntPoint specifying location of the plane to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of all found sub-shapes.
ListOfGO GetShapesOnCylinder ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAxis,
in double  theRadius,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAxisVector (or line, or linear edge), specifying axis of the cylinder to find shapes on.
theRadiusRadius of the cylinder to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of all found sub-shapes.
ListOfGO GetShapesOnCylinderWithLocation ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAxis,
in GEOM_Object  thePnt,
in double  theRadius,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAxisVector (or line, or linear edge), specifying axis of the cylinder to find shapes on.
thePntPoint specifying location of the bottom of the cylinder.
theRadiusRadius of the cylinder to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of all found sub-shapes.
ListOfGO GetShapesOnSphere ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theCenter,
in double  theRadius,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified sphere by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theCenterPoint, specifying center of the sphere to find shapes on.
theRadiusRadius of the sphere to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of all found sub-shapes.
ListOfGO GetShapesOnQuadrangle ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theTopLeftPoint,
in GEOM_Object  theTopRigthPoint,
in GEOM_Object  theBottomLeftPoint,
in GEOM_Object  theBottomRigthPoint,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified quadrangle by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theTopLeftPointTop left quadrangle corner
theTopRigthPointTop right quadrangle corner
theBottomLeftPointBottom left quadrangle corner
theBottomRigthPointBottom right quadrangle corner
theStateThe state of the sub-shapes to find.
Returns
List of all found sub-shapes.
ListOfLong GetShapesOnPlaneIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAx1,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAx1Vector (or line, or linear edge), specifying normal direction and location of the plane to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of IDs of all found sub-shapes.
ListOfLong GetShapesOnPlaneWithLocationIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAx1,
in GEOM_Object  thePnt,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAx1Vector (or line, or linear edge), specifying normal direction of the plane to find shapes on.
thePntPoint specifying location of the plane to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of IDs of all found sub-shapes.
ListOfLong GetShapesOnCylinderIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAxis,
in double  theRadius,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAxisVector (or line, or linear edge), specifying axis of the cylinder to find shapes on.
theRadiusRadius of the cylinder to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of IDs of all found sub-shapes.
ListOfLong GetShapesOnCylinderWithLocationIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theAxis,
in GEOM_Object  thePnt,
in double  theRadius,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theAxisVector (or line, or linear edge), specifying axis of the cylinder to find shapes on.
thePntPoint specifying location of the bottom of the cylinder.
theRadiusRadius of the cylinder to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of IDs all found sub-shapes.
ListOfLong GetShapesOnSphereIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theCenter,
in double  theRadius,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified sphere by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theCenterPoint, specifying center of the sphere to find shapes on.
theRadiusRadius of the sphere to find shapes on.
theStateThe state of the sub-shapes to find.
Returns
List of IDs of all found sub-shapes.
ListOfLong GetShapesOnQuadrangleIDs ( in GEOM_Object  theShape,
in long  theShapeType,
in GEOM_Object  theTopLeftPoint,
in GEOM_Object  theTopRigthPoint,
in GEOM_Object  theBottomLeftPoint,
in GEOM_Object  theBottomRigthPoint,
in shape_state  theState 
)

Find in theShape all sub-shapes of type theShapeType, situated relatively the specified quadrangle by the certain way, defined through theState parameter.

Parameters
theShapeShape to find sub-shapes of.
theShapeTypeType of sub-shapes to be retrieved.
theTopLeftPointTop left quadrangle corner
theTopRigthPointTop right quadrangle corner
theBottomLeftPointBottom left quadrangle corner
theBottomRigthPointBottom right quadrangle corner
theStateThe state of the sub-shapes to find.
Returns
List of IDs of all found sub-shapes.
ListOfLong GetShapesOnBoxIDs ( in GEOM_Object  theBox,
in GEOM_Object  theShape,
in long  theShapeType,
in shape_state  theState 
)

Find sub-shapes complying with given status.

Parameters
theBox- the box to check state of sub-shapes against
theShape- the shape to explore
theShapeType- type of sub-shape of theShape
theState- required state
Returns
List of IDs of all found sub-shapes.
ListOfGO GetShapesOnBox ( in GEOM_Object  theBox,
in GEOM_Object  theShape,
in long  theShapeType,
in shape_state  theState 
)

Find sub-shapes complying with given status.

Parameters
theBox- the box to check state of sub-shapes against
theShape- the shape to explore
theShapeType- type of sub-shape of theShape
theState- required state
Returns
List of all found sub-shapes.
ListOfLong GetShapesOnShapeIDs ( in GEOM_Object  theCheckShape,
in GEOM_Object  theShape,
in short  theShapeType,
in shape_state  theState 
)

Find sub-shapes complying with given status.

Parameters
theCheckShape- the shape to check state of sub-shapes against. It must be a solid.
theShape- the shape to explore
theShapeType- type of sub-shape of theShape
theState- required state
Returns
List of IDs of all found sub-shapes.
ListOfGO GetShapesOnShape ( in GEOM_Object  theCheckShape,
in GEOM_Object  theShape,
in short  theShapeType,
in shape_state  theState 
)

Find sub-shapes complying with given status.

Parameters
theCheckShape- the shape to check state of sub-shapes against. It must be a solid.
theShape- the shape to explore
theShapeType- type of sub-shape of theShape
theState- required state
Returns
List of all found sub-shapes.
GEOM_Object GetShapesOnShapeAsCompound ( in GEOM_Object  theCheckShape,
in GEOM_Object  theShape,
in short  theShapeType,
in shape_state  theState 
)

Find sub-shapes complying with given status.

Parameters
theCheckShape- the shape to check state of sub-shapes against. It must be a solid.
theShape- the shape to explore
theShapeType- type of sub-shape of theShape
theState- required state
Returns
compound includes all found sub-shapes.
GEOM_Object GetInPlace ( in GEOM_Object  theShapeWhere,
in GEOM_Object  theShapeWhat 
)

Get sub-shape(s) of theShapeWhere, which are coincident with theShapeWhat or could be a part of it.

Parameters
theShapeWhereShape to find sub-shapes of.
theShapeWhatShape, specifying what to find.
Returns
Compound which includes all found sub-shapes if they have different types; or group of all found shapes of the equal type; or a single found sub-shape.
GEOM_Object GetInPlaceOld ( in GEOM_Object  theShapeWhere,
in GEOM_Object  theShapeWhat 
)

Old implementation of GetInPlace functionality, based on shape properties.

GEOM_Object GetInPlaceByHistory ( in GEOM_Object  theShapeWhere,
in GEOM_Object  theShapeWhat 
)

Get sub-shape(s) of theShapeWhere, which are coincident with theShapeWhat or could be a part of it.

Implementation of this method is based on a saved history of an operation, produced theShapeWhere. The theShapeWhat must be among this operation's arguments (an argument shape or a sub-shape of an argument shape). The operation could be the Partition or one of boolean operations, performed on simple shapes (not on compounds).

Parameters
theShapeWhereShape to find sub-shapes of.
theShapeWhatShape, specifying what to find.
Returns
Compound which includes all found sub-shapes if they have different types; or group of all found shapes of the equal type; or a single found sub-shape.
GEOM_Object GetSame ( in GEOM_Object  theShapeWhere,
in GEOM_Object  theShapeWhat 
)

Get sub-shape of theShapeWhere, which are coincident with theShapeWhat that can either SOLID, FACE, EDGE or VERTEX.

Parameters
theShapeWhereShape to find sub-shapes of.
theShapeWhatShape, specifying what to find.
Returns
found sub-shape.
ListOfLong GetSameIDs ( in GEOM_Object  theShapeWhere,
in GEOM_Object  theShapeWhat 
)

Get sub-shape Ids of theShapeWhere, which are coincident with theShapeWhat that can either SOLID, FACE, EDGE or VERTEX.

Parameters
theShapeWhereShape to find sub-shapes of.
theShapeWhatShape, specifying what to find.
Returns
found sub-shape Ids.
GEOM_Object ExtendEdge ( in GEOM_Object  theEdge,
in double  theMin,
in double  theMax 
)

Resize the input edge with the new Min and Max parameters. The input edge parameters range is [0, 1]. If theMin parameter is negative, the input edge is extended, otherwise it is shrinked by theMin parameter. If theMax is greater than 1, the edge is extended, otherwise it is shrinked by theMax parameter.

Parameters
theEdgethe input edge to be resized.
theMinthe minimal parameter value.
theMaxthe maximal parameter value.
Returns
a newly created edge.
GEOM_Object ExtendFace ( in GEOM_Object  theFace,
in double  theUMin,
in double  theUMax,
in double  theVMin,
in double  theVMax 
)

Resize the input face with the new UMin, UMax, VMin and VMax parameters. The input face U and V parameters range is [0, 1]. If theUMin parameter is negative, the input face is extended, otherwise it is shrinked along U direction by theUMin parameter. If theUMax is greater than 1, the face is extended, otherwise it is shrinked along U direction by theUMax parameter. So as for theVMin, theVMax and V direction of the input face.

Parameters
theFacethe input face to be resized.
theUMinthe minimal U parameter value.
theUMaxthe maximal U parameter value.
theVMinthe minimal V parameter value.
theVMaxthe maximal V parameter value.
Returns
a newly created face.
GEOM_Object MakeSurfaceFromFace ( in GEOM_Object  theFace)

Make a surface from a face. This function takes some face as input parameter and creates new GEOM_Object, i.e. topological shape by extracting underlying surface of the source face and limiting it by the Umin, Umax, Vmin, Vmax parameters of the source face (in the parametrical space).

Parameters
theFacethe input face.
Returns
a newly created face.
ListOfGO GetSubShapeEdgeSorted ( in GEOM_Object  theShape,
in GEOM_Object  theStartPoint 
)

Explode a shape into edges sorted in a row from a starting point.

Parameters
theShape- the shape to be exploded on edges.
theStartPoint- the starting point.
Returns
Ordered list of edges sorted in a row from a starting point.
ListOfGO GetSubShapesWithTolerance ( in GEOM_Object  theShape,
in short  theShapeType,
in comparison_condition  theCondition,
in double  theTolerance 
)

Return the list of subshapes that satisfies a certain tolerance criterion. The user defines the type of shapes to be returned, the condition and the tolerance value. The operation is defined for faces, edges and vertices only. E.g. for theShapeType FACE, theCondition CC_GT and theTolerance 1.e-7 this method returns all faces of theShape that have tolerances greater then 1.e7.

Parameters
theShapethe shape to be exploded
theShapeTypethe type of shapes to be returned. Can have the values FACE, EDGE and VERTEX only.
theConditionthe condition type.
theTolerancethe tolerance filter.
Returns
the list of shapes that satisfy the conditions.
GEOM_Object MakeExtraction ( in GEOM_Object  theShape,
in ListOfLong  theSubShapeIDs,
out ExtractionStats  theStats 
)

Return the shape that is constructed from theShape without extracted sub-shapes from the input list.

Parameters
theShapethe original shape.
theSubShapeIDsthe list of sub-shape IDs to be extracted from the original shape.
theStatsthe operation statistics. Output parameter.
Returns
the shape without extracted sub-shapes.
boolean IsDone ( )
inherited

To know, if the operation was successfully performed.

void SetErrorCode ( in string  theErrorID)
inherited

Set the operation error code.

Parameters
theErrorIDis a string describing the error occured
Note
This method is supposed to be used only by interfaces inheriting from IOperations.
string GetErrorCode ( )
inherited

Get the operation error code.

long GetStudyID ( )
inherited

Get ID of study, where the operation is defined.

void StartOperation ( )
inherited

Opens a new transaction.

void FinishOperation ( )
inherited

Closes the previously opened trasaction.

void AbortOperation ( )
inherited

Aborts the previously opened transaction.