Module fmeobjects :: Class FMECSGSolid
[hide private]
[frames] | no frames]

Class FMECSGSolid

 object --+            
          |            
FMEGeometry --+        
              |        
       FMESolid --+    
                  |    
     FMESimpleSolid --+
                      |
                     FMECSGSolid

init(MultipleInvocations)

Create an instance of a CSGSolid geometry object.

init(solid)

Creates a CSGSolid geometry object.

Parameters

Returns: FMECSGSolid

init(solid, op, secondSolid)

Creates a CSGSolid geometry object.

Parameters

Returns: FMECSGSolid

init(csgSolid)

Create a copy of the passed in CSGSolid geometry object.

Parameters

Returns: FMECSGSolid

Instance Methods [hide private]
 
__decIterRef__(args)
 
__incIterRef__(args)
 
__init__(MultipleInvocations)
x.__init__(...) initializes x; see help(type(x)) for signature
 
__iter__(x)
iter(x)
None
addOperatorAndSolid(op, solid)
Inserts a solid and operator to the CSG solid hierarchy.
FMEGeometry of a terminal type, or None
evaluateCSG()
Returns the constructed result described by this CSG solid hierarchy.
None
getPrimitives(multiSolid)
Adds a copy of all the primitives stored in this CSG solid hierarchy to the multi-solid passed in.
list of lists of floats
getTransformationMatrix()
Gets this CSGSolid's transformation matrix.
bool
hasTransformationMatrix()
Returns true if this CSGsolid has a transformation matrix, false otherwise.
None
removeTransformationMatrix()
Removes this CSGSolid's transformation matrix.
None
resolvePartDefaults()
Recursively resolves parts with default appearances by replacing these defaults with the inherited appearance references stored by the parent geometry, if such a value exists.
None
setTransformationMatrix(matrix)
Sets this CSGSolid's transformation matrix, replacing the existing matrix if it exists.

Inherited from FMESolid: getAppearanceReference, getAsWireFrame, offset, reverse, rotate2D, scale, setAppearanceReference

Inherited from FMEGeometry: __getObject__, __new__, boundingBox, boundingCube, bounds, clearMeasures, copyAttributesFromFeature, copyNameFromGeometry, copyTraitsFromGeometry, copyTraitsToFeature, deleteName, force2D, force3D, getArea, getMeasureNames, getName, getTrait, getTraitNames, getTraitNullMissingAndType, getTraitType, hasMeasures, hasName, is3D, isCollection, measureExists, removeMeasure, removeTraits, renameMeasure, setName, setTrait, setTraitNullWithType

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(MultipleInvocations)
(Constructor)

 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__

addOperatorAndSolid(op, solid)

 

Inserts a solid and operator to the CSG solid hierarchy. The original solid defined by the CSG (as the left operand) is operated on by the specified operator and the input solid (as the right operand). If the input solid is None, then the CSG solid hierarchy is not modified.

Parameters:
Returns: None

evaluateCSG()

 

Returns the constructed result described by this CSG solid hierarchy. Depending on the primitive solids and operators used in the hierarchy, the resultant geometry could be a collection of solids FMEMultiSolid, a single solid FMEBRepSolid, or a null geometry FMENull, if the result is an empty set.

Returns: FMEGeometry of a terminal type, or None
The constructed result described by this CSG solid hierarchy, or None if something went wrong. Note: This method returns a terminal geometry type of the FMEGeometry; i.e. one of the leaf classes in the FMEGeometry inheritance graph. For example, a FMEPolygon is returned if the geometry truly is a polygon.

getPrimitives(multiSolid)

 

Adds a copy of all the primitives stored in this CSG solid hierarchy to the multi-solid passed in. Solids existing in the input multi-solid are unmodified; thus the number of solids contained in the multi-solid will increase by the total number of primitives stored in this CSG solid hierarchy.

Parameters:
  • multiSolid (FMEMultiSolid) - The multi-solid to add a copy of all the primitives stored in this CSG solid hierarchy to.
Returns: None

getTransformationMatrix()

 

Gets this CSGSolid's transformation matrix. If the CSGSolid does not have a matrix, an identity matrix is returned. Only the top three rows of the matrix will be returned, as the bottom row is always [ 0 0 0 1 ].

Returns: list of lists of floats
The aggregate's tranformation matrix, formatted [[dddd][dddd][dddd]].

hasTransformationMatrix()

 

Returns true if this CSGsolid has a transformation matrix, false otherwise.

Returns: bool
Returns True if this aggregate has a transformationmatrix, and False otherwise.

resolvePartDefaults()

 

Recursively resolves parts with default appearances by replacing these defaults with the inherited appearance references stored by the parent geometry, if such a value exists. The nearest non-default ancestor value will be used to set the default appearances on the part.

Returns: None

setTransformationMatrix(matrix)

 

Sets this CSGSolid's transformation matrix, replacing the existing matrix if it exists. Only three rows are expected in the input array, as a bottom row of [ 0 0 0 1 ] is assumed.

Parameters:
  • matrix (list of lists of floats) - The transformation matrix, formatted [[dddd][dddd][dddd]].
Returns: None