Class OperatorSimplifyLocalHelper
java.lang.Object
com.esri.core.geometry.OperatorSimplifyLocalHelper
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final classprivate static final classprivate static final classprivate static final classprivate static final classprivate static final classprivate static final class(package private) static final class(package private) static final class(package private) static final classprivate static final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Treapprivate intprivate booleanprivate booleanprivate IndexMultiDCListprivate intprivate final VertexDescriptionprivate EditShapeprivate AttributeStreamOfInt32private Geometryprivate intprivate AttributeStreamOfInt32(package private) NonSimpleResultprivate AttributeStreamOfInt32private AttributeStreamOfInt32private AttributeStreamOfInt32private AttributeStreamOfInt32private AttributeStreamOfInt32private ProgressTrackerprivate SegmentIteratorImplprivate SpatialReferenceImplprivate doubleprivate doubleprivate intprivate AttributeStreamOfDblprivate AttributeStreamOfInt32private AttributeStreamOfInt32private double -
Constructor Summary
ConstructorsConstructorDescriptionOperatorSimplifyLocalHelper(Geometry geometry, SpatialReference spatialReference, int knownSimpleResult, ProgressTracker progressTracker, boolean bOGCRestrictions) -
Method Summary
Modifier and TypeMethodDescription(package private) booleanprivate booleanprivate booleanprivate booleanprivate booleanprivate booleancheckDegenerateSegments_(boolean bTestZs) private boolean(package private) booleanprivate booleanprivate intprivate intcompareVertices_(int i1, int i2, boolean get_paths) private intcompareVerticesMultiPoint_(int i1, int i2) private intcompareVerticesMultiPoint2_(int i1, int i2) private OperatorSimplifyLocalHelper.EdgecreateEdge_(Segment seg, int xyindex, int pathIndex, boolean bReversed) private OperatorSimplifyLocalHelper.EdgecreateEdgeLine_(Segment seg) private intprotected static intisSimpleAsFeature(Geometry geometry, SpatialReference spatialReference, boolean bForce, NonSimpleResult result, ProgressTracker progressTracker) Checks if Geometry is simple for storing in DB: MultiPoint:check that no points coincide.tolerance is ignored.(package private) static intisSimpleOGC(Geometry geometry, SpatialReference spatialReference, boolean bForce, NonSimpleResult result, ProgressTracker progressTracker) protected static intisSimplePlanar(Geometry geometry, SpatialReference spatialReference, boolean bForce, ProgressTracker progressTracker) The code is executed in the 2D plane only.Attributes are ignored.private int(package private) int(package private) MultiPoint(package private) int(package private) Polygon(package private) int(package private) Polylineprivate booleanprivate booleanprivate voidprotected static GeometrysimplifyAsFeature(Geometry geometry, SpatialReference spatialReference, boolean bForce, ProgressTracker progressTracker) Simplifies geometries for storing in DB: MultiPoint:check that no points coincide.tolerance is ignored.(package private) static GeometrysimplifyOGC(Geometry geometry, SpatialReference spatialReference, boolean bForce, ProgressTracker progressTracker) Simplifies geometries for storing in OGC format: MultiPoint:check that no points coincide.tolerance is ignored.(package private) MultiVertexGeometryprivate booleantestToleranceDistance_(int xyindex1, int xyindex2)
-
Field Details
-
m_description
-
m_geometry
-
m_sr
-
m_dbgCounter
private int m_dbgCounter -
m_toleranceIsSimple
private double m_toleranceIsSimple -
m_toleranceSimplify
private double m_toleranceSimplify -
m_knownSimpleResult
private int m_knownSimpleResult -
m_attributeCount
private int m_attributeCount -
m_edges
-
m_FreeEdges
-
m_lineEdgesRecycle
-
m_newEdges
-
m_recycledSegIter
-
m_crossOverHelperList
-
m_paths_for_OGC_tests
-
m_progressTracker
-
m_AET
-
m_xyToNode1
-
m_xyToNode2
-
m_pathOrientations
-
m_pathParentage
-
m_unknownOrientationPathCount
private int m_unknownOrientationPathCount -
m_yScanline
private double m_yScanline -
m_xy
-
m_pairs
-
m_pairIndices
-
m_editShape
-
m_bOGCRestrictions
private boolean m_bOGCRestrictions -
m_bPlanarSimplify
private boolean m_bPlanarSimplify -
m_nonSimpleResult
NonSimpleResult m_nonSimpleResult
-
-
Constructor Details
-
OperatorSimplifyLocalHelper
OperatorSimplifyLocalHelper(Geometry geometry, SpatialReference spatialReference, int knownSimpleResult, ProgressTracker progressTracker, boolean bOGCRestrictions)
-
-
Method Details
-
isSimplePlanarImpl_
private int isSimplePlanarImpl_() -
testToleranceDistance_
private boolean testToleranceDistance_(int xyindex1, int xyindex2) -
checkStructure_
private boolean checkStructure_() -
checkDegenerateSegments_
private boolean checkDegenerateSegments_(boolean bTestZs) -
checkClustering_
private boolean checkClustering_() -
checkCracking_
private boolean checkCracking_() -
checkCrackingPlanesweep_
private boolean checkCrackingPlanesweep_() -
checkCrackingBrute_
private boolean checkCrackingBrute_() -
checkSelfIntersections_
private boolean checkSelfIntersections_() -
checkSelfIntersectionsPolylinePlanar_
boolean checkSelfIntersectionsPolylinePlanar_() -
check_self_intersections_polygons_OGC_
boolean check_self_intersections_polygons_OGC_() -
checkValidRingOrientation_
private int checkValidRingOrientation_() -
processBunchForSelfIntersectionTest_
-
processBunchForRingOrientationTest_
-
createEdge_
private OperatorSimplifyLocalHelper.Edge createEdge_(Segment seg, int xyindex, int pathIndex, boolean bReversed) -
createEdgeLine_
-
recycleEdge_
-
multiPointIsSimpleAsFeature_
int multiPointIsSimpleAsFeature_() -
polylineIsSimpleAsFeature_
int polylineIsSimpleAsFeature_() -
polygonIsSimpleAsFeature_
int polygonIsSimpleAsFeature_() -
multiPointSimplifyAsFeature_
MultiPoint multiPointSimplifyAsFeature_() -
polylineSimplifyAsFeature_
Polyline polylineSimplifyAsFeature_() -
polygonSimplifyAsFeature_
Polygon polygonSimplifyAsFeature_() -
simplifyPlanar_
MultiVertexGeometry simplifyPlanar_() -
isSimplePlanar
protected static int isSimplePlanar(Geometry geometry, SpatialReference spatialReference, boolean bForce, ProgressTracker progressTracker) The code is executed in the 2D plane only.Attributes are ignored. MultiPoint-check for clustering. Polyline -check for clustering and cracking. Polygon -check for clustering,cracking,absence of self-intersections,and correct ring ordering. -
isSimpleAsFeature
protected static int isSimpleAsFeature(Geometry geometry, SpatialReference spatialReference, boolean bForce, NonSimpleResult result, ProgressTracker progressTracker) Checks if Geometry is simple for storing in DB: MultiPoint:check that no points coincide.tolerance is ignored. Polyline:ensure there no segments degenerate segments. Polygon:Same as IsSimplePlanar. -
isSimpleOGC
static int isSimpleOGC(Geometry geometry, SpatialReference spatialReference, boolean bForce, NonSimpleResult result, ProgressTracker progressTracker) -
simplifyAsFeature
protected static Geometry simplifyAsFeature(Geometry geometry, SpatialReference spatialReference, boolean bForce, ProgressTracker progressTracker) Simplifies geometries for storing in DB: MultiPoint:check that no points coincide.tolerance is ignored. Polyline:ensure there no segments degenerate segments. Polygon:cracks and clusters using cluster tolerance and resolves all self intersections, orients rings properly and arranges the rings in the OGC order. Returns simplified geometry. -
simplifyOGC
static Geometry simplifyOGC(Geometry geometry, SpatialReference spatialReference, boolean bForce, ProgressTracker progressTracker) Simplifies geometries for storing in OGC format: MultiPoint:check that no points coincide.tolerance is ignored. Polyline:ensure there no segments degenerate segments. Polygon:cracks and clusters using cluster tolerance and resolves all self intersections, orients rings properly and arranges the rings in the OGC order. Returns simplified geometry. -
compareVertices_
private int compareVertices_(int i1, int i2, boolean get_paths) -
compareVerticesMultiPoint_
private int compareVerticesMultiPoint_(int i1, int i2) -
compareVerticesMultiPoint2_
private int compareVerticesMultiPoint2_(int i1, int i2) -
edgeAngleCompare_
private int edgeAngleCompare_(OperatorSimplifyLocalHelper.Edge edge1, OperatorSimplifyLocalHelper.Edge edge2)
-