Class Map.Renderer

java.lang.Object
com.luciad.maps.Map.Renderer
All Implemented Interfaces:
AutoCloseable
Enclosing class:
Map

public static final class Map.Renderer extends Object implements AutoCloseable
The Map renderer.

This class allows you to paint the Map.

Note: all methods must be called on the render thread. See here for more details on the threading rules.

  • Method Details

    • finalize

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

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

      public boolean paint()
      To be called by the host widget/component to paint.

      For OpenGL you must ensure that we have a current context.

      The invalidation callback mechanism (Map#setMapInvalidationCallback) provides information on when something has changed on the Map, and a repaint is needed. This allows to only call the paint() method when it is needed.

      Returns:
      whether the Map is idle. Idle means that no background processes are executing inside the Map, and that the result of the painting completely reflects the state of the Map.
    • toImage

      @NotNull public Image toImage()
      Copies the current contents of the Map to an Image.

      For OpenGL you must ensure that we have a current context. This method will not wait until all processing is done.

      The image size is equal to the map size, multiplied by the display scale.

      Returns:
      an Image that contains the content of the Map.
    • projectPointOnTerrain

      @NotNull public Coordinate projectPointOnTerrain(@NotNull Coordinate mapPoint)
      Projects the given point by moving it up or down towards the terrain.

      The projection is done along the axis that runs perpendicular to the ellipsoid surface at that point. If no terrain is available, the point is projected on the ellipsoid of the map reference.

      Parameters:
      mapPoint - a point in map coordinates
      Returns:
      the projected location, in map coordinates.
    • destroy

      public void destroy()
      Disposes the Renderer.

      This method disposes all graphics related resources, and should be called when the OpenGL context is current. This method needs to be called before the Map instance is deleted.