Package com.esri.core.geometry
Class MultiPathImpl
- java.lang.Object
-
- com.esri.core.geometry.Geometry
-
- com.esri.core.geometry.MultiVertexGeometry
-
- com.esri.core.geometry.MultiVertexGeometryImpl
-
- com.esri.core.geometry.MultiPathImpl
-
- All Implemented Interfaces:
java.io.Serializable
final class MultiPathImpl extends MultiVertexGeometryImpl
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.esri.core.geometry.MultiVertexGeometryImpl
MultiVertexGeometryImpl.DirtyFlags, MultiVertexGeometryImpl.GeometryXSimple
-
Nested classes/interfaces inherited from class com.esri.core.geometry.Geometry
Geometry.GeometryAccelerationDegree, Geometry.GeometryType, Geometry.Type
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static int[]_segmentParamSizesprotected booleanm_bPathStartedprotected booleanm_bPolygonprotected doublem_cachedArea2Dprotected doublem_cachedLength2Dprotected AttributeStreamOfDblm_cachedRingAreas2Dprivate intm_currentPathIndexprotected intm_curveParamwritePointprivate intm_fill_ruleprotected Pointm_moveToPointprotected AttributeStreamOfInt8m_pathFlagsprotected AttributeStreamOfInt32m_pathsprotected AttributeStreamOfInt8m_segmentFlagsprotected AttributeStreamOfInt32m_segmentParamIndexprotected AttributeStreamOfDblm_segmentParams-
Fields inherited from class com.esri.core.geometry.MultiVertexGeometryImpl
m_accelerators, m_envelope, m_flagsMask, m_pointCount, m_reservedPointCount, m_simpleTolerance, m_vertexAttributes
-
Fields inherited from class com.esri.core.geometry.Geometry
m_description, m_touchFlag
-
-
Constructor Summary
Constructors Constructor Description MultiPathImpl(boolean bPolygon)MultiPathImpl(boolean bPolygon, VertexDescription description)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void_beforeNewSegment(int resizeBy)boolean_buildQuadTreeAccelerator(Geometry.GeometryAccelerationDegree d)(package private) boolean_buildQuadTreeForPathsAccelerator(Geometry.GeometryAccelerationDegree degree)boolean_buildRasterizedGeometryAccelerator(double toleranceXY, Geometry.GeometryAccelerationDegree accelDegree)(package private) void_copyToImpl(MultiVertexGeometryImpl dst)\internal CHildren implement this method to copy additional informationprotected void_finishBezierTo()protected void_finishLineTo()java.lang.Object_getImpl()protected void_initPathStartPoint()protected void_initSegmentData(int sz)void_notifyModifiedAllImpl()protected void_updateOGCFlags()void_updateRingAreas2D()void_updateXYImpl(boolean bExact)\internal Updates x, y intervals.protected void_verifyStreamsImpl()\internal Called inside of the VerifyAllStreams to get a child class a chance to do additional verify.voidadd(MultiPathImpl src, boolean bReversePaths)voidaddEnvelope(Envelope2D envSrc, boolean bReverse)adds a rectangular closed Path to the MultiPathImpl.voidaddEnvelope(Envelope envSrc, boolean bReverse)adds a rectangular closed Path to the MultiPathImpl.voidaddPath(MultiPathImpl src, int srcPathIndex, boolean bForward)voidaddPath(Point2D[] _points, int count, boolean bForward)voidaddSegment(Segment segment, boolean bStartNewPath)voidaddSegmentsFromPath(MultiPathImpl src, int src_path_index, int src_segment_from, int src_segment_count, boolean b_start_new_path)voidapplyTransformation(Transformation2D transform)Applies 2D affine transformation in XY plane.voidapplyTransformation(Transformation2D transform, int pathIndex)voidapplyTransformation(Transformation3D transform)Applies 3D affine transformation.voidbezierTo(Point2D controlPoint1, Point2D controlPoint2, Point2D endPoint)adds a Cubic Bezier Segment to the current Path.doublecalculateArea2D()Calculates the area of the geometry.(package private) voidcalculateEnvelope2D(Envelope2D env, boolean bExact)doublecalculateLength2D()Calculates the length of the geometry.doublecalculatePathLength2D(int pathIndex)doublecalculateRingArea2D(int pathIndex)(package private) doublecalculateSubLength2D(int path_index, int from_point_index, int to_point_index)(package private) doublecalculateSubLength2D(int from_path_index, int from_point_index, int to_path_index, int to_point_index)(package private) voidclearDirtyOGCFlags()voidcloseAllPaths()Closes all open curves by adding an implicit line segment from the end point to the start point.voidclosePathWithBezier(Point2D controlPoint1, Point2D controlPoint2)Closes last path of the MultiPathImpl with the Bezier Segment.(package private) voidclosePathWithLine()(package private) voidclosePathWithLine(int path_index)GeometrycreateInstance()Creates an instance of an empty geometry of the same type.booleanequals(java.lang.Object other)longestimateMemorySize()Returns an estimate of this object size in bytes.GeometrygetBoundary()Returns boundary of this geometry.intgetDimension()Returns the topological dimension of the geometry object based on the geometry's type.(package private) intgetFillRule()(package private) intgetHighestPointIndex(int path_index)(package private) intgetOGCPolygonCount()intgetPathCount()intgetPathEnd(int partIndex)AttributeStreamOfInt8getPathFlagsStreamRef()Returns a reference to the AttributeStream of Path flags (PathFlags flags).intgetPathIndexFromPointIndex(int pointIndex)intgetPathSize(int partIndex)intgetPathStart(int partIndex)AttributeStreamOfInt32getPathStreamRef()Returns a reference to the AttributeStream of MultiPathImpl parts (Paths).voidgetSegment(int startVertexIndex, SegmentBuffer segBuffer, boolean bStripAttributes)intgetSegmentCount()Returns total segment count in the MultiPathImpl.intgetSegmentCount(int path_index)static intgetSegmentDataSize(byte flag)Returns the size of the segment data for the given segment type.AttributeStreamOfDblgetSegmentDataStreamRef()bytegetSegmentFlags(int ivertex)AttributeStreamOfInt8getSegmentFlagsStreamRef()Returns a reference to the AttributeStream of Segment flags (SegmentFlags flags).AttributeStreamOfInt32getSegmentIndexStreamRef()Geometry.TypegetType()Returns the geometry type.booleanhasDirtyOGCStartFlags()booleanhasDirtyRingAreas2D()inthashCode()booleanhasNonLinearSegments()booleanhasNonLinearSegments(int ipath)Returns True if the given path might have non-linear segments.voidinsertPath(int pathIndex, MultiPathImpl src, int srcPathIndex, boolean bForward)voidinsertPath(int pathIndex, Point2D[] points, int pointsOffset, int count, boolean bForward)voidinsertPoint(int pathIndex, int beforePointIndex, Point pt)voidinsertPoint(int pathIndex, int beforePointIndex, Point2D pt)voidinsertPoints(int pathIndex, int beforePointIndex, MultiPathImpl src, int srcPathIndex, int srcPointIndexFrom, int srcPointCount, boolean bForward)voidinsertPoints(int pathIndex, int beforePointIndex, Point2D[] src, int srcPointIndexFrom, int srcPointCount, boolean bForward)(package private) voidinterpolateAttributes(int path_index, int from_point_index, int to_point_index)(package private) voidinterpolateAttributes(int from_path_index, int from_point_index, int to_path_index, int to_point_index)(package private) voidinterpolateAttributes_(int semantics, int path_index, int from_point_index, int to_point_index, double sub_length, int ordinate)(package private) voidinterpolateAttributes_(int semantics, int from_path_index, int from_point_index, int to_path_index, int to_point_index, double sub_length, int ordinate)(package private) voidinterpolateAttributesForSemantics(int semantics, int path_index, int from_point_index, int to_point_index)(package private) voidinterpolateAttributesForSemantics(int semantics, int from_path_index, int from_point_index, int to_path_index, int to_point_index)booleanisClosedPath(int ipath)Returns True if the given path is closed (represents a Ring).booleanisClosedPathInXYPlane(int path_index)booleanisEnvelope()Returns True if the class is envelope.booleanisExteriorRing(int ringIndex)Returns True if the ring is an exterior ring.voidlineTo(double x, double y)adds a Line Segment from the last Point to the given endPoint.voidlineTo(Point endPoint)voidlineTo(Point2D endPoint)voidlineTo(Point3D endPoint)voidopenAllPathsAndDuplicateStartVertex()voidopenPath(int pathIndex)voidopenPathAndDuplicateStartVertex(int pathIndex)voidqueryLoosePathEnvelope2D(int path_index, Envelope2D envelope)(package private) voidqueryPathEnvelope2D(int path_index, Envelope2D envelope)SegmentIteratorImplquerySegmentIterator()SegmentIteratorImplquerySegmentIteratorAtVertex(int startVertexIndex)Returns a SegmentIterator that set to a specific vertex of the MultiPathImpl.voidremovePath(int pathIndex)voidremovePoint(int pathIndex, int pointIndex)voidreverseAllPaths()voidreversePath(int pathIndex)voidsetDirtyOGCFlags(boolean bYesNo)voidsetDirtyRingAreas2D(boolean bYesNo)voidsetEmpty()Returns the geometry to its original initialization state by releasing all data referenced by the geometry.(package private) voidsetFillRule(int rule)voidsetPathFlagsStreamRef(AttributeStreamOfInt8 pathFlags)sets a reference to an AttributeStream of Path flags (PathFlags flags).voidsetPathStreamRef(AttributeStreamOfInt32 paths)sets a reference to an AttributeStream of MultiPathImpl paths (Paths).voidsetRingAreasStreamRef(AttributeStreamOfDbl ringAreas)voidstartPath(double x, double y)Starts a new Path at the Point.voidstartPath(Point point)voidstartPath(Point2D point)voidstartPath(Point3D point)-
Methods inherited from class com.esri.core.geometry.MultiVertexGeometryImpl
_assignVertexDescriptionImpl, _attributeStreamIsAllocated, _clearAccelerators, _copyToUnsafe, _getAccelerators, _getShortestDistance, _getSimpleTolerance, _hasDirtyFlag, _interpolateTwoVertices, _resizeImpl, _setDirtyFlag, _setEmptyImpl, _updateAllDirtyIntervals, _updateEnvelope, _updateEnvelope, _updateLooseEnvelope, _updateLooseEnvelope, _verifyAllStreams, _verifyAllStreamsImpl, copyTo, getAttributeAsDbl, getAttributeAsInt, getAttributeStreamRef, getDescriptionImpl, getIsSimple, getPoint, getPointByVal, getPointCount, getXY, getXY, getXYZ, isEmpty, isEmptyImpl, notifyModified, queryCoordinates, queryCoordinates, queryCoordinates, queryCoordinates, QueryCoordinates, queryEnvelope, queryEnvelope2D, queryEnvelope3D, queryInterval, queryLooseEnvelope2D, queryLooseEnvelope3D, replaceNaNs, setAttribute, setAttribute, setAttributeStreamRef, setEnvelope, setIsSimple, setPoint, setPointByVal, setXY, setXY, setXYZ, throwIfEmpty, toString
-
Methods inherited from class com.esri.core.geometry.MultiVertexGeometry
getCoordinates2D, getCoordinates3D, getPoint
-
Methods inherited from class com.esri.core.geometry.Geometry
_clone, _touch, addAttribute, addID, addM, addZ, assignVertexDescription, copy, dropAllAttributes, dropAttribute, estimateMemorySize, getDescription, getDimensionFromType, getStateFlag, hasAttribute, hasID, hasM, hasZ, isArea, isLinear, isMultiPath, isMultiVertex, isPoint, isSegment, mergeVertexDescription, vertex_count, writeReplace
-
-
-
-
Field Detail
-
m_bPolygon
protected boolean m_bPolygon
-
m_moveToPoint
protected Point m_moveToPoint
-
m_cachedLength2D
protected double m_cachedLength2D
-
m_cachedArea2D
protected double m_cachedArea2D
-
m_cachedRingAreas2D
protected AttributeStreamOfDbl m_cachedRingAreas2D
-
m_bPathStarted
protected boolean m_bPathStarted
-
m_paths
protected AttributeStreamOfInt32 m_paths
-
m_pathFlags
protected AttributeStreamOfInt8 m_pathFlags
-
m_segmentFlags
protected AttributeStreamOfInt8 m_segmentFlags
-
m_segmentParamIndex
protected AttributeStreamOfInt32 m_segmentParamIndex
-
m_segmentParams
protected AttributeStreamOfDbl m_segmentParams
-
m_curveParamwritePoint
protected int m_curveParamwritePoint
-
m_currentPathIndex
private int m_currentPathIndex
-
m_fill_rule
private int m_fill_rule
-
_segmentParamSizes
static int[] _segmentParamSizes
-
-
Constructor Detail
-
MultiPathImpl
public MultiPathImpl(boolean bPolygon)
-
MultiPathImpl
public MultiPathImpl(boolean bPolygon, VertexDescription description)
-
-
Method Detail
-
estimateMemorySize
public long estimateMemorySize()
Description copied from class:GeometryReturns an estimate of this object size in bytes.This estimate doesn't include the size of the
VertexDescriptionobject because instances ofVertexDescriptionare shared among geometry objects.- Specified by:
estimateMemorySizein classGeometry- Returns:
- Returns an estimate of this object size in bytes.
-
hasNonLinearSegments
public boolean hasNonLinearSegments()
-
_initPathStartPoint
protected void _initPathStartPoint()
-
startPath
public void startPath(double x, double y)Starts a new Path at the Point.
-
startPath
public void startPath(Point2D point)
-
startPath
public void startPath(Point3D point)
-
startPath
public void startPath(Point point)
-
_beforeNewSegment
protected void _beforeNewSegment(int resizeBy)
-
_finishLineTo
protected void _finishLineTo()
-
lineTo
public void lineTo(double x, double y)adds a Line Segment from the last Point to the given endPoint.
-
lineTo
public void lineTo(Point2D endPoint)
-
lineTo
public void lineTo(Point3D endPoint)
-
lineTo
public void lineTo(Point endPoint)
-
_initSegmentData
protected void _initSegmentData(int sz)
-
_finishBezierTo
protected void _finishBezierTo()
-
bezierTo
public void bezierTo(Point2D controlPoint1, Point2D controlPoint2, Point2D endPoint)
adds a Cubic Bezier Segment to the current Path. The Bezier Segment connects the current last Point and the given endPoint.
-
openPath
public void openPath(int pathIndex)
-
openPathAndDuplicateStartVertex
public void openPathAndDuplicateStartVertex(int pathIndex)
-
openAllPathsAndDuplicateStartVertex
public void openAllPathsAndDuplicateStartVertex()
-
closePathWithLine
void closePathWithLine(int path_index)
-
closePathWithLine
void closePathWithLine()
-
closeAllPaths
public void closeAllPaths()
Closes all open curves by adding an implicit line segment from the end point to the start point.
-
getSegmentDataSize
public static int getSegmentDataSize(byte flag)
Returns the size of the segment data for the given segment type.- Parameters:
flag- is one of the segment flags from the SegmentFlags enum.- Returns:
- the size of the segment params as the number of doubles.
-
closePathWithBezier
public void closePathWithBezier(Point2D controlPoint1, Point2D controlPoint2)
Closes last path of the MultiPathImpl with the Bezier Segment. The start point of the Bezier is the last point of the path and the last point of the bezier is the first point of the path.
-
isClosedPath
public boolean isClosedPath(int ipath)
Returns True if the given path is closed (represents a Ring).
-
isClosedPathInXYPlane
public boolean isClosedPathInXYPlane(int path_index)
-
hasNonLinearSegments
public boolean hasNonLinearSegments(int ipath)
Returns True if the given path might have non-linear segments.
-
addSegment
public void addSegment(Segment segment, boolean bStartNewPath)
-
addEnvelope
public void addEnvelope(Envelope2D envSrc, boolean bReverse)
adds a rectangular closed Path to the MultiPathImpl.- Parameters:
envSrc- is the source rectangle.bReverse- Creates reversed path.
-
addEnvelope
public void addEnvelope(Envelope envSrc, boolean bReverse)
adds a rectangular closed Path to the MultiPathImpl.- Parameters:
envSrc- is the source rectangle.bReverse- Creates reversed path.
-
add
public void add(MultiPathImpl src, boolean bReversePaths)
-
addPath
public void addPath(MultiPathImpl src, int srcPathIndex, boolean bForward)
-
addPath
public void addPath(Point2D[] _points, int count, boolean bForward)
-
addSegmentsFromPath
public void addSegmentsFromPath(MultiPathImpl src, int src_path_index, int src_segment_from, int src_segment_count, boolean b_start_new_path)
-
reverseAllPaths
public void reverseAllPaths()
-
reversePath
public void reversePath(int pathIndex)
-
removePath
public void removePath(int pathIndex)
-
insertPath
public void insertPath(int pathIndex, MultiPathImpl src, int srcPathIndex, boolean bForward)
-
insertPath
public void insertPath(int pathIndex, Point2D[] points, int pointsOffset, int count, boolean bForward)
-
insertPoints
public void insertPoints(int pathIndex, int beforePointIndex, MultiPathImpl src, int srcPathIndex, int srcPointIndexFrom, int srcPointCount, boolean bForward)
-
insertPoints
public void insertPoints(int pathIndex, int beforePointIndex, Point2D[] src, int srcPointIndexFrom, int srcPointCount, boolean bForward)
-
insertPoint
public void insertPoint(int pathIndex, int beforePointIndex, Point2D pt)
-
insertPoint
public void insertPoint(int pathIndex, int beforePointIndex, Point pt)
-
removePoint
public void removePoint(int pathIndex, int pointIndex)
-
calculatePathLength2D
public double calculatePathLength2D(int pathIndex)
-
calculateSubLength2D
double calculateSubLength2D(int from_path_index, int from_point_index, int to_path_index, int to_point_index)
-
calculateSubLength2D
double calculateSubLength2D(int path_index, int from_point_index, int to_point_index)
-
getBoundary
public Geometry 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.
-
interpolateAttributes
void interpolateAttributes(int from_path_index, int from_point_index, int to_path_index, int to_point_index)
-
interpolateAttributesForSemantics
void interpolateAttributesForSemantics(int semantics, int from_path_index, int from_point_index, int to_path_index, int to_point_index)
-
interpolateAttributes
void interpolateAttributes(int path_index, int from_point_index, int to_point_index)
-
interpolateAttributesForSemantics
void interpolateAttributesForSemantics(int semantics, int path_index, int from_point_index, int to_point_index)
-
interpolateAttributes_
void interpolateAttributes_(int semantics, int from_path_index, int from_point_index, int to_path_index, int to_point_index, double sub_length, int ordinate)
-
interpolateAttributes_
void interpolateAttributes_(int semantics, int path_index, int from_point_index, int to_point_index, double sub_length, int ordinate)
-
setEmpty
public void setEmpty()
Description copied from class:GeometryReturns the geometry to its original initialization state by releasing all data referenced by the geometry.
-
applyTransformation
public void applyTransformation(Transformation2D transform)
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
public void applyTransformation(Transformation2D transform, int pathIndex)
-
applyTransformation
public void applyTransformation(Transformation3D transform)
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.
-
_verifyStreamsImpl
protected void _verifyStreamsImpl()
Description copied from class:MultiVertexGeometryImpl\internal Called inside of the VerifyAllStreams to get a child class a chance to do additional verify.- Specified by:
_verifyStreamsImplin classMultiVertexGeometryImpl
-
_copyToImpl
void _copyToImpl(MultiVertexGeometryImpl dst)
Description copied from class:MultiVertexGeometryImpl\internal CHildren implement this method to copy additional information- Specified by:
_copyToImplin classMultiVertexGeometryImpl
-
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.
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equalsin classMultiVertexGeometryImpl
-
querySegmentIteratorAtVertex
public SegmentIteratorImpl querySegmentIteratorAtVertex(int startVertexIndex)
Returns a SegmentIterator that set to a specific vertex of the MultiPathImpl. The call to NextSegment will return the segment that starts at the vertex. Call to PreviousSegment will return the segment that starts at the previous vertex.
-
querySegmentIterator
public SegmentIteratorImpl querySegmentIterator()
-
_updateXYImpl
public void _updateXYImpl(boolean bExact)
Description copied from class:MultiVertexGeometryImpl\internal Updates x, y intervals.- Overrides:
_updateXYImplin classMultiVertexGeometryImpl
-
calculateEnvelope2D
void calculateEnvelope2D(Envelope2D env, boolean bExact)
- Overrides:
calculateEnvelope2Din classMultiVertexGeometryImpl
-
_notifyModifiedAllImpl
public void _notifyModifiedAllImpl()
- Specified by:
_notifyModifiedAllImplin classMultiVertexGeometryImpl
-
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.
-
isExteriorRing
public boolean isExteriorRing(int ringIndex)
Returns True if the ring is an exterior ring. Valid only for simple polygons.
-
calculateRingArea2D
public double calculateRingArea2D(int pathIndex)
-
_updateRingAreas2D
public void _updateRingAreas2D()
-
getOGCPolygonCount
int getOGCPolygonCount()
-
_updateOGCFlags
protected void _updateOGCFlags()
-
getPathIndexFromPointIndex
public int getPathIndexFromPointIndex(int pointIndex)
-
getHighestPointIndex
int getHighestPointIndex(int path_index)
-
getSegmentCount
public int getSegmentCount()
Returns total segment count in the MultiPathImpl.
-
getSegmentCount
public int getSegmentCount(int path_index)
-
createInstance
public Geometry createInstance()
Description copied from class:GeometryCreates an instance of an empty geometry of the same type.- Specified by:
createInstancein classGeometry- Returns:
- The new instance.
-
getDimension
public int getDimension()
Description copied from class:GeometryReturns the topological dimension of the geometry object based on the geometry's type.Returns 0 for point and multipoint.
Returns 1 for lines and polylines.
Returns 2 for polygons and envelopes
Returns 3 for objects with volume
- Specified by:
getDimensionin classGeometry- Returns:
- Returns the integer value of the dimension of geometry.
-
getType
public Geometry.Type getType()
Description copied from class:GeometryReturns the geometry type.
-
isEnvelope
public boolean isEnvelope()
Returns True if the class is envelope. THis is not an exact method. Only addEnvelope makes this true.
-
getPathStreamRef
public AttributeStreamOfInt32 getPathStreamRef()
Returns a reference to the AttributeStream of MultiPathImpl parts (Paths). For the non empty MultiPathImpl, that stream contains start points of the MultiPathImpl curves. In addition, the last element is the total point count. The number of vertices in a given part is parts[i + 1] - parts[i].
-
setPathStreamRef
public void setPathStreamRef(AttributeStreamOfInt32 paths)
sets a reference to an AttributeStream of MultiPathImpl paths (Paths).
-
getSegmentFlagsStreamRef
public AttributeStreamOfInt8 getSegmentFlagsStreamRef()
Returns a reference to the AttributeStream of Segment flags (SegmentFlags flags). Can be NULL when no non-linear segments are present. Segment flags indicate what kind of segment originates (starts) on the given point. The last vertices of open Path parts has enumNone flag.
-
getPathFlagsStreamRef
public AttributeStreamOfInt8 getPathFlagsStreamRef()
Returns a reference to the AttributeStream of Path flags (PathFlags flags). Each start point of a path has a flag set to indicate if the Path is open or closed.
-
setPathFlagsStreamRef
public void setPathFlagsStreamRef(AttributeStreamOfInt8 pathFlags)
sets a reference to an AttributeStream of Path flags (PathFlags flags).
-
getSegmentIndexStreamRef
public AttributeStreamOfInt32 getSegmentIndexStreamRef()
-
getSegmentDataStreamRef
public AttributeStreamOfDbl getSegmentDataStreamRef()
-
getPathCount
public int getPathCount()
-
getPathEnd
public int getPathEnd(int partIndex)
-
getPathSize
public int getPathSize(int partIndex)
-
getPathStart
public int getPathStart(int partIndex)
-
setDirtyOGCFlags
public void setDirtyOGCFlags(boolean bYesNo)
-
hasDirtyOGCStartFlags
public boolean hasDirtyOGCStartFlags()
-
setDirtyRingAreas2D
public void setDirtyRingAreas2D(boolean bYesNo)
-
hasDirtyRingAreas2D
public boolean hasDirtyRingAreas2D()
-
setRingAreasStreamRef
public void setRingAreasStreamRef(AttributeStreamOfDbl ringAreas)
-
_buildRasterizedGeometryAccelerator
public boolean _buildRasterizedGeometryAccelerator(double toleranceXY, Geometry.GeometryAccelerationDegree accelDegree)- Specified by:
_buildRasterizedGeometryAcceleratorin classMultiVertexGeometryImpl
-
hashCode
public int hashCode()
- Overrides:
hashCodein classMultiVertexGeometryImpl
-
getSegmentFlags
public byte getSegmentFlags(int ivertex)
-
getSegment
public void getSegment(int startVertexIndex, SegmentBuffer segBuffer, boolean bStripAttributes)
-
queryPathEnvelope2D
void queryPathEnvelope2D(int path_index, Envelope2D envelope)
-
queryLoosePathEnvelope2D
public void queryLoosePathEnvelope2D(int path_index, Envelope2D envelope)
-
_buildQuadTreeAccelerator
public boolean _buildQuadTreeAccelerator(Geometry.GeometryAccelerationDegree d)
- Specified by:
_buildQuadTreeAcceleratorin classMultiVertexGeometryImpl
-
_buildQuadTreeForPathsAccelerator
boolean _buildQuadTreeForPathsAccelerator(Geometry.GeometryAccelerationDegree degree)
-
setFillRule
void setFillRule(int rule)
-
getFillRule
int getFillRule()
-
clearDirtyOGCFlags
void clearDirtyOGCFlags()
-
-