Package org.mapsforge.map.layer.overlay
Class Polyline
- java.lang.Object
-
- org.mapsforge.map.layer.Layer
-
- org.mapsforge.map.layer.overlay.Polyline
-
public class Polyline extends Layer
APolyline
draws a connected series of line segments specified by a list ofLatLongs
. APolyline
holds aPaint
object which defines drawing parameters such as color, stroke width, pattern and transparency.
-
-
Field Summary
-
Fields inherited from class org.mapsforge.map.layer.Layer
displayModel
-
-
Constructor Summary
Constructors Constructor Description Polyline(org.mapsforge.core.graphics.Paint paintStroke, org.mapsforge.core.graphics.GraphicFactory graphicFactory)
Polyline(org.mapsforge.core.graphics.Paint paintStroke, org.mapsforge.core.graphics.GraphicFactory graphicFactory, boolean keepAligned)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPoint(org.mapsforge.core.model.LatLong point)
void
addPoints(java.util.List<org.mapsforge.core.model.LatLong> points)
void
clear()
boolean
contains(org.mapsforge.core.model.Point tapXY, MapViewProjection mapViewProjection)
void
draw(org.mapsforge.core.model.BoundingBox boundingBox, byte zoomLevel, org.mapsforge.core.graphics.Canvas canvas, org.mapsforge.core.model.Point topLeftPoint)
Draws thisLayer
on the given canvas.java.util.List<org.mapsforge.core.model.LatLong>
getLatLongs()
org.mapsforge.core.graphics.Paint
getPaintStroke()
double
getStrokeIncrease()
boolean
isKeepAligned()
void
setPaintStroke(org.mapsforge.core.graphics.Paint paintStroke)
void
setPoints(java.util.List<org.mapsforge.core.model.LatLong> points)
void
setStrokeIncrease(double strokeIncrease)
-
Methods inherited from class org.mapsforge.map.layer.Layer
getDisplayModel, getPosition, isVisible, onAdd, onDestroy, onLongPress, onRemove, onScroll, onTap, requestRedraw, setDisplayModel, setVisible, setVisible
-
-
-
-
Constructor Detail
-
Polyline
public Polyline(org.mapsforge.core.graphics.Paint paintStroke, org.mapsforge.core.graphics.GraphicFactory graphicFactory)
- Parameters:
paintStroke
- the initialPaint
used to stroke this polyline (may be null).graphicFactory
- the GraphicFactory
-
Polyline
public Polyline(org.mapsforge.core.graphics.Paint paintStroke, org.mapsforge.core.graphics.GraphicFactory graphicFactory, boolean keepAligned)
- Parameters:
paintStroke
- the initialPaint
used to stroke this polyline (may be null).graphicFactory
- the GraphicFactorykeepAligned
- 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.Point tapXY, MapViewProjection mapViewProjection)
-
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 thisLayer
on the given canvas.- Specified by:
draw
in classLayer
- Parameters:
boundingBox
- the geographical area which should be drawn.zoomLevel
- the zoom level at which thisLayer
should draw itself.canvas
- the canvas on which thisLayer
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 polyline.
-
getPaintStroke
public org.mapsforge.core.graphics.Paint getPaintStroke()
- Returns:
- the
Paint
used to stroke this polyline (may be null).
-
getStrokeIncrease
public double getStrokeIncrease()
- Returns:
- the base to scale polyline stroke per zoom (default 1 not scale).
-
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.
-
setPaintStroke
public void setPaintStroke(org.mapsforge.core.graphics.Paint paintStroke)
- Parameters:
paintStroke
- the newPaint
used to stroke this polyline (may be null).
-
setPoints
public void setPoints(java.util.List<org.mapsforge.core.model.LatLong> points)
-
setStrokeIncrease
public void setStrokeIncrease(double strokeIncrease)
- Parameters:
strokeIncrease
- the base to scale polyline stroke per zoom (default 1 not scale).
-
-