Class Bufferer


  • class Bufferer
    extends java.lang.Object
    • Field Detail

      • m_geometry

        private Geometry m_geometry
      • m_original_geom_type

        private int m_original_geom_type
      • m_max_vertex_in_complete_circle

        private int m_max_vertex_in_complete_circle
      • m_tolerance

        private double m_tolerance
      • m_small_tolerance

        private double m_small_tolerance
      • m_filter_tolerance

        private double m_filter_tolerance
      • m_densify_dist

        private double m_densify_dist
      • m_distance

        private double m_distance
      • m_abs_distance

        private double m_abs_distance
      • m_abs_distance_reversed

        private double m_abs_distance_reversed
      • m_dA

        private double m_dA
      • m_b_output_loops

        private boolean m_b_output_loops
      • m_bfilter

        private boolean m_bfilter
      • m_circle_template

        private java.util.ArrayList<Point2D> m_circle_template
      • m_left_stack

        private java.util.ArrayList<Point2D> m_left_stack
      • m_middle_stack

        private java.util.ArrayList<Point2D> m_middle_stack
      • m_helper_line_1

        private Line m_helper_line_1
      • m_helper_line_2

        private Line m_helper_line_2
      • m_helper_array

        private Point2D[] m_helper_array
      • m_progress_counter

        private int m_progress_counter
      • m_circle_template_size

        private int m_circle_template_size
      • m_old_circle_template_size

        private int m_old_circle_template_size
    • Constructor Detail

      • Bufferer

        Bufferer()
    • Method Detail

      • buffer

        Geometry buffer​(Geometry geometry,
                        double distance,
                        SpatialReference sr,
                        double densify_dist,
                        int max_vertex_in_complete_circle,
                        ProgressTracker progress_tracker)
        Result is always a polygon. For non positive distance and non-areas returns an empty polygon. For points returns circles.
      • generateCircleTemplate_

        private void generateCircleTemplate_()
      • bufferPolyline_

        private Geometry bufferPolyline_()
      • bufferPolygon_

        private Geometry bufferPolygon_()
      • bufferPolygonImpl_

        private Polygon bufferPolygonImpl_​(Polygon input_geom,
                                           int ipath_begin,
                                           int ipath_end)
      • bufferPoint_

        private Geometry bufferPoint_()
      • bufferMultiPoint_

        private Geometry bufferMultiPoint_()
      • bufferEnvelope_

        private Geometry bufferEnvelope_()
      • bufferConvexPath_

        private Polygon bufferConvexPath_​(MultiPath src,
                                          int ipath)
      • bufferPolylinePath_

        private Polygon bufferPolylinePath_​(Polyline polyline,
                                            int ipath,
                                            boolean bfilter)
      • progress_

        private void progress_()
      • bufferCleanup_

        private Polygon bufferCleanup_​(MultiPath multi_path,
                                       boolean simplify_result)
      • calcN_

        private int calcN_()
      • bufferClosedPath_

        private int bufferClosedPath_​(Geometry input_geom,
                                      int ipath,
                                      MultiPathImpl result_mp,
                                      boolean bfilter,
                                      int dir)
      • processBufferCommands_

        private void processBufferCommands_​(MultiPathImpl result_mp)
      • cleanupBufferCommands_

        private int cleanupBufferCommands_()
      • protectExtremeVertices_

        private static void protectExtremeVertices_​(EditShape edit_shape,
                                                    int protection_index,
                                                    int geom,
                                                    int path)
      • filterPath_

        private static int filterPath_​(EditShape edit_shape,
                                       int geom,
                                       int dir,
                                       boolean closed,
                                       double abs_distance,
                                       double filter_tolerance,
                                       double densify_distance)
      • clipFilter_

        private static int clipFilter_​(EditShape edit_shape,
                                       int fixed_vertices_index,
                                       int from_vertex,
                                       int to_vertex,
                                       int dir,
                                       double abs_distance,
                                       double densify_distance,
                                       int max_filter)
      • isDegeneratePath_

        private boolean isDegeneratePath_​(MultiPathImpl mp_impl,
                                          int ipath)
      • isDegenerateGeometry_

        private boolean isDegenerateGeometry_​(Geometry geom)
      • setWeakSimple_

        private static Polygon setWeakSimple_​(Polygon poly)
      • setStrongSimple_

        private Polygon setStrongSimple_​(Polygon poly)