Package com.esri.core.geometry
Class TopoGraph
- java.lang.Object
-
- com.esri.core.geometry.TopoGraph
-
final class TopoGraph extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
TopoGraph.ClusterSweepMonikerComparator
(package private) static interface
TopoGraph.EnumInputMode
(package private) static class
TopoGraph.PlaneSweepComparator
(package private) static class
TopoGraph.TopoGraphAngleComparer
-
Field Summary
-
Constructor Summary
Constructors Constructor Description TopoGraph()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
addClusterToExteriorChain_(int chain, int cluster)
(package private) void
buildChains_(int inputMode)
(package private) void
check_dirty_planesweep(double tolerance)
(package private) boolean
check_structure_after_dirty_sweep_()
(package private) int
compareEdgeAngles_(int edge1, int edge2)
(package private) int
compareEdgeAnglesForPair_(int edge1, int edge2)
(package private) void
createHalfEdges_(int inputMode, AttributeStreamOfInt32 sorted_vertices)
(package private) int
createUserIndexForChains()
(package private) int
createUserIndexForClusters()
(package private) int
createUserIndexForHalfEdges()
(package private) int
deleteChain_(int chain)
(package private) void
deleteEdgeImpl_(int half_edge)
(package private) int
deleteEdgeInternal_(int half_edge)
(package private) void
deleteEdgesBreakFaces_(AttributeStreamOfInt32 edgesToDelete)
(package private) void
deleteUserIndexForChains(int userIndex)
(package private) void
deleteUserIndexForClusters(int userIndex)
(package private) void
deleteUserIndexForHalfEdges(int userIndex)
(package private) boolean
dirty_check_failed()
(package private) boolean
doesClusterBelongToAPolygonBoundary(int cluster, int polygonId)
(package private) boolean
doesClusterBelongToAPolygonExterior(int cluster, int polygonId)
(package private) boolean
doesClusterBelongToAPolygonInterior(int cluster, int polygonId)
(package private) boolean
doesHalfEdgeBelongToAPolygonBoundary(int half_edge, int polygonId)
(package private) boolean
doesHalfEdgeBelongToAPolygonExterior(int half_edge, int polygonId)
(package private) boolean
doesHalfEdgeBelongToAPolygonInterior(int half_edge, int polygonId)
(package private) boolean
doesHalfEdgeBelongToAPolylineExterior(int half_edge, int polylineId)
(package private) boolean
doesHalfEdgeBelongToAPolylineInterior(int half_edge, int polylineId)
(package private) double
getChainArea(int chain)
(package private) int
getChainFirstIsland(int chain)
(package private) int
getChainHalfEdge(int chain)
(package private) int
getChainIndex_(int chain)
(package private) int
getChainNext(int chain)
(package private) int
getChainNextInParent(int chain)
(package private) int
getChainParent(int chain)
(package private) int
getChainParentage(int chain)
(package private) double
getChainPerimeter(int chain)
(package private) int
getChainTopMostEdge_(int chain)
(package private) int
getChainUserIndex(int chain, int index)
(package private) int
getClusterChain(int cluster)
(package private) int
getClusterFromVertex(int vertex)
(package private) int
getClusterHalfEdge(int cluster)
(package private) int
getClusterIndex_(int cluster)
(package private) int
getClusterParentage(int cluster)
(package private) int
getClusterUserIndex(int cluster, int index)
(package private) int
getClusterVertexIndex_(int cluster)
(package private) int
getClusterVertexIterator(int cluster)
(package private) int
getFirstChain()
(package private) int
getFirstCluster()
private int
getFirstUnvisitedHalfEdgeOnCluster_(int cluster, int hintEdge, int vistiedEdgesIndex)
(package private) int
getGeometryID(int geometry)
(package private) int
getHalfEdgeChain(int half_edge)
(package private) int
getHalfEdgeConnector(int clusterFrom, int clusterTo)
(package private) int
getHalfEdgeFaceParentage(int half_edge)
(package private) int
getHalfEdgeFromVertex(int vertex)
(package private) void
getHalfEdgeFromXY(int half_edge, Point2D pt)
(package private) int
getHalfEdgeIndex_(int he)
(package private) int
getHalfEdgeNext(int half_edge)
(package private) int
getHalfEdgeOrigin(int half_edge)
(package private) int
getHalfEdgeParentage(int half_edge)
(package private) int
getHalfEdgeParentageMask_(int half_edge)
(package private) int
getHalfEdgePrev(int half_edge)
(package private) int
getHalfEdgeTo(int half_edge)
(package private) void
getHalfEdgeToXY(int half_edge, Point2D pt)
(package private) int
getHalfEdgeTwin(int half_edge)
(package private) int
getHalfEdgeUserIndex(int half_edge, int index)
(package private) int
getHalfEdgeVertexIterator(int half_edge)
(package private) int
getLeftSkipPolylines_(Treap aet, int treeNode)
(package private) int
getNextCluster(int cluster)
(package private) int
getPrevCluster(int cluster)
(package private) EditShape
getShape()
(package private) int
getVertexFromVertexIterator(int vertexIterator)
(package private) void
getXY(int cluster, Point2D pt)
(package private) int
incrementVertexIterator(int vertexIterator)
(package private) void
mergeVertexListsOfEdges_(int eDst, int eSrc)
(package private) int
newChain_()
(package private) int
newCluster_()
(package private) int
newHalfEdgePair_()
(package private) void
planeSweepParentage_(int inputMode, ProgressTracker progress_tracker)
(package private) void
planeSweepParentagePropagateParentage_(Treap aet, int treeNode, int inputMode)
(package private) void
propagate_parentage_alternate_(Treap aet, int treeNode, int edge, int leftEdge, int twinEdge, int edgeChain, int edgeChainParent, int twinHalfEdgeChain)
(package private) void
propagate_parentage_build_graph_(Treap aet, int treeNode, int edge, int leftEdge, int edgeChain, int edgeChainParent, int twinHalfEdgeChain)
(package private) void
propagate_parentage_winding_(Treap aet, int treeNode, int edge, int leftEdge, int twinEdge, int edgeChain, int edgeChainParent, int twinHalfEdgeChain)
(package private) void
querySegmentXY(int half_edge, SegmentBuffer outBuffer)
(package private) void
removeShape()
(package private) boolean
removeSpikes_()
(package private) void
setAndSimplifyEditShapeAlternate(EditShape shape, int geometry, ProgressTracker progressTracker)
(package private) void
setAndSimplifyEditShapeWinding(EditShape shape, int geometry, ProgressTracker progressTracker)
(package private) void
setChainArea_(int chain, double area)
(package private) void
setChainFirstIsland_(int chain, int islandChain)
(package private) void
setChainHalfEdge_(int chain, int half_edge)
(package private) void
setChainNext_(int chain, int next)
(package private) void
setChainNextInParent_(int chain, int nextInParent)
(package private) void
setChainParent_(int chain, int parentChain)
(package private) void
setChainParentage_(int chain, int parentage)
(package private) void
setChainPerimeter_(int chain, double perimeter)
(package private) void
setChainPrev_(int chain, int prev)
(package private) void
setChainUserIndex(int chain, int index, int value)
(package private) void
setClusterChain_(int cluster, int chain)
(package private) void
setClusterHalfEdge_(int cluster, int half_edge)
(package private) void
setClusterParentage_(int cluster, int parentage)
(package private) void
setClusterUserIndex(int cluster, int index, int value)
(package private) void
setClusterVertexIndex_(int cluster, int index)
(package private) void
setClusterVertexIterator_(int cluster, int verticeList)
(package private) void
setEditShape(EditShape shape, ProgressTracker progress_tracker)
(package private) void
setEditShape(EditShape shape, ProgressTracker progress_tracker, boolean bBuildChains)
(package private) void
setEditShapeImpl_(EditShape shape, int inputMode, AttributeStreamOfInt32 editShapeGeometries, ProgressTracker progress_tracker, boolean bBuildChains)
(package private) void
setHalfEdgeChain_(int half_edge, int chain)
(package private) void
setHalfEdgeNext_(int half_edge, int nextHalfEdge)
(package private) void
setHalfEdgeOrigin_(int half_edge, int cluster)
(package private) void
setHalfEdgeParentage_(int half_edge, int parentageMask)
(package private) void
setHalfEdgePrev_(int half_edge, int prevHalfEdge)
(package private) void
setHalfEdgeTwin_(int half_edge, int twinHalfEdge)
(package private) void
setHalfEdgeUserIndex(int half_edge, int index, int value)
(package private) void
setHalfEdgeVertexIterator_(int half_edge, int vertexIterator)
(package private) void
setNextCluster_(int cluster, int nextCluster)
(package private) void
setPrevCluster_(int cluster, int nextCluster)
(package private) void
simplify_(int inputMode)
(package private) void
simplifyAlternate_()
(package private) void
simplifyWinding_()
(package private) void
sortHalfEdgesByAngle_(int inputMode)
(package private) boolean
tryOptimizedInsertion_(Treap aet, int treeNodeIndex, AttributeStreamOfInt32 new_edges, int cluster, int firstHalfEdge)
(package private) boolean
trySetChainParentFromTwin_(int chainToSet, int twinChain)
(package private) void
updateChainAreaAndPerimeter_(int chain)
(package private) void
updateVertexToHalfEdgeConnection_(int half_edge, boolean bClear)
(package private) void
updateVertexToHalfEdgeConnectionHelper_(int half_edge, boolean bClear)
-
-
-
Field Detail
-
m_shape
EditShape m_shape
-
m_clusterData
StridedIndexTypeCollection m_clusterData
-
m_clusterVertices
StridedIndexTypeCollection m_clusterVertices
-
m_firstCluster
int m_firstCluster
-
m_lastCluster
int m_lastCluster
-
m_halfEdgeData
StridedIndexTypeCollection m_halfEdgeData
-
m_chainData
StridedIndexTypeCollection m_chainData
-
m_chainAreas
AttributeStreamOfDbl m_chainAreas
-
m_chainPerimeters
AttributeStreamOfDbl m_chainPerimeters
-
c_edgeParentageMask
final int c_edgeParentageMask
-
c_edgeBitMask
final int c_edgeBitMask
-
m_universeChain
int m_universeChain
-
m_edgeIndices
java.util.ArrayList<AttributeStreamOfInt32> m_edgeIndices
-
m_clusterIndices
java.util.ArrayList<AttributeStreamOfInt32> m_clusterIndices
-
m_chainIndices
java.util.ArrayList<AttributeStreamOfInt32> m_chainIndices
-
m_geometryIDIndex
int m_geometryIDIndex
-
m_clusterIndex
int m_clusterIndex
-
m_halfEdgeIndex
int m_halfEdgeIndex
-
m_tmpHalfEdgeParentageIndex
int m_tmpHalfEdgeParentageIndex
-
m_tmpHalfEdgeWindingNumberIndex
int m_tmpHalfEdgeWindingNumberIndex
-
m_tmpHalfEdgeOddEvenNumberIndex
int m_tmpHalfEdgeOddEvenNumberIndex
-
m_universe_geomID
int m_universe_geomID
-
m_buildChains
boolean m_buildChains
-
m_dirty_check_failed
private boolean m_dirty_check_failed
-
m_check_dirty_planesweep_tolerance
private double m_check_dirty_planesweep_tolerance
-
m_non_simple_result
NonSimpleResult m_non_simple_result
-
m_pointCount
int m_pointCount
-
-
Method Detail
-
check_dirty_planesweep
void check_dirty_planesweep(double tolerance)
-
dirty_check_failed
boolean dirty_check_failed()
-
newCluster_
int newCluster_()
-
newHalfEdgePair_
int newHalfEdgePair_()
-
newChain_
int newChain_()
-
deleteChain_
int deleteChain_(int chain)
-
getClusterIndex_
int getClusterIndex_(int cluster)
-
setClusterVertexIterator_
void setClusterVertexIterator_(int cluster, int verticeList)
-
setClusterHalfEdge_
void setClusterHalfEdge_(int cluster, int half_edge)
-
setClusterParentage_
void setClusterParentage_(int cluster, int parentage)
-
setPrevCluster_
void setPrevCluster_(int cluster, int nextCluster)
-
setNextCluster_
void setNextCluster_(int cluster, int nextCluster)
-
setClusterVertexIndex_
void setClusterVertexIndex_(int cluster, int index)
-
getClusterVertexIndex_
int getClusterVertexIndex_(int cluster)
-
setClusterChain_
void setClusterChain_(int cluster, int chain)
-
addClusterToExteriorChain_
void addClusterToExteriorChain_(int chain, int cluster)
-
getHalfEdgeIndex_
int getHalfEdgeIndex_(int he)
-
setHalfEdgeOrigin_
void setHalfEdgeOrigin_(int half_edge, int cluster)
-
setHalfEdgeTwin_
void setHalfEdgeTwin_(int half_edge, int twinHalfEdge)
-
setHalfEdgePrev_
void setHalfEdgePrev_(int half_edge, int prevHalfEdge)
-
setHalfEdgeNext_
void setHalfEdgeNext_(int half_edge, int nextHalfEdge)
-
setHalfEdgeChain_
void setHalfEdgeChain_(int half_edge, int chain)
-
setHalfEdgeParentage_
void setHalfEdgeParentage_(int half_edge, int parentageMask)
-
getHalfEdgeParentageMask_
int getHalfEdgeParentageMask_(int half_edge)
-
setHalfEdgeVertexIterator_
void setHalfEdgeVertexIterator_(int half_edge, int vertexIterator)
-
updateVertexToHalfEdgeConnectionHelper_
void updateVertexToHalfEdgeConnectionHelper_(int half_edge, boolean bClear)
-
updateVertexToHalfEdgeConnection_
void updateVertexToHalfEdgeConnection_(int half_edge, boolean bClear)
-
getChainIndex_
int getChainIndex_(int chain)
-
setChainHalfEdge_
void setChainHalfEdge_(int chain, int half_edge)
-
setChainParentage_
void setChainParentage_(int chain, int parentage)
-
setChainParent_
void setChainParent_(int chain, int parentChain)
-
setChainFirstIsland_
void setChainFirstIsland_(int chain, int islandChain)
-
setChainNextInParent_
void setChainNextInParent_(int chain, int nextInParent)
-
setChainPrev_
void setChainPrev_(int chain, int prev)
-
setChainNext_
void setChainNext_(int chain, int next)
-
setChainArea_
void setChainArea_(int chain, double area)
-
setChainPerimeter_
void setChainPerimeter_(int chain, double perimeter)
-
updateChainAreaAndPerimeter_
void updateChainAreaAndPerimeter_(int chain)
-
getChainTopMostEdge_
int getChainTopMostEdge_(int chain)
-
planeSweepParentage_
void planeSweepParentage_(int inputMode, ProgressTracker progress_tracker)
-
planeSweepParentagePropagateParentage_
void planeSweepParentagePropagateParentage_(Treap aet, int treeNode, int inputMode)
-
propagate_parentage_build_graph_
void propagate_parentage_build_graph_(Treap aet, int treeNode, int edge, int leftEdge, int edgeChain, int edgeChainParent, int twinHalfEdgeChain)
-
propagate_parentage_winding_
void propagate_parentage_winding_(Treap aet, int treeNode, int edge, int leftEdge, int twinEdge, int edgeChain, int edgeChainParent, int twinHalfEdgeChain)
-
propagate_parentage_alternate_
void propagate_parentage_alternate_(Treap aet, int treeNode, int edge, int leftEdge, int twinEdge, int edgeChain, int edgeChainParent, int twinHalfEdgeChain)
-
tryOptimizedInsertion_
boolean tryOptimizedInsertion_(Treap aet, int treeNodeIndex, AttributeStreamOfInt32 new_edges, int cluster, int firstHalfEdge)
-
trySetChainParentFromTwin_
boolean trySetChainParentFromTwin_(int chainToSet, int twinChain)
-
createHalfEdges_
void createHalfEdges_(int inputMode, AttributeStreamOfInt32 sorted_vertices)
-
mergeVertexListsOfEdges_
void mergeVertexListsOfEdges_(int eDst, int eSrc)
-
sortHalfEdgesByAngle_
void sortHalfEdgesByAngle_(int inputMode)
-
buildChains_
void buildChains_(int inputMode)
-
simplify_
void simplify_(int inputMode)
-
simplifyAlternate_
void simplifyAlternate_()
-
simplifyWinding_
void simplifyWinding_()
-
getFirstUnvisitedHalfEdgeOnCluster_
private int getFirstUnvisitedHalfEdgeOnCluster_(int cluster, int hintEdge, int vistiedEdgesIndex)
-
removeSpikes_
boolean removeSpikes_()
-
setEditShapeImpl_
void setEditShapeImpl_(EditShape shape, int inputMode, AttributeStreamOfInt32 editShapeGeometries, ProgressTracker progress_tracker, boolean bBuildChains)
-
deleteEdgeImpl_
void deleteEdgeImpl_(int half_edge)
-
getLeftSkipPolylines_
int getLeftSkipPolylines_(Treap aet, int treeNode)
-
getShape
EditShape getShape()
-
setEditShape
void setEditShape(EditShape shape, ProgressTracker progress_tracker)
-
setEditShape
void setEditShape(EditShape shape, ProgressTracker progress_tracker, boolean bBuildChains)
-
setAndSimplifyEditShapeAlternate
void setAndSimplifyEditShapeAlternate(EditShape shape, int geometry, ProgressTracker progressTracker)
-
setAndSimplifyEditShapeWinding
void setAndSimplifyEditShapeWinding(EditShape shape, int geometry, ProgressTracker progressTracker)
-
removeShape
void removeShape()
-
getClusterHalfEdge
int getClusterHalfEdge(int cluster)
-
getXY
void getXY(int cluster, Point2D pt)
-
getClusterParentage
int getClusterParentage(int cluster)
-
getFirstCluster
int getFirstCluster()
-
getPrevCluster
int getPrevCluster(int cluster)
-
getNextCluster
int getNextCluster(int cluster)
-
getClusterChain
int getClusterChain(int cluster)
-
getClusterVertexIterator
int getClusterVertexIterator(int cluster)
-
incrementVertexIterator
int incrementVertexIterator(int vertexIterator)
-
getVertexFromVertexIterator
int getVertexFromVertexIterator(int vertexIterator)
-
getClusterUserIndex
int getClusterUserIndex(int cluster, int index)
-
setClusterUserIndex
void setClusterUserIndex(int cluster, int index, int value)
-
createUserIndexForClusters
int createUserIndexForClusters()
-
deleteUserIndexForClusters
void deleteUserIndexForClusters(int userIndex)
-
getHalfEdgeOrigin
int getHalfEdgeOrigin(int half_edge)
-
getHalfEdgeTo
int getHalfEdgeTo(int half_edge)
-
getHalfEdgeTwin
int getHalfEdgeTwin(int half_edge)
-
getHalfEdgePrev
int getHalfEdgePrev(int half_edge)
-
getHalfEdgeNext
int getHalfEdgeNext(int half_edge)
-
getHalfEdgeChain
int getHalfEdgeChain(int half_edge)
-
getHalfEdgeFaceParentage
int getHalfEdgeFaceParentage(int half_edge)
-
getHalfEdgeVertexIterator
int getHalfEdgeVertexIterator(int half_edge)
-
getHalfEdgeFromXY
void getHalfEdgeFromXY(int half_edge, Point2D pt)
-
getHalfEdgeToXY
void getHalfEdgeToXY(int half_edge, Point2D pt)
-
getHalfEdgeParentage
int getHalfEdgeParentage(int half_edge)
-
getHalfEdgeUserIndex
int getHalfEdgeUserIndex(int half_edge, int index)
-
setHalfEdgeUserIndex
void setHalfEdgeUserIndex(int half_edge, int index, int value)
-
createUserIndexForHalfEdges
int createUserIndexForHalfEdges()
-
deleteUserIndexForHalfEdges
void deleteUserIndexForHalfEdges(int userIndex)
-
deleteEdgeInternal_
int deleteEdgeInternal_(int half_edge)
-
deleteEdgesBreakFaces_
void deleteEdgesBreakFaces_(AttributeStreamOfInt32 edgesToDelete)
-
doesHalfEdgeBelongToAPolygonInterior
boolean doesHalfEdgeBelongToAPolygonInterior(int half_edge, int polygonId)
-
doesHalfEdgeBelongToAPolygonExterior
boolean doesHalfEdgeBelongToAPolygonExterior(int half_edge, int polygonId)
-
doesHalfEdgeBelongToAPolygonBoundary
boolean doesHalfEdgeBelongToAPolygonBoundary(int half_edge, int polygonId)
-
doesHalfEdgeBelongToAPolylineInterior
boolean doesHalfEdgeBelongToAPolylineInterior(int half_edge, int polylineId)
-
doesHalfEdgeBelongToAPolylineExterior
boolean doesHalfEdgeBelongToAPolylineExterior(int half_edge, int polylineId)
-
doesClusterBelongToAPolygonInterior
boolean doesClusterBelongToAPolygonInterior(int cluster, int polygonId)
-
doesClusterBelongToAPolygonExterior
boolean doesClusterBelongToAPolygonExterior(int cluster, int polygonId)
-
doesClusterBelongToAPolygonBoundary
boolean doesClusterBelongToAPolygonBoundary(int cluster, int polygonId)
-
getFirstChain
int getFirstChain()
-
getChainHalfEdge
int getChainHalfEdge(int chain)
-
getChainParentage
int getChainParentage(int chain)
-
getChainParent
int getChainParent(int chain)
-
getChainFirstIsland
int getChainFirstIsland(int chain)
-
getChainNextInParent
int getChainNextInParent(int chain)
-
getChainNext
int getChainNext(int chain)
-
getChainArea
double getChainArea(int chain)
-
getChainPerimeter
double getChainPerimeter(int chain)
-
getChainUserIndex
int getChainUserIndex(int chain, int index)
-
setChainUserIndex
void setChainUserIndex(int chain, int index, int value)
-
createUserIndexForChains
int createUserIndexForChains()
-
deleteUserIndexForChains
void deleteUserIndexForChains(int userIndex)
-
getGeometryID
int getGeometryID(int geometry)
-
getClusterFromVertex
int getClusterFromVertex(int vertex)
-
getHalfEdgeFromVertex
int getHalfEdgeFromVertex(int vertex)
-
getHalfEdgeConnector
int getHalfEdgeConnector(int clusterFrom, int clusterTo)
-
querySegmentXY
void querySegmentXY(int half_edge, SegmentBuffer outBuffer)
-
compareEdgeAngles_
int compareEdgeAngles_(int edge1, int edge2)
-
compareEdgeAnglesForPair_
int compareEdgeAnglesForPair_(int edge1, int edge2)
-
check_structure_after_dirty_sweep_
boolean check_structure_after_dirty_sweep_()
-
-