Class Offset


  • public class Offset
    extends java.lang.Object
    Defines the relationship of an image, label or other screen-space item relative to another screen-space item. An offset contains an X coordinate, a Y coordinate, and for each of these a separate "units" string indicating the coordinate units.

    Recognized "units" values are AVKey.PIXELS, which indicates pixel units relative to the lower left corner of the screen-space item, AVKey.FRACTION, which indicates that the units are fractions of the screen-space item's width and height, relative to its lower left corner, and AVKey.INSET_PIXELS, which indicates units of pixels but with origin at the screen-space item's upper right.

    This class implements the functionality of a KML Offset.

    • Constructor Summary

      Constructors 
      Constructor Description
      Offset​(java.lang.Double x, java.lang.Double y, java.lang.String xUnits, java.lang.String yUnits)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.awt.geom.Point2D.Double computeOffset​(double width, double height, java.lang.Double xScale, java.lang.Double yScale)
      Computes the X and Y offset specified by this offset applied to a specified rectangle.
      boolean equals​(java.lang.Object o)  
      static Offset fromFraction​(double xFraction, double yFraction)
      Creates a new offset from explicit fraction coordinates.
      void getRestorableState​(RestorableSupport restorableSupport, RestorableSupport.StateObject context)
      Saves the offset's current state in the specified restorableSupport.
      java.lang.Double getX()
      Returns the hot spot's X coordinate.
      java.lang.String getXUnits()
      Returns the units of the offset X value.
      java.lang.Double getY()
      Returns the hot spot's Y coordinate.
      java.lang.String getYUnits()
      Returns the units of the offset Y value.
      int hashCode()  
      void restoreState​(RestorableSupport restorableSupport, RestorableSupport.StateObject context)
      Restores the state of any offset parameters contained in the specified RestorableSupport.
      void setX​(java.lang.Double x)
      Specifies the hot spot's X coordinate, in units specified by setXUnits(String).
      void setXUnits​(java.lang.String units)
      Specifies the units of the offset X value.
      void setY​(java.lang.Double y)
      Specifies the hot spot's Y coordinate, in units specified by setYUnits(String).
      void setYUnits​(java.lang.String units)
      Specifies the units of the offset Y value.
      • Methods inherited from class java.lang.Object

        clone, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • CENTER

        public static final Offset CENTER
      • BOTTOM_CENTER

        public static final Offset BOTTOM_CENTER
      • TOP_CENTER

        public static final Offset TOP_CENTER
      • LEFT_CENTER

        public static final Offset LEFT_CENTER
      • RIGHT_CENTER

        public static final Offset RIGHT_CENTER
      • x

        protected java.lang.Double x
      • y

        protected java.lang.Double y
      • xUnits

        protected java.lang.String xUnits
      • yUnits

        protected java.lang.String yUnits
    • Constructor Detail

      • Offset

        public Offset​(java.lang.Double x,
                      java.lang.Double y,
                      java.lang.String xUnits,
                      java.lang.String yUnits)
    • Method Detail

      • fromFraction

        public static Offset fromFraction​(double xFraction,
                                          double yFraction)
        Creates a new offset from explicit fraction coordinates.
        Parameters:
        xFraction - the offset's X coordinate as a fraction of the containing rectangle.
        yFraction - the offset's Y coordinate as a fraction of the containing rectangle.
        Returns:
        a new offset with the specified X and Y coordinates.
      • getX

        public java.lang.Double getX()
        Returns the hot spot's X coordinate. See setXUnits(String) for a description of the hot spot.
        Returns:
        the hot spot's X coordinate.
      • setX

        public void setX​(java.lang.Double x)
        Specifies the hot spot's X coordinate, in units specified by setXUnits(String).
        Parameters:
        x - the hot spot's X coordinate. May be null, in which case 0 is used during rendering.
      • getY

        public java.lang.Double getY()
        Returns the hot spot's Y coordinate. See setYUnits(String) for a description of the hot spot.
        Returns:
        the hot spot's Y coordinate.
      • setY

        public void setY​(java.lang.Double y)
        Specifies the hot spot's Y coordinate, in units specified by setYUnits(String).
        Parameters:
        y - the hot spot's Y coordinate. May be null, in which case 0 is used during rendering.
      • getXUnits

        public java.lang.String getXUnits()
        Returns the units of the offset X value. See setXUnits(String) for a description of the recognized values.
        Returns:
        the units of the offset X value, or null.
      • setXUnits

        public void setXUnits​(java.lang.String units)
        Specifies the units of the offset X value. Recognized values are AVKey.PIXELS, which indicates pixel units relative to the lower left corner of the placemark image, AVKey.FRACTION, which indicates the units are fractions of the placemark image width and height, and AVKey.INSET_PIXELS, which indicates units of pixels but with origin in the upper left.
        Parameters:
        units - the units of the offset X value. If null, AVKey.PIXELS is used during rendering.
      • getYUnits

        public java.lang.String getYUnits()
        Returns the units of the offset Y value. See setYUnits(String) for a description of the recognized values.
        Returns:
        the units of the offset Y value, or null.
      • setYUnits

        public void setYUnits​(java.lang.String units)
        Specifies the units of the offset Y value. Recognized values are AVKey.PIXELS, which indicates pixel units relative to the lower left corner of the placemark image, AVKey.FRACTION, which indicates the units are fractions of the placemark image width and height, and AVKey.INSET_PIXELS, which indicates units of pixels but with origin in the upper left.
        Parameters:
        units - the units of the offset Y value. If null, AVKey.PIXELS is used during rendering.
      • computeOffset

        public java.awt.geom.Point2D.Double computeOffset​(double width,
                                                          double height,
                                                          java.lang.Double xScale,
                                                          java.lang.Double yScale)
        Computes the X and Y offset specified by this offset applied to a specified rectangle.
        Parameters:
        width - the rectangle width.
        height - the rectangle height.
        xScale - an optional scale to apply to the X coordinate of the offset. May be null.
        yScale - an optional scale to apply to the Y coordinate of the offset. May be null.
        Returns:
        the result of applying this offset to the specified rectangle and incorporating the optional scales.
      • restoreState

        public void restoreState​(RestorableSupport restorableSupport,
                                 RestorableSupport.StateObject context)
        Restores the state of any offset parameters contained in the specified RestorableSupport. If the StateObject is not null it's searched for state values, otherwise the RestorableSupport root is searched.
        Parameters:
        restorableSupport - the RestorableSupport that contains the offset's state.
        context - the StateObject to search for state values, if not null.
        Throws:
        java.lang.IllegalArgumentException - if restorableSupport is null.
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object