Class MapNavigator.FitAction

java.lang.Object
com.luciad.maps.MapNavigator.FitAction
All Implemented Interfaces:
AutoCloseable
Enclosing class:
MapNavigator

public static final class MapNavigator.FitAction extends Object implements AutoCloseable
Class that allows to build a fit action and apply it, either directly or using an animation.

Fitting works by:

  • defining bounds to fit to
  • optionally defining a fit margin

Example: Execute a fit action

    map.getMapNavigator().newFitAction().bounds(bounds).fitMarginPercent(5).fit();
  • Method Details

    • finalize

      protected void finalize()
      Overrides:
      finalize in class Object
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
    • bounds

      @NotNull public MapNavigator.FitAction bounds(@NotNull Bounds bounds)
      Sets the bounds to fit on.

      These bounds can be defined in any reference

      This parameter is mandatory. Not setting it will cause FitAction#fit to throw an exception.

      Parameters:
      bounds - the bounds to fit on
      Returns:
      this
    • fitMarginPercent

      @NotNull public MapNavigator.FitAction fitMarginPercent(double fitMarginPercent) throws IllegalArgumentException
      The fit margin is the margin between the bounds to fit on and the edge of the visible map.

      A fit margin of "5%" will add a margin of 5% of the map's screen dimensions on each side of the bounds, the center remains unchanged.

      This parameter is optional. The default fit margin is 2%.

      Parameters:
      fitMarginPercent - a fit margin, expressed as a percentage.
      Returns:
      this
      Throws:
      IllegalArgumentException - when a fit margin >= 50% is specified, or a value <= 0.
    • animate

      @NotNull public MapNavigator.FitAction animate(boolean animated)
      Specifies if the action should use an animation.
      Parameters:
      animated - if this action should use an animation. The default is false.
      Returns:
      this
    • duration

      @NotNull public MapNavigator.FitAction duration(@NotNull Duration duration)
      Specifies the duration of the animation.

      This parameter is only used if animate(bool) is called with true as argument.

      Parameters:
      duration - the duration of the animation in milliseconds. The default is 2000 (=2 seconds)
      Returns:
      this
    • fit

      public void fit() throws IllegalStateException
      Applies the fit action.
      Throws:
      IllegalStateException - if the action is not built correctly, for example if mandatory parameters are missing, or if incompatible parameters are configured.