Class BBoxCalculator


  • public class BBoxCalculator
    extends java.lang.Object
    (INTERNAL) Calculates the minimum bounding box given a bunch of rectangles (ranges). It's a temporary object and not thread-safe; throw it away when done. For a cartesian space, the calculations are trivial but it is not for geodetic. For geodetic, it must maintain an ordered set of disjoint ranges as each range is provided.
    • Field Detail

      • minY

        private double minY
      • maxY

        private double maxY
      • minX

        private double minX
      • maxX

        private double maxX
      • ranges

        private java.util.TreeMap<java.lang.Double,​java.lang.Double> ranges
        Sorted list of disjoint X ranges keyed by maxX and with minX stored as the "value".
    • Constructor Detail

    • Method Detail

      • expandRange

        public void expandRange​(Rectangle rect)
      • expandRange

        public void expandRange​(double minX,
                                double maxX,
                                double minY,
                                double maxY)
      • expandXRange

        public void expandXRange​(double minX,
                                 double maxX)
      • processRanges

        private void processRanges()
      • rangeContains

        private static boolean rangeContains​(double minX,
                                             double maxX,
                                             double x)
      • doesXWorldWrap

        public boolean doesXWorldWrap()
      • getBoundary

        public Rectangle getBoundary()
      • getMinX

        public double getMinX()
      • getMaxX

        public double getMaxX()
      • getMinY

        public double getMinY()
      • getMaxY

        public double getMaxY()