fmeobjects.FMEPath

Append an entire curve. 
Append an entire segment. 

This method returns the bounding box of the geometry. 

This method returns the bounding cube of the geometry. 

Returns the bounds of the geometry. 

Remove all measures from the geometry. 

Copies all the attributes from the given feature to traits on this geometry, if they match the (optional) regular expression. 


Copies the name of the 'sourceGeometry' onto this geometry. 
Copies all the traits from the given geometry that match the (optional) regular expression. 


Copies all the traits from this geometry to attributes on the given feature, if they match the (optional) regular expression. 
Deletes the geometry's name. 


Extends the path to a point. 

Extend the path to a point. 

Extend the path to a point. 

Extend the path to a list of points. 

Extend the path to a list of points. 
Reduces the geometry to 2D. 


This sets the geometry's dimension to 3D. 
Area calculation. 

Returns the curve as a line. 


Returns a copy of this curve as a line. 
Returns the end point of this curve. 


Returns the length of the curve. 
Retrieve the names of the measures on this geometry. 

This routine retrieves the 'name' of this geometry as a 


This returns the part of the 
Returns the start point of this curve. 


Retrieves the geometry trait value of the specified trait name. 
Retrieve the names of the traits on this geometry. 


This method returns a tuple of a boolean, indicating if the trait is null, a boolean, indicating if the trait is missing, and an integer representing the type of the trait. 

Returns the type of given trait. 
Check if this geometry or any sub part of this geometry has measures. 

Returns whether or not the geometry has a name. 

Returns whether or not the geometry is 3D. 


Returns 
Check if the geometry is an aggregate or multipart collection. 

Returns 


Returns 
This returns the number of 


Offsets the geometry by the coords specified by 'offsetPoint'. 

Removes any adjacent duplicate points. 
This removes the end 


Remove the specified measure if it exists. 

This method has 4 modes: 

Renames the measure specified by 'oldMeasureName' to the new name, specified by 'newMeasureName'. 
This reverses the order of the curve's points. 


Rotate the curve counterclockwise around the 'center' point by the specified 'angle' (in degrees). 

Scale the feature by the given amounts. 

Changes the existing end point of this curve. 

Sets the geometry's name with a 

Changes the existing start point of this curve. 

Sets a geometry trait with the specified value. 

This method supplies a null trait value with a type to the geometry. 

Take a description of start and end positions (either as a measured 2D/3D distance, percentage, or normalized distance from the beginning, or a vertex index), and chop off only the portion between these positions. 

Snip off the portion between two points. 
 class FMEPath
FME Path Class
Create an instance of a Path geometry object.
init()
Default
FMEPath
constructor. Return type:
 Returns:
An instance of a Path geometry object.
init(path)
Create a copy of the passed in Path geometry object.
 Parameters:
path (FMEPath) – The Path geometry object to create a copy of.
 Return type:
 Returns:
An instance of a Path Geometry object.
 __init__(*args, **kwargs)
 appendPart(curve)
Append an entire curve. If the path and the curve are not connected, a new line will be inserted between them. If any 3D segments exist, all 2D segments will be converted to 3D with a default Z value of 0.0.
 Parameters:
curve (FMECurve) – The curve to append.
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 appendPartWithSnapping(curve)
Append an entire segment. If the path and the curve are not connected, the first point on the curve will be moved to instead be the last point on the path. If any 3D segments exist, all 2D segments will be converted to 3D with a default Z value of 0.0.
 Parameters:
curve (FMECurve) – The curve to append with snapping.
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 boundingBox()
This method returns the bounding box of the geometry.
 boundingCube()
This method returns the bounding cube of the geometry.
 bounds()
Returns the bounds of the geometry.
 clearMeasures()
Remove all measures from the geometry.
 Return type:
None
 copyAttributesFromFeature(sourceFeature, overwriteExisting, regexp, prefix)
Copies all the attributes from the given feature to traits on this geometry, if they match the (optional) regular expression.
 Parameters:
sourceFeature (FMEFeature) – The feature to copy attributes from.
overwriteExisting (bool) – Existing traits will be overwritten only if overwriteExisting is
True
.regexp (str) – (Optional) The regular expression to match the attributes against. If regexp is not specified, then all attributes will be copied.
prefix (str) – (Optional) The prefix is put on all the trait names as they are copied. If it is not specified, a prefix will not be added to the trait names.
 Return type:
None
 copyNameFromGeometry(sourceGeometry)
Copies the name of the ‘sourceGeometry’ onto this geometry. If ‘sourceGeometry’s name is blank or
None
, this geometry’s name will becomeNone
. Parameters:
sourceGeometry (FMEGeometry) – The geometry to copy the name from.
 Return type:
None
 copyTraitsFromGeometry(sourceGeometry, overwriteExisting, regexp, prefix)
Copies all the traits from the given geometry that match the (optional) regular expression.
 Parameters:
sourceGeometry (FMEGeometry) – The geometry to copy traits from.
overwriteExisting (bool) – Existing traits will be overwritten only if overwriteExisting is
True
.regexp (str) – (Optional) The regular expression to match the traits against. If regexp is not specified, or is an empty string, then all traits will be copied.
prefix (str) – (Optional) The prefix is put on all the trait names as they are copied. If it is not specified, a prefix will not be added to the trait names.
 Return type:
None
 copyTraitsToFeature(destFeature, overwriteExisting, regexp, prefix)
Copies all the traits from this geometry to attributes on the given feature, if they match the (optional) regular expression.
 Parameters:
destFeature (FMEFeature) – The feature to copy traits to.
overwriteExisting (bool) – Existing attributes will be overwritten only if overwriteExisting is
True
.regexp (str) – (Optional) The regular expression to match the traits against. If regexp is not specified, or is an empty string, then all traits will be copied.
prefix (str) – (Optional) The prefix is put on all the attribute names as they are copied. If it is not specified, a prefix will not be added to the attribute names.
 Return type:
None
 deleteName()
Deletes the geometry’s name. If a name existed prior to this call then
True
is returned; otherwiseFalse
is returned. Return type:
 Returns:
Returns a boolean indicating whether or not the name existed before deletion.
 extendToPoint(point)
Extends the path to a point. If the point is 2D and the path is 3D, the point will be set to 3D with a Z value of 0.0. If the path is 2D and the point is 3D, the segments in the path will be set to 3D with 0.0 for Z values. If
None
is passed in, nothing will be appended. Parameters:
point (FMEPoint) – The point to be extended to.
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 extendToPointXY(xcoord, ycoord)
Extend the path to a point. If this method is called on a 3D line, a Z value of 0.0 will be used for each appended point.
 extendToPointXYZ(xcoord, ycoord, zcoord)
Extend the path to a point. If this method is called on a 2D line, the line will be forced to 3D with a default Z value of 0.0.
 extendToPointsXY(coords)
Extend the path to a list of points. If this method is called on a 3D path, a Z value of 0.0 will be used for each appended point.
 extendToPointsXYZ(coords)
Extend the path to a list of points. If this method is called on a 2D path, the path will be forced to 3D with a default Z value of 0.0.
 force2D()
Reduces the geometry to 2D.
 Return type:
None
 force3D(newZ)
This sets the geometry’s dimension to 3D. All Z values are set to the value passed in, even if the geometry is already 3D.
 Parameters:
newZ (float) – The new Z value.
 Return type:
None
 getAsLine()
Returns the curve as a line.
 getAsLineFixedArcSamples(numSamples)
Returns a copy of this curve as a line. All arcs are approximated with the number of points given by ‘numSamples’. If ‘numSamples’ is 0, the number points will first be determined by the value of
kFMEStrokeMaxDeviationValue
directive in mapping file, which denotes the maximum deviation of the arc from the line. In the absence of this directive or the value of this directive is smaller than or equal to 0, the number points will be determined by the arc’s sweep angle and the value of the mapping file directivekFMEDegreesPerEdge
, which defaults to 5.
 getEndPoint()
Returns the end point of this curve. An error is returned and
None
is returned if this curve has no point to return. Return type:
FMEPoint or None
 Returns:
The end point of the curve, or
None
if there is no point to return. Raises:
FMEException – An exception is raised if an error occurred.
 getLength(threeD)
Returns the length of the curve. If ‘threeD’ is
True
, this returns the 3D length of the curve, otherwise this returns the 2D length.
 getMeasureNames()
Retrieve the names of the measures on this geometry.
 Return type:
 Returns:
Return a tuple storing the names of the measures on this geometry. This will return an empty tuple if there are no measures. For
FMEAggregate
,FMEMultiSurface
, andFMECompositeSurface
, this will return the union of all measure names of all of its parts.
 getName()
This routine retrieves the ‘name’ of this geometry as a
str
. This will returnNone
if it did not have a name associated with it. Return type:
str or None
 Returns:
The geometry’s name.
 getPartAt(index)
This returns the part of the
FMEPath
at the given index. This returnsNone
if the index is out of range. Parameters:
index (int) – The index to retrieve the part from.
 Return type:
 Returns:
The
FMESegment
at the given index. Returns the terminal geometry of theFMESegment
, either aFMEArc
orFMELine
.
 getStartPoint()
Returns the start point of this curve. An error is returned and
None
is returned if this curve has no point to return. Return type:
FMEPoint or None
 Returns:
The start point of the curve, or
None
if there is no point to return. Raises:
FMEException – An exception is raised if an error occurred.
 getTrait(traitName)
Retrieves the geometry trait value of the specified trait name. Null trait values will be returned as an empty string. Binary blob traits are returned as a bytearray.
None
is returned when the trait is not found on the geometry.
 getTraitNames()
Retrieve the names of the traits on this geometry.
 getTraitNullMissingAndType(traitName)
This method returns a tuple of a boolean, indicating if the trait is null, a boolean, indicating if the trait is missing, and an integer representing the type of the trait. The first boolean is
True
if ‘traitName’ maps to a null trait value on the geometry. Otherwise it isFalse
. The second boolean isTrue
if ‘traitName’ maps to a no value on the geometry. Otherwise it isFalse
. If the trait is absent,FME_ATTR_UNDEFINED
is returned for the type.The possible trait types are
FME_ATTR_UNDEFINED
,FME_ATTR_BOOLEAN
,FME_ATTR_INT8
,FME_ATTR_UINT8
,FME_ATTR_INT16
,FME_ATTR_UINT16
,FME_ATTR_INT32
,FME_ATTR_UINT32
,FME_ATTR_REAL32
,FME_ATTR_REAL64
,FME_ATTR_REAL80
,FME_ATTR_STRING
,FME_ATTR_ENCODED_STRING
,FME_ATTR_INT64
,FME_ATTR_UINT64
.
 getTraitType(traitName)
Returns the type of given trait. If the trait cannot be found,
FME_ATTR_UNDEFINED
will be returned.Returns one of
FME_ATTR_UNDEFINED
,FME_ATTR_BOOLEAN
,FME_ATTR_INT8
,FME_ATTR_UINT8
,FME_ATTR_INT16
,FME_ATTR_UINT16
,FME_ATTR_INT32
,FME_ATTR_UINT32
,FME_ATTR_REAL32
,FME_ATTR_REAL64
,FME_ATTR_REAL80
,FME_ATTR_STRING
,FME_ATTR_ENCODED_STRING
,FME_ATTR_INT64
,FME_ATTR_UINT64
.
 hasMeasures()
Check if this geometry or any sub part of this geometry has measures.
 hasName()
Returns whether or not the geometry has a name.
 is3D()
Returns whether or not the geometry is 3D.
 Return type:
 Returns:
Returns
True
if the geometry is 3D andFalse
otherwise. ForFMENull
, this method will always returnTrue
. ForFMEAggregate
,FMEMultiPoint
,FMEMultiArea
,FMEMultiText
andFMEMultiCurve
, this method will returnTrue
if any one of the subparts is 3D. If the collection is empty or all of its members are 2D, this method will returnFalse
.
 isClosed(threeD)
Returns
True
if the start and end points have identical coordinate values. If ‘threeD’ isTrue
, the z coordinate of the start and end points will be compared. This does not take measures into consideration.
 isCollection()
Check if the geometry is an aggregate or multipart collection.
 measureExists(measureName)
Returns
True
if the specified measure exists andFalse
otherwise. If the ‘measureName’ parameter is not specified then the default measure is checked.
 numParts()
This returns the number of
FMESegment
that make up this path. Return type:
 Returns:
The number of
FMESegment
that are used to make theFMEPath
 offset(offsetPoint)
Offsets the geometry by the coords specified by ‘offsetPoint’.
 Parameters:
offsetPoint (FMEPoint) – The
FMEPoint
to offset the curve by. Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 removeDuplicates(checkZ)
Removes any adjacent duplicate points. If ‘checkZ’ is
True
, x, y, and z coordinates are checked, otherwise only x and y are. Parameters:
checkZ (bool) – Whether to check the z coordinate.
 Return type:
None
 removeEndPart()
This removes the end
FMESegment
of the path. If there are no segments in theFMEPath
,None
is returned. Return type:
 Returns:
The
FMESegment
at the end of the path. Returns the terminal geometry of theFMESegment
, either aFMEArc
orFMELine
.
 removeMeasure(measureName)
Remove the specified measure if it exists. If the measure name, is not provided remove the default measure, if there is one.
 Parameters:
measureName (str) – (Optional) The name of the measure to remove.
 Return type:
None
 removeTraits(regexp)
This method has 4 modes:
Remove all traits at the top level: regex == NULL
Remove some traits at the top level: regex == <string>
Remove all traits at all levels: regex ==
kFME_RecurseAll
Remove some traits at all levels: regex ==
kFME_RecurseSome
<string>
For example, specifying regex == NULL for a multisurface will remove all traits at the root level of the multisurface, whereas specifying regex ==
kFME_RecurseSome
<string> will remove all traits from all levels of the multi surface that match <string>. If <string> is an illegal regular expression, no traits will be removed. Return type:
None
 renameMeasure(oldMeasureName, newMeasureName)
Renames the measure specified by ‘oldMeasureName’ to the new name, specified by ‘newMeasureName’.
 reverse()
This reverses the order of the curve’s points.
 Return type:
None
 rotate2D(center, angle)
Rotate the curve counterclockwise around the ‘center’ point by the specified ‘angle’ (in degrees).
 Parameters:
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 scale(xScale, yScale, zScale)
Scale the feature by the given amounts.
 Parameters:
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 setEndPoint(point)
Changes the existing end point of this curve. If there are no points on the curve, this method does nothing.
 Parameters:
point (FMEPoint) – The point to set at the end of the curve.
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 setName(name)
Sets the geometry’s name with a
str
. By supplying a blank name as input, this method will act asdeleteName()
. Parameters:
name (str) – The geometry’s new name.
 Return type:
None
 setStartPoint(point)
Changes the existing start point of this curve. If there are no points on the curve, this method does nothing.
 Parameters:
point (FMEPoint) – The point to set at the start of the curve.
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 setTrait(traitName, traitValue)
Sets a geometry trait with the specified value. If the geometry trait already exists, its value and type will be changed. The following type numeric mappings are used:
PyInt ==> FME_Int32
PyFloat ==> FME_Real64
PyLong ==> FME_Int64
Binary values are to be specified as bytearray values or bytes values.
 setTraitNullWithType(traitName, traitType)
This method supplies a null trait value with a type to the geometry. If a trait with the same name already exists, it is overwritten.
Trait type must be one of
FME_ATTR_UNDEFINED
,FME_ATTR_BOOLEAN
,FME_ATTR_INT8
,FME_ATTR_UINT8
,FME_ATTR_INT16
,FME_ATTR_UINT16
,FME_ATTR_INT32
,FME_ATTR_UINT32
,FME_ATTR_REAL32
,FME_ATTR_REAL64
,FME_ATTR_REAL80
,FME_ATTR_STRING
,FME_ATTR_ENCODED_STRING
,FME_ATTR_INT64
,FME_ATTR_UINT64
.
 snip(measureType, measure3D, startLocation, endLocation)
Take a description of start and end positions (either as a measured 2D/3D distance, percentage, or normalized distance from the beginning, or a vertex index), and chop off only the portion between these positions. If the start and end positions are the same, keep two same points.
 Parameters:
measureType (int) – The measure type to use. Must be on of:
SNIP_DISTANCE
,SNIP_PERCENTAGE
,SNIP_VERTEX
orSNIP_POINT
.measure3D (bool) – Whether to measure the 2D or 3D distance.
startLocation (float) – The start location.
endLocation (float) – The end location.
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.
 snipByPoints(startPoint, endPoint)
Snip off the portion between two points. If these points are not on this line, replaced with nearest points which are exactly on the line. If the start and end point are the same, keep two same points.
 Parameters:
 Return type:
None
 Raises:
FMEException – An exception is raised if an error occurred.