Class Polygon


  • public class Polygon
    extends Layer
    A Polygon draws a closed connected series of line segments specified by a list of LatLongs. If the first and the last LatLong are not equal, the Polygon will be closed automatically.

    A Polygon holds two Paint objects to allow for different outline and filling. These paints define drawing parameters such as color, stroke width, pattern and transparency.

    • Constructor Summary

      Constructors 
      Constructor Description
      Polygon​(org.mapsforge.core.graphics.Paint paintFill, org.mapsforge.core.graphics.Paint paintStroke, org.mapsforge.core.graphics.GraphicFactory graphicFactory)  
      Polygon​(org.mapsforge.core.graphics.Paint paintFill, org.mapsforge.core.graphics.Paint paintStroke, org.mapsforge.core.graphics.GraphicFactory graphicFactory, boolean keepAligned)  
    • Constructor Detail

      • Polygon

        public Polygon​(org.mapsforge.core.graphics.Paint paintFill,
                       org.mapsforge.core.graphics.Paint paintStroke,
                       org.mapsforge.core.graphics.GraphicFactory graphicFactory)
        Parameters:
        paintFill - the initial Paint used to fill this polygon (may be null).
        paintStroke - the initial Paint used to stroke this polygon (may be null).
        graphicFactory - the GraphicFactory
      • Polygon

        public Polygon​(org.mapsforge.core.graphics.Paint paintFill,
                       org.mapsforge.core.graphics.Paint paintStroke,
                       org.mapsforge.core.graphics.GraphicFactory graphicFactory,
                       boolean keepAligned)
        Parameters:
        paintFill - the initial Paint used to fill this polygon (may be null).
        paintStroke - the initial Paint used to stroke this polygon (may be null).
        graphicFactory - the GraphicFactory
        keepAligned - if set to true it will keep the bitmap aligned with the map, to avoid a moving effect of a bitmap shader.
    • Method Detail

      • addPoint

        public void addPoint​(org.mapsforge.core.model.LatLong point)
      • addPoints

        public void addPoints​(java.util.List<org.mapsforge.core.model.LatLong> points)
      • clear

        public void clear()
      • contains

        public boolean contains​(org.mapsforge.core.model.LatLong tapLatLong)
      • draw

        public void draw​(org.mapsforge.core.model.BoundingBox boundingBox,
                         byte zoomLevel,
                         org.mapsforge.core.graphics.Canvas canvas,
                         org.mapsforge.core.model.Point topLeftPoint)
        Description copied from class: Layer
        Draws this Layer on the given canvas.
        Specified by:
        draw in class Layer
        Parameters:
        boundingBox - the geographical area which should be drawn.
        zoomLevel - the zoom level at which this Layer should draw itself.
        canvas - the canvas on which this Layer should draw itself.
        topLeftPoint - the top-left pixel position of the canvas relative to the top-left map position.
      • getLatLongs

        public java.util.List<org.mapsforge.core.model.LatLong> getLatLongs()
        Returns:
        a thread-safe list of LatLongs in this polygon.
      • getPaintFill

        public org.mapsforge.core.graphics.Paint getPaintFill()
        Returns:
        the Paint used to fill this polygon (may be null).
      • getPaintStroke

        public org.mapsforge.core.graphics.Paint getPaintStroke()
        Returns:
        the Paint used to stroke this polygon (may be null).
      • isKeepAligned

        public boolean isKeepAligned()
        Returns:
        true if it keeps the bitmap aligned with the map, to avoid a moving effect of a bitmap shader, false otherwise.
      • setPaintFill

        public void setPaintFill​(org.mapsforge.core.graphics.Paint paintFill)
        Parameters:
        paintFill - the new Paint used to fill this polygon (may be null).
      • setPaintStroke

        public void setPaintStroke​(org.mapsforge.core.graphics.Paint paintStroke)
        Parameters:
        paintStroke - the new Paint used to stroke this polygon (may be null).
      • setPoints

        public void setPoints​(java.util.List<org.mapsforge.core.model.LatLong> points)