Class MultiPath
java.lang.Object
com.esri.core.geometry.Geometry
com.esri.core.geometry.MultiVertexGeometry
com.esri.core.geometry.MultiPath
- All Implemented Interfaces:
Serializable
The MulitPath class is a base class for polygons and polylines.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class Geometry
Geometry.GeometryAccelerationDegree, Geometry.GeometryType, Geometry.Type -
Field Summary
FieldsFields inherited from class Geometry
m_description, m_touchFlag -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Object_getImpl()voidAppends all paths from another multipath.voidaddAttribute(int semantics) Adds a new attribute to the Geometry.voidaddEnvelope(Envelope2D envSrc, boolean bReverse) Adds a rectangular closed Path to the MultiPathImpl.voidaddEnvelope(Envelope envSrc, boolean bReverse) Adds a rectangular closed path to this multipath.voidCopies a path from another multipath.(package private) voidAdds a new path to this multipath.voidaddSegment(Segment segment, boolean bStartNewPath) Adds a new segment to this multipath.voidaddSegmentsFromPath(MultiPath src, int srcPathIndex, int srcSegmentFrom, int srcSegmentCount, boolean bStartNewPath) Adds segments from a source multipath to this MultiPath.voidapplyTransformation(Transformation2D transform) Applies 2D affine transformation in XY plane.(package private) voidapplyTransformation(Transformation3D transform) Applies 3D affine transformation.voidAssigns the new VertexDescription by adding or dropping attributes.(package private) voidAdds a Cubic Bezier Segment to the current Path.doubleCalculates the area of the geometry.doubleCalculates the length of the geometry.doublecalculatePathLength2D(int pathIndex) voidCloses all open paths by adding an implicit line segment from the end point to the start point.(package private) voidCloses last path of the MultiPath with the Arc Segment.(package private) voidclosePathWithBezier(Point2D controlPoint1, Point2D controlPoint2) Closes last path of the MultiPath with the Bezier Segment.voidCloses the last path of this multipath with a line segment.voidCopies this geometry to another geometry of the same type.voidDrops all attributes from the Geometry with exception of POSITON.voiddropAttribute(int semantics) Drops an attribute from the Geometry.doublegetAttributeAsDbl(int semantics, int index, int ordinate) Returns value of the given vertex attribute as double.intgetAttributeAsInt(int semantics, int index, int ordinate) Returns value of the given vertex attribute as int.Returns boundary of this geometry.Returns the VertexDescription of this geometry.intReturns the number of paths in this multipath.intgetPathEnd(int pathIndex) Returns the index immediately following the last index of the path.intgetPathIndexFromPointIndex(int pointIndex) Returns the path index from the point index.intgetPathSize(int pathIndex) Returns the number of vertices in a path.intgetPathStart(int pathIndex) Returns the start index of the path.getPoint(int index) Returns given vertex of the Geometry.voidgetPointByVal(int index, Point outPoint) Returns given vertex of the Geometry.intReturns the total vertex count in this Geometry.intReturns total segment count in the MultiPath.intgetSegmentCount(int pathIndex) Returns the segment count in the given multipath path.intThe stateFlag value changes with changes applied to this geometry.getXY(int index) Returns XY coordinates of the given vertex of the Geometry.void(package private) Point3DgetXYZ(int index) Returns XYZ coordinates of the given vertex of the Geometry.inthashCode()Returns the hash code for the multipath.(package private) booleanReturns TRUE if the multipath contains non-linear segments.(package private) booleanhasNonLinearSegments(int pathIndex) Returns TRUE if the given path might have non-linear segments.voidinsertPath(int pathIndex, MultiPath src, int srcPathIndex, boolean bForward) Inserts a path from another multipath.(package private) voidinsertPath(int pathIndex, Point2D[] points, int pointsOffset, int count, boolean bForward) Inserts a path from an array of 2D Points.voidinsertPoint(int pathIndex, int beforePointIndex, Point pt) Inserts a point.(package private) voidinsertPoint(int pathIndex, int beforePointIndex, Point2D pt) Inserts a point.voidinsertPoints(int pathIndex, int beforePointIndex, MultiPath src, int srcPathIndex, int srcPointIndexFrom, int srcPointCount, boolean bForward) Inserts vertices from the given multipath into this multipath.(package private) voidinsertPoints(int pathIndex, int beforePointIndex, Point2D[] src, int srcPointIndexFrom, int srcPointCount, boolean bForward) Inserts a part of a path from the given array.booleanisClosedPath(int pathIndex) Indicates if the given path is closed (represents a ring).booleanisClosedPathInXYPlane(int pathIndex) booleanisEmpty()IsEmpty returns TRUE when the Geometry object does not contain geometric information beyond its original initialization state.voidlineTo(double x, double y) Adds a line segment from the last point to the given end coordinates.voidAdds a Line Segment to the given end point.(package private) void(package private) voidvoidMerges the new VertexDescription by adding missing attributes from the src.voidqueryCoordinates(Point[] dst) voidqueryCoordinates(Point2D[] dst) Queries XY coordinates as an array.voidqueryCoordinates(Point2D[] dst, int dstSize, int beginIndex, int endIndex) (package private) voidqueryCoordinates(Point3D[] dst) Queries XYZ coordinates as an array.voidqueryEnvelope(Envelope env) Returns the axis aligned bounding box of the geometry.voidReturns tight bbox of the Geometry in X, Y plane.(package private) voidReturns tight bbox of the Geometry in 3D.queryInterval(int semantics, int ordinate) Returns the min and max attribute values at the ordinate of the Geometry.void(package private) voidvoidqueryPathEnvelope2D(int pathIndex, Envelope2D env) Returns a SegmentIterator that is set right before the beginning of the multipath.querySegmentIteratorAtVertex(int startVertexIndex) Returns a SegmentIterator that is set to a specific vertex of the MultiPath.voidremovePath(int pathIndex) Removes the path at the given index.voidremovePoint(int pathIndex, int pointIndex) Removes a point at a given index.voidreplaceNaNs(int semantics, double value) Replaces NaNs in the attribute with the given value.voidReverses the order of the vertices in each path.voidreversePath(int pathIndex) Reverses the order of vertices in the path.voidsetAttribute(int semantics, int index, int ordinate, double value) Sets the value of given attribute at given posisiotnsis.voidsetAttribute(int semantics, int index, int ordinate, int value) Same as above, but works with ints.voidsetEmpty()Returns the geometry to its original initialization state by releasing all data referenced by the geometry.voidSets the vertex at given index of the Geometry.voidsetPointByVal(int index, Point point) Sets the vertex at given index of the Geometry.voidSets XY coordinates of the given vertex of the Geometry.(package private) voidSets XYZ coordinates of the given vertex of the Geometry.voidstartPath(double x, double y) Starts a new path at given coordinates.voidStarts a new path at a point.(package private) void(package private) voidMethods inherited from class MultiVertexGeometry
_assignVertexDescriptionImpl, getCoordinates2D, getCoordinates3D, getPointMethods inherited from class Geometry
_clone, _touch, addID, addM, addZ, copy, createInstance, estimateMemorySize, estimateMemorySize, getDimension, getDimensionFromType, getType, hasAttribute, hasID, hasM, hasZ, isArea, isLinear, isMultiPath, isMultiVertex, isPoint, isSegment, queryLooseEnvelope2D, queryLooseEnvelope3D, toString, vertex_count, writeReplace
-
Field Details
-
m_impl
MultiPathImpl m_impl
-
-
Constructor Details
-
MultiPath
public MultiPath()
-
-
Method Details
-
getDescription
Description copied from class:GeometryReturns the VertexDescription of this geometry.- Overrides:
getDescriptionin classGeometry- Returns:
- VertexDescription
-
assignVertexDescription
Description copied from class:GeometryAssigns the new VertexDescription by adding or dropping attributes. The Geometry will have the src description as a result.- Overrides:
assignVertexDescriptionin classGeometry- Parameters:
src- VertexDescription to assign.
-
mergeVertexDescription
Description copied from class:GeometryMerges the new VertexDescription by adding missing attributes from the src. The Geometry will have a union of the current and the src descriptions.- Overrides:
mergeVertexDescriptionin classGeometry- Parameters:
src- VertexDescription to merge.
-
addAttribute
public void addAttribute(int semantics) Description copied from class:GeometryAdds a new attribute to the Geometry.- Overrides:
addAttributein classGeometry- Parameters:
semantics- The VertexDescription.Semantics to add.
-
dropAttribute
public void dropAttribute(int semantics) Description copied from class:GeometryDrops an attribute from the Geometry. Dropping the attribute is equivalent to setting the attribute to the default value for each vertex, However, it is faster and the result Geometry has smaller memory footprint and smaller size when persisted.- Overrides:
dropAttributein classGeometry- Parameters:
semantics- The VertexDescription.Semantics to drop.
-
dropAllAttributes
public void dropAllAttributes()Description copied from class:GeometryDrops all attributes from the Geometry with exception of POSITON.- Overrides:
dropAllAttributesin classGeometry
-
getPointCount
public int getPointCount()Description copied from class:MultiVertexGeometryReturns the total vertex count in this Geometry.- Specified by:
getPointCountin classMultiVertexGeometry
-
getPoint
Description copied from class:MultiVertexGeometryReturns given vertex of the Geometry.- Specified by:
getPointin classMultiVertexGeometry
-
setPoint
Description copied from class:MultiVertexGeometrySets the vertex at given index of the Geometry.- Specified by:
setPointin classMultiVertexGeometry- Parameters:
index- The index of the vertex being changed.point- The Point instance to set given vertex attributes from. The pointSrc can not be empty.
The method throws if the pointSrc is not of the Point type.
The attributes, that are present in the pointSrc and missing in this Geometry, will be added to the Geometry.
The vertex attributes missing in the pointSrc but present in the Geometry will be set to the default values (see VertexDescription::GetDefaultValue).
-
isEmpty
-
calculateArea2D
public double calculateArea2D()Description copied from class:GeometryCalculates the area of the geometry. If the spatial reference is a Geographic Coordinate System (WGS84) then the 2D area calculation is defined in angular units.- Overrides:
calculateArea2Din classGeometry- Returns:
- A double value representing the 2D area of the geometry.
-
calculateLength2D
public double calculateLength2D()Description copied from class:GeometryCalculates the length of the geometry. If the spatial reference is a Geographic Coordinate System (a system where coordinates are defined using angular units such as longitude and latitude) then the 2D distance calculation is returned in angular units. In cases where length must be calculated on a Geographic Coordinate System consider the using the geodeticLength method on theGeometryEngine- Overrides:
calculateLength2Din classGeometry- Returns:
- A double value representing the 2D length of the geometry.
-
calculatePathLength2D
public double calculatePathLength2D(int pathIndex) -
getAttributeAsDbl
public double getAttributeAsDbl(int semantics, int index, int ordinate) Description copied from class:MultiVertexGeometryReturns value of the given vertex attribute as double.- Specified by:
getAttributeAsDblin classMultiVertexGeometry- Parameters:
semantics- The atribute semantics.index- is the vertex index in the Geometry.ordinate- is the ordinate of a vertex attribute (for example, y has ordinate of 1, because it is second ordinate of POSITION) If attribute is not present, the default value is returned. See VertexDescription::GetDefaultValue() method.
-
getAttributeAsInt
public int getAttributeAsInt(int semantics, int index, int ordinate) Description copied from class:MultiVertexGeometryReturns value of the given vertex attribute as int.- Specified by:
getAttributeAsIntin classMultiVertexGeometry- Parameters:
semantics- The atribute semantics.index- is the vertex index in the Geometry.ordinate- is the ordinate of a vertex attribute (for example, y has ordinate of 1, because it is second ordinate of POSITION) If attribute is not present, the default value is returned. See VertexDescription::GetDefaultValue() method. Avoid using this method on non-integer atributes.
-
setAttribute
public void setAttribute(int semantics, int index, int ordinate, double value) Description copied from class:MultiVertexGeometrySets the value of given attribute at given posisiotnsis.- Specified by:
setAttributein classMultiVertexGeometry- Parameters:
semantics- The atribute semantics.index- is the vertex index in the Geometry.ordinate- is the ordinate of a vertex attribute (for example, y has ordinate of 1, because it is seond ordinate of POSITION)value- is the value to set. as well as the number of components of the attribute. If the attribute is not present in this Geometry, it is added.
-
setAttribute
public void setAttribute(int semantics, int index, int ordinate, int value) Description copied from class:MultiVertexGeometrySame as above, but works with ints. Avoid using this method on non-integer atributes because some double attributes may have NaN default values (e.g. Ms)- Specified by:
setAttributein classMultiVertexGeometry
-
getXY
Description copied from class:MultiVertexGeometryReturns XY coordinates of the given vertex of the Geometry.- Specified by:
getXYin classMultiVertexGeometry
-
getXY
- Specified by:
getXYin classMultiVertexGeometry
-
setXY
Description copied from class:MultiVertexGeometrySets XY coordinates of the given vertex of the Geometry. All other attributes are unchanged.- Specified by:
setXYin classMultiVertexGeometry
-
getXYZ
Description copied from class:MultiVertexGeometryReturns XYZ coordinates of the given vertex of the Geometry. If the Geometry has no Z's, the default value for Z is returned (0).- Specified by:
getXYZin classMultiVertexGeometry
-
setXYZ
Description copied from class:MultiVertexGeometrySets XYZ coordinates of the given vertex of the Geometry. If Z attribute is not present in this Geometry, it is added. All other attributes are unchanged.- Specified by:
setXYZin classMultiVertexGeometry
-
queryEnvelope
Description copied from class:GeometryReturns the axis aligned bounding box of the geometry.- Specified by:
queryEnvelopein classGeometry- Parameters:
env- The envelope to return the result in.
-
queryEnvelope2D
Description copied from class:GeometryReturns tight bbox of the Geometry in X, Y plane.- Specified by:
queryEnvelope2Din classGeometry- Parameters:
env- The envelope to return the result in.
-
queryPathEnvelope2D
-
queryEnvelope3D
Description copied from class:GeometryReturns tight bbox of the Geometry in 3D.- Specified by:
queryEnvelope3Din classGeometry- Parameters:
env- The envelope to return the result in.
-
queryLooseEnvelope
-
queryLooseEnvelope
-
queryInterval
Description copied from class:GeometryReturns the min and max attribute values at the ordinate of the Geometry.- Specified by:
queryIntervalin classGeometry- Parameters:
semantics- The semantics of the interval.ordinate- The ordinate of the interval.- Returns:
- The interval.
-
copyTo
-
getBoundary
Description copied from class:GeometryReturns boundary of this geometry. Polygon and Envelope boundary is a Polyline. For Polyline and Line, the boundary is a Multi_point consisting of path end points. For Multi_point and Point null is returned.- Specified by:
getBoundaryin classGeometry- Returns:
- The boundary geometry.
-
queryCoordinates
Description copied from class:MultiVertexGeometryQueries XY coordinates as an array. The array must be larg enough (See GetPointCount()).- Specified by:
queryCoordinatesin classMultiVertexGeometry
-
queryCoordinates
-
queryCoordinates
Description copied from class:MultiVertexGeometryQueries XYZ coordinates as an array. The array must be larg enough (See GetPointCount()).- Specified by:
queryCoordinatesin classMultiVertexGeometry
-
queryCoordinates
- Specified by:
queryCoordinatesin classMultiVertexGeometry
-
hasNonLinearSegments
boolean hasNonLinearSegments()Returns TRUE if the multipath contains non-linear segments. -
getSegmentCount
public int getSegmentCount()Returns total segment count in the MultiPath. -
getSegmentCount
public int getSegmentCount(int pathIndex) Returns the segment count in the given multipath path.- Parameters:
pathIndex- The path to determine the segment.- Returns:
- The segment of the multipath.
-
add
Appends all paths from another multipath.- Parameters:
src- The multipath to append to this multipath.bReversePaths- TRUE if the multipath is added should be added with its paths reversed.
-
addPath
Copies a path from another multipath.- Parameters:
src- The multipath to copy from.srcPathIndex- The index of the path in the the source MultiPath.bForward- When FALSE, the points are inserted in reverse order.
-
addPath
Adds a new path to this multipath.- Parameters:
points- The array of points to add to this multipath.count- The number of points added to the mulitpath.bForward- When FALSE, the points are inserted in reverse order.
-
addSegmentsFromPath
public void addSegmentsFromPath(MultiPath src, int srcPathIndex, int srcSegmentFrom, int srcSegmentCount, boolean bStartNewPath) Adds segments from a source multipath to this MultiPath.- Parameters:
src- The source MultiPath to add segments from.srcPathIndex- The index of the path in the the source MultiPath.srcSegmentFrom- The index of first segment in the path to start adding from. The value has to be between 0 and src.getSegmentCount(srcPathIndex) - 1.srcSegmentCount- The number of segments to add. If 0, the function does nothing.bStartNewPath- When true, a new path is added and segments are added to it. Otherwise the segments are added to the last path of this MultiPath. If bStartNewPath false, the first point of the first source segment is not added. This is done to ensure proper connection to existing segments. When the source path is closed, and the closing segment is among those to be added, it is added also as a closing segment, not as a real segment. Use add_segment instead if you do not like that behavior. This MultiPath obtains all missing attributes from the src MultiPath.
-
addSegment
Adds a new segment to this multipath.- Parameters:
segment- The segment to be added to this mulitpath.bStartNewPath- TRUE if a new path will be added.
-
reverseAllPaths
public void reverseAllPaths()Reverses the order of the vertices in each path. -
reversePath
public void reversePath(int pathIndex) Reverses the order of vertices in the path.- Parameters:
pathIndex- The start index of the path to reverse the order.
-
removePath
public void removePath(int pathIndex) Removes the path at the given index.- Parameters:
pathIndex- The start index to remove the path.
-
insertPath
Inserts a path from another multipath.- Parameters:
pathIndex- The start index of the multipath to insert.src- The multipath to insert into this multipath. Can be the same as the multipath being modified.srcPathIndex- The start index to insert the path into the multipath.bForward- When FALSE, the points are inserted in reverse order.
-
insertPath
Inserts a path from an array of 2D Points.- Parameters:
pathIndex- The path index of the multipath to place the new path.points- The array of points defining the new path.pointsOffset- The offset into the array to start reading.count- The number of points to insert into the new path.bForward- When FALSE, the points are inserted in reverse order.
-
insertPoints
public void insertPoints(int pathIndex, int beforePointIndex, MultiPath src, int srcPathIndex, int srcPointIndexFrom, int srcPointCount, boolean bForward) Inserts vertices from the given multipath into this multipath. All added vertices are connected by linear segments with each other and with the existing vertices.- Parameters:
pathIndex- The path index in this multipath to insert points to. Must correspond to an existing path.beforePointIndex- The point index before all other vertices to insert in the given path of this multipath. This value must be between 0 and GetPathSize(pathIndex), or -1 to insert points at the end of the given path.src- The source multipath.srcPathIndex- The source path index to copy points from.srcPointIndexFrom- The start point in the source path to start copying from.srcPointCount- The count of points to add.bForward- When FALSE, the points are inserted in reverse order.
-
insertPoints
void insertPoints(int pathIndex, int beforePointIndex, Point2D[] src, int srcPointIndexFrom, int srcPointCount, boolean bForward) Inserts a part of a path from the given array.- Parameters:
pathIndex- The path index in this class to insert points to. Must correspond to an existing path.beforePointIndex- The point index in the given path of this MultiPath before which the vertices need to be inserted. This value must be between 0 and GetPathSize(pathIndex), or -1 to insert points at the end of the given path.src- The source arraysrcPointIndexFrom- The start point in the source array to start copying from.srcPointCount- The count of points to add.bForward- When FALSE, the points are inserted in reverse order.
-
insertPoint
Inserts a point.- Parameters:
pathIndex- The path index in this class to insert the point to. Must correspond to an existing path.beforePointIndex- The point index in the given path of this multipath. This value must be between 0 and GetPathSize(pathIndex), or -1 to insert the point at the end of the given path.pt- The point to be inserted.
-
insertPoint
Inserts a point.- Parameters:
pathIndex- The path index in this class to insert the point to. Must correspond to an existing path.beforePointIndex- The point index in the given path of this multipath. This value must be between 0 and GetPathSize(pathIndex), or -1 to insert the point at the end of the given path.pt- The point to be inserted.
-
removePoint
public void removePoint(int pathIndex, int pointIndex) Removes a point at a given index.- Parameters:
pathIndex- The path from whom to remove the point.pointIndex- The index of the point to be removed.
-
getPathCount
public int getPathCount()Returns the number of paths in this multipath.- Returns:
- The number of paths in this multipath.
-
getPathSize
public int getPathSize(int pathIndex) Returns the number of vertices in a path.- Parameters:
pathIndex- The index of the path to return the number of vertices from.- Returns:
- The number of vertices in a path.
-
getPathStart
public int getPathStart(int pathIndex) Returns the start index of the path.- Parameters:
pathIndex- The index of the path to return the start index from.- Returns:
- The start index of the path.
-
getPathEnd
public int getPathEnd(int pathIndex) Returns the index immediately following the last index of the path.- Parameters:
pathIndex- The index of the path to return the end index from.- Returns:
- Integer index after last index of path
-
getPathIndexFromPointIndex
public int getPathIndexFromPointIndex(int pointIndex) Returns the path index from the point index. This is O(log N) operation.- Parameters:
pointIndex- The index of the point.- Returns:
- The index of the path.
-
startPath
public void startPath(double x, double y) Starts a new path at given coordinates.- Parameters:
x- The X coordinate of the start point.y- The Y coordinate of the start point.
-
startPath
-
startPath
-
startPath
Starts a new path at a point.- Parameters:
point- The point to start the path from.
-
lineTo
public void lineTo(double x, double y) Adds a line segment from the last point to the given end coordinates.- Parameters:
x- The X coordinate to the end point.y- The Y coordinate to the end point.
-
lineTo
-
lineTo
-
lineTo
Adds a Line Segment to the given end point.- Parameters:
endPoint- The end point to which the newly added line segment should point.
-
bezierTo
-
closePathWithLine
public void closePathWithLine()Closes the last path of this multipath with a line segment. The closing segment is a segment that connects the last and the first points of the path. This is a virtual segment. The first point is not duplicated to close the path. Call this method only for polylines. For polygons this method is implicitly called for the Polygon class. -
closePathWithBezier
-
closePathWithArc
void closePathWithArc()Closes last path of the MultiPath with the Arc Segment. -
closeAllPaths
public void closeAllPaths()Closes all open paths by adding an implicit line segment from the end point to the start point. Call this method only for polylines.For polygons this method is implicitly called for the Polygon class. -
isClosedPath
public boolean isClosedPath(int pathIndex) Indicates if the given path is closed (represents a ring). A closed path has a virtual segment that connects the last and the first points of the path. The first point is not duplicated to close the path. Polygons always have all paths closed.- Parameters:
pathIndex- The index of the path to check to be closed.- Returns:
- TRUE if the given path is closed (represents a Ring).
-
isClosedPathInXYPlane
public boolean isClosedPathInXYPlane(int pathIndex) -
hasNonLinearSegments
boolean hasNonLinearSegments(int pathIndex) Returns TRUE if the given path might have non-linear segments. -
addEnvelope
Adds a rectangular closed Path to the MultiPathImpl.- Parameters:
envSrc- is the source rectangle.bReverse- Creates reversed path.
-
addEnvelope
Adds a rectangular closed path to this multipath.- Parameters:
envSrc- Is the envelope to add to this mulitpath.bReverse- Adds the path reversed (counter-clockwise).
-
querySegmentIterator
Returns a SegmentIterator that is set right before the beginning of the multipath. Calling nextPath() will set the iterator to the first path of this multipath.- Returns:
- The SegmentIterator for this mulitpath.
-
querySegmentIteratorAtVertex
Returns a SegmentIterator that is set to a specific vertex of the MultiPath. The call to nextSegment() will return the segment that starts at the vertex. Calling PreviousSegment () will return the segment that starts at the previous vertex.- Parameters:
startVertexIndex- The start index of the SegementIterator.- Returns:
- The SegmentIterator for this mulitpath at the specified vertex.
-
setEmpty
-
applyTransformation
Description copied from class:GeometryApplies 2D affine transformation in XY plane.- Specified by:
applyTransformationin classGeometry- Parameters:
transform- The affine transformation to be applied to this geometry.
-
applyTransformation
Description copied from class:GeometryApplies 3D affine transformation. Adds Z attribute if it is missing.- Specified by:
applyTransformationin classGeometry- Parameters:
transform- The affine transformation to be applied to this geometry.
-
_getImpl
-
hashCode
-
getPointByVal
Description copied from class:MultiVertexGeometryReturns given vertex of the Geometry. The outPoint will have same VertexDescription as this Geometry.- Specified by:
getPointByValin classMultiVertexGeometry
-
setPointByVal
Description copied from class:MultiVertexGeometrySets the vertex at given index of the Geometry.- Specified by:
setPointByValin classMultiVertexGeometry- Parameters:
index- The index of the vertex being changed.point- The Point instance to set given vertex attributes from. The pointSrc can not be empty.
The method throws if the pointSrc is not of the Point type.
The attributes, that are present in the pointSrc and missing in this Geometry, will be added to the Geometry.
The vertex attributes missing in the pointSrc but present in the Geometry will be set to the default values (see VertexDescription::GetDefaultValue).
-
getStateFlag
public int getStateFlag()Description copied from class:GeometryThe stateFlag value changes with changes applied to this geometry. This allows the user to keep track of the geometry's state.- Overrides:
getStateFlagin classGeometry- Returns:
- The state of the geometry.
-
replaceNaNs
public void replaceNaNs(int semantics, double value) Description copied from class:GeometryReplaces NaNs in the attribute with the given value. If the geometry is not empty, it adds the attribute if geometry does not have it yet, and replaces the values. If the geometry is empty, it adds the attribute and does not set any values.- Specified by:
replaceNaNsin classGeometry- Parameters:
semantics- The semantics for which to replace the NaNs.value- The value to replace NaNs with.
-