Class GpxDrawHelper
- java.lang.Object
-
- org.openstreetmap.josm.gui.layer.gpx.GpxDrawHelper
-
- All Implemented Interfaces:
GpxData.GpxDataChangeListener,SystemOfMeasurement.SoMChangeListener,MapViewPaintable.LayerPainter,MapViewPaintable.PaintableInvalidationListener
public class GpxDrawHelper extends java.lang.Object implements SystemOfMeasurement.SoMChangeListener, MapViewPaintable.LayerPainter, MapViewPaintable.PaintableInvalidationListener, GpxData.GpxDataChangeListener
Class that helps to draw large set of GPS tracks with different colors and options- Since:
- 7319
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classGpxDrawHelper.ColorModeDifferent color modes
-
Field Summary
Fields Modifier and Type Field Description private booleanalphaLinesprivate booleanarrowsprivate intarrowsDeltadon't draw arrows nearer to each other than thisprivate booleanarrowsFastpaint direction arrow with alternate math.private intcircleAlphaOpacity for circle pointsprivate intcircleDataSourceprivate java.awt.ColorcolorCacheprivate java.awt.ColorcolorCacheTransparentprivate GpxDrawHelper.ColorModecoloredMode of the line coloringprivate booleancolorModeDynamicprivate booleancomputeCacheColorDynamicprivate GpxDrawHelper.ColorModecomputeCacheColoredprivate java.awt.ColorcomputeCacheColorUsedprivate intcomputeCacheHeatMapDrawColorTableIdxprivate intcomputeCacheHeatMapDrawGainprivate intcomputeCacheHeatMapDrawLowerLimitprivate booleancomputeCacheHeatMapDrawPointModeprivate booleancomputeCacheInSyncprivate intcomputeCacheMaxLineLengthUsedprivate intcomputeCacheVelocityTuneprivate GpxDatadataprivate ColorScaledateScalestatic NamedColorPropertyDEFAULT_COLOR_PROPERTYThe default color property that is used for drawing GPX points.private static int[][]dirprivate ColorScaledirectionScaleprivate booleandrawCircleprivate ColorScalefixScaleprivate booleanforceLinesprivate static java.awt.Color[]gpsFixQualityColorsprivate static java.lang.String[]gpsFixQualityNamesprivate booleangpxLayerInvalidatedprivate inthdoprangemaximum value of displayed HDOP, minimum is 0private ColorScalehdopScaleColors (without custom alpha channel, if given) for HDOP painting.(package private) intheatMapCacheLineWith(package private) java.awt.RectangleheatMapCacheScreenBoundsprivate intheatMapDrawColorTableIdxprivate booleanheatMapDrawExtraLineheat map parametersprivate intheatMapDrawGainprivate intheatMapDrawLowerLimitprivate booleanheatMapDrawPointModeprivate java.awt.Graphics2DheatMapGraph2dprivate java.awt.image.BufferedImageheatMapImgGrayprivate java.awt.Color[]heatMapLutColorprivate static java.awt.Color[]heatMapLutColorJosmBrown2Greenprivate static java.awt.Color[]heatMapLutColorJosmInfernoprivate static java.awt.Color[]heatMapLutColorJosmRed2Blueprivate static java.awt.Color[]heatMapLutColorJosmViridis(package private) MapViewStateheatMapMapViewStateprivate java.util.List<java.lang.Integer>heatMapPolyXprivate java.util.List<java.lang.Integer>heatMapPolyYprivate booleanlargepaint large dots for pointsprivate intlargePointAlphaprivate intlargesizeprivate GpxLayerlayerprivate booleanlinesprivate intlineWidthwidth of line for paintprivate static intll0private intmaxLineLengthdon't draw lines if longer than x metersprivate doublemaxTimemaxTime saves the end time of the track as epoch secondsprivate doubleminTimeminTime saves the start time of the track as epoch secondsprivate doubleminTrackDurationForTimeColoringprivate java.awt.ColorneutralColorprivate static doublePHIprivate ColorScalequalityScaleprivate ColorScalerefScaleprivate static java.awt.Color[]rtkLibQualityColorsprivate static java.lang.String[]rtkLibQualityNamesprivate static intsl4private static intsl9private ColorScalevelocityScaleprivate intvelocityTunemax speed for coloring - allows to tweak line coloring for different speed levels.
-
Constructor Summary
Constructors Constructor Description GpxDrawHelper(GpxLayer gpxLayer)Constructs a newGpxDrawHelper.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcalculateColors()Calculate colors of way segments based on latest configuration settingsprivate voidcheckCache()Check cache validity set necessary flagsprotected static java.awt.Color[]createColorFromResource(java.lang.String str)Creates a colormap by using a static color map with 1..n colors (RGB 0.0 ..1.0)protected static java.awt.Color[]createColorLut(int lowerLimit, java.awt.Color... colors)Creates a distributed colormap by linear blending between colorsprotected static java.awt.image.BufferedImagecreateImageGradientMap(int width, int height, java.awt.Color... colors)Generates a linear gradient map imageprotected static java.awt.ColordarkerColor(java.awt.Color in, float adjust)Creates a darker colorvoiddetachFromMapView(MapViewPaintable.MapViewEvent event)Called when the layer is removed from the map view and this painter is not used any more.voiddrawAll(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments, Bounds clipBounds)Draw all enabled GPX elements of layer.private voiddrawArrows(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)Draw all GPX arraysprivate voiddrawArrows3b(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)STEP 3b - DRAW NICE ARROWS **************************private voiddrawArrows3c(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)STEP 3c - DRAW FAST ARROWS **************************private voiddrawCircle(java.awt.Graphics2D g, MapView mv, WayPoint trkPnt, java.awt.Point screen, float circleSize)voiddrawColorBar(java.awt.Graphics2D g, MapView mv)Draw all GPX arraysprivate static voiddrawHeatGrayDotMap(java.awt.Graphics2D gB, MapView mv, java.util.List<WayPoint> listSegm, int drawSize)Draw a dotted heat mapprivate voiddrawHeatGrayLineMap(java.awt.Graphics2D gB, MapView mv, java.util.List<WayPoint> listSegm, java.awt.Composite foreComp, java.awt.Stroke foreStroke, java.awt.Composite backComp, java.awt.Stroke backStroke)Draw gray heat map with current Graphics2D settingprivate voiddrawHeatMap(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)Collect and draw GPS segments and displays a heat-mapprivate voiddrawHeatMapGrayMap(java.awt.Graphics2D g, java.awt.image.BufferedImage imgGray, int sampleRaster, int outlineWidth)Map the gray map to heat map and draw them with current Graphics2D settingprivate static voiddrawHeatSurfaceLine(java.awt.Graphics2D g, java.awt.Point fromPnt, java.awt.Point toPnt, int drawSize, double rmsSizeX, double rmsSizeY, double dropRate)Draw a dotted surface lineprivate voiddrawLines(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)Draw all GPX ways segmentsprivate voiddrawLinesAlpha(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments, float layerAlpha)Draw GPX lines by using alpha blendingprivate voiddrawPoints(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)Draw all GPX pointsprivate voiddrawPointsStep3d(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)STEP 3d - DRAW LARGE POINTS AND CIRCLES ***********private voiddrawPointsStep3e(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)STEP 3e - DRAW SMALL POINTS FOR LINES ***************private voiddrawPointsStep3f(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)STEP 3f - DRAW SMALL POINTS INSTEAD OF LINES ********private voidensureTrackVisibilityLength()ensures the trackVisibility array has the correct length without losing data.private voidfixColors(java.util.List<WayPoint> visibleSegments)Apply default color configuration to way segmentsstatic javax.swing.ImageIcongetColorMapImageIcon(java.awt.Color userColor, int tableIdx, int size)Generates a IconGpxDrawHelper.ColorModegetColorMode()Read coloring mode for specified layer from preferencesprotected java.lang.Iterable<Line>getLinesIterable(boolean[] trackVisibility)voidgpxDataChanged(GpxData.GpxDataChangeEvent e)callback when data is changed, invalidate cached configuration parametersprivate java.util.List<WayPoint>listVisibleSegments(Bounds box)private java.lang.Stringopt(java.lang.String key)private booleanoptBool(java.lang.String key)private intoptInt(java.lang.String key)voidpaint(MapViewGraphics graphics)Paints the given layer.voidpaintableInvalidated(MapViewPaintable.PaintableInvalidationEvent event)Called whenever aMapViewPaintable.PaintableInvalidationEventis fired.voidreadPreferences()Read all drawing-related settings from preferencesprotected static java.awt.Color[]selectColorMap(java.awt.Color userColor, int tableIdx)Returns the next user color mapprivate voidsetupColors()voidsystemOfMeasurementChanged(java.lang.String oldSoM, java.lang.String newSoM)The current SoM has changed.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.openstreetmap.josm.data.gpx.GpxData.GpxDataChangeListener
modifiedStateChanged
-
-
-
-
Field Detail
-
DEFAULT_COLOR_PROPERTY
public static final NamedColorProperty DEFAULT_COLOR_PROPERTY
The default color property that is used for drawing GPX points.- Since:
- 15496
-
forceLines
private boolean forceLines
-
alphaLines
private boolean alphaLines
-
arrows
private boolean arrows
-
lineWidth
private int lineWidth
width of line for paint
-
maxLineLength
private int maxLineLength
don't draw lines if longer than x meters
-
lines
private boolean lines
-
large
private boolean large
paint large dots for points
-
largesize
private int largesize
-
drawCircle
private boolean drawCircle
-
circleDataSource
private int circleDataSource
-
arrowsFast
private boolean arrowsFast
paint direction arrow with alternate math. may be faster
-
arrowsDelta
private int arrowsDelta
don't draw arrows nearer to each other than this
-
minTrackDurationForTimeColoring
private double minTrackDurationForTimeColoring
-
hdoprange
private int hdoprange
maximum value of displayed HDOP, minimum is 0
-
PHI
private static final double PHI
-
computeCacheInSync
private boolean computeCacheInSync
-
computeCacheMaxLineLengthUsed
private int computeCacheMaxLineLengthUsed
-
computeCacheColorUsed
private java.awt.Color computeCacheColorUsed
-
computeCacheColorDynamic
private boolean computeCacheColorDynamic
-
computeCacheColored
private GpxDrawHelper.ColorMode computeCacheColored
-
computeCacheVelocityTune
private int computeCacheVelocityTune
-
computeCacheHeatMapDrawColorTableIdx
private int computeCacheHeatMapDrawColorTableIdx
-
computeCacheHeatMapDrawPointMode
private boolean computeCacheHeatMapDrawPointMode
-
computeCacheHeatMapDrawGain
private int computeCacheHeatMapDrawGain
-
computeCacheHeatMapDrawLowerLimit
private int computeCacheHeatMapDrawLowerLimit
-
colorCache
private java.awt.Color colorCache
-
colorCacheTransparent
private java.awt.Color colorCacheTransparent
-
colored
private GpxDrawHelper.ColorMode colored
Mode of the line coloring
-
velocityTune
private int velocityTune
max speed for coloring - allows to tweak line coloring for different speed levels.
-
colorModeDynamic
private boolean colorModeDynamic
-
neutralColor
private java.awt.Color neutralColor
-
largePointAlpha
private int largePointAlpha
-
velocityScale
private ColorScale velocityScale
-
hdopScale
private ColorScale hdopScale
Colors (without custom alpha channel, if given) for HDOP painting.
-
qualityScale
private ColorScale qualityScale
-
fixScale
private ColorScale fixScale
-
refScale
private ColorScale refScale
-
dateScale
private ColorScale dateScale
-
directionScale
private ColorScale directionScale
-
circleAlpha
private int circleAlpha
Opacity for circle points
-
ll0
private static final int ll0
- See Also:
- Constant Field Values
-
sl4
private static final int sl4
- See Also:
- Constant Field Values
-
sl9
private static final int sl9
- See Also:
- Constant Field Values
-
dir
private static final int[][] dir
-
heatMapDrawExtraLine
private boolean heatMapDrawExtraLine
heat map parameters
-
heatMapDrawColorTableIdx
private int heatMapDrawColorTableIdx
-
heatMapDrawPointMode
private boolean heatMapDrawPointMode
-
heatMapDrawGain
private int heatMapDrawGain
-
heatMapDrawLowerLimit
private int heatMapDrawLowerLimit
-
heatMapImgGray
private java.awt.image.BufferedImage heatMapImgGray
-
heatMapGraph2d
private java.awt.Graphics2D heatMapGraph2d
-
heatMapCacheScreenBounds
java.awt.Rectangle heatMapCacheScreenBounds
-
heatMapMapViewState
MapViewState heatMapMapViewState
-
heatMapCacheLineWith
int heatMapCacheLineWith
-
heatMapPolyX
private final java.util.List<java.lang.Integer> heatMapPolyX
-
heatMapPolyY
private final java.util.List<java.lang.Integer> heatMapPolyY
-
heatMapLutColorJosmInferno
private static final java.awt.Color[] heatMapLutColorJosmInferno
-
heatMapLutColorJosmViridis
private static final java.awt.Color[] heatMapLutColorJosmViridis
-
heatMapLutColorJosmBrown2Green
private static final java.awt.Color[] heatMapLutColorJosmBrown2Green
-
heatMapLutColorJosmRed2Blue
private static final java.awt.Color[] heatMapLutColorJosmRed2Blue
-
rtkLibQualityColors
private static final java.awt.Color[] rtkLibQualityColors
-
rtkLibQualityNames
private static final java.lang.String[] rtkLibQualityNames
-
gpsFixQualityColors
private static final java.awt.Color[] gpsFixQualityColors
- See Also:
GpxConstants.FIX_VALUES
-
gpsFixQualityNames
private static final java.lang.String[] gpsFixQualityNames
-
heatMapLutColor
private java.awt.Color[] heatMapLutColor
-
gpxLayerInvalidated
private boolean gpxLayerInvalidated
-
minTime
private double minTime
minTime saves the start time of the track as epoch seconds
-
maxTime
private double maxTime
maxTime saves the end time of the track as epoch seconds
-
-
Constructor Detail
-
GpxDrawHelper
public GpxDrawHelper(GpxLayer gpxLayer)
Constructs a newGpxDrawHelper.- Parameters:
gpxLayer- The layer to draw- Since:
- 12157
-
-
Method Detail
-
setupColors
private void setupColors()
-
systemOfMeasurementChanged
public void systemOfMeasurementChanged(java.lang.String oldSoM, java.lang.String newSoM)
Description copied from interface:SystemOfMeasurement.SoMChangeListenerThe current SoM has changed.- Specified by:
systemOfMeasurementChangedin interfaceSystemOfMeasurement.SoMChangeListener- Parameters:
oldSoM- The old system of measurementnewSoM- The new (current) system of measurement
-
getColorMode
public GpxDrawHelper.ColorMode getColorMode()
Read coloring mode for specified layer from preferences- Returns:
- coloring mode
-
opt
private java.lang.String opt(java.lang.String key)
-
optBool
private boolean optBool(java.lang.String key)
-
optInt
private int optInt(java.lang.String key)
-
readPreferences
public void readPreferences()
Read all drawing-related settings from preferences
-
paint
public void paint(MapViewGraphics graphics)
Description copied from interface:MapViewPaintable.LayerPainterPaints the given layer.This can be called in any thread at any time. You will not receive parallel calls for the same map view but you can receive parallel calls if you use the same
MapViewPaintable.LayerPainterfor different map views.- Specified by:
paintin interfaceMapViewPaintable.LayerPainter- Parameters:
graphics- The graphics object of the map view you should use. It provides you with a content pane, the bounds and the view state.
-
listVisibleSegments
private java.util.List<WayPoint> listVisibleSegments(Bounds box)
-
getLinesIterable
protected java.lang.Iterable<Line> getLinesIterable(boolean[] trackVisibility)
-
ensureTrackVisibilityLength
private void ensureTrackVisibilityLength()
ensures the trackVisibility array has the correct length without losing data. TODO: Make this nicer by syncing the trackVisibility automatically. additional entries are initialized to true;
-
drawAll
public void drawAll(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments, Bounds clipBounds)
Draw all enabled GPX elements of layer.- Parameters:
g- the common draw object to usemv- the meta data to current displayed areavisibleSegments- segments visible in the current scope of mvclipBounds- the clipping rectangle for the current view- Since:
- 14748 : new parameter clipBounds
-
calculateColors
public void calculateColors()
Calculate colors of way segments based on latest configuration settings
-
drawLines
private void drawLines(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
Draw all GPX ways segments- Parameters:
g- the common draw object to usemv- the meta data to current displayed areavisibleSegments- segments visible in the current scope of mv
-
drawArrows
private void drawArrows(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
Draw all GPX arrays- Parameters:
g- the common draw object to usemv- the meta data to current displayed areavisibleSegments- segments visible in the current scope of mv
-
drawArrows3b
private void drawArrows3b(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
STEP 3b - DRAW NICE ARROWS **************************
-
drawArrows3c
private void drawArrows3c(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
STEP 3c - DRAW FAST ARROWS **************************
-
drawPoints
private void drawPoints(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
Draw all GPX points- Parameters:
g- the common draw object to usemv- the meta data to current displayed areavisibleSegments- segments visible in the current scope of mv
-
drawPointsStep3d
private void drawPointsStep3d(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
STEP 3d - DRAW LARGE POINTS AND CIRCLES ***********
-
drawCircle
private void drawCircle(java.awt.Graphics2D g, MapView mv, WayPoint trkPnt, java.awt.Point screen, float circleSize)
-
drawPointsStep3e
private void drawPointsStep3e(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
STEP 3e - DRAW SMALL POINTS FOR LINES ***************
-
drawPointsStep3f
private void drawPointsStep3f(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
STEP 3f - DRAW SMALL POINTS INSTEAD OF LINES ********
-
drawLinesAlpha
private void drawLinesAlpha(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments, float layerAlpha)
Draw GPX lines by using alpha blending- Parameters:
g- the common draw object to usemv- the meta data to current displayed areavisibleSegments- segments visible in the current scope of mvlayerAlpha- the color alpha value set for that operation
-
createImageGradientMap
protected static java.awt.image.BufferedImage createImageGradientMap(int width, int height, java.awt.Color... colors)
Generates a linear gradient map image- Parameters:
width- image widthheight- image heightcolors- 1..n color descriptions- Returns:
- image object
-
createColorLut
protected static java.awt.Color[] createColorLut(int lowerLimit, java.awt.Color... colors)
Creates a distributed colormap by linear blending between colors- Parameters:
lowerLimit- lower limit for first visible colorcolors- 1..n colors- Returns:
- array of Color objects
-
darkerColor
protected static java.awt.Color darkerColor(java.awt.Color in, float adjust)
Creates a darker color- Parameters:
in- Color objectadjust- darker adjustment amount- Returns:
- new Color
-
createColorFromResource
protected static java.awt.Color[] createColorFromResource(java.lang.String str)
Creates a colormap by using a static color map with 1..n colors (RGB 0.0 ..1.0)- Parameters:
str- the filename (without extension) to look for into data/gpx- Returns:
- the parsed colormap
-
selectColorMap
protected static java.awt.Color[] selectColorMap(java.awt.Color userColor, int tableIdx)
Returns the next user color map- Parameters:
userColor- - default or fallback user colortableIdx- - selected user color index- Returns:
- color array
-
getColorMapImageIcon
public static javax.swing.ImageIcon getColorMapImageIcon(java.awt.Color userColor, int tableIdx, int size)
Generates a Icon- Parameters:
userColor- selected user colortableIdx- tabled indexsize- size of the image- Returns:
- a image icon that shows the
-
drawHeatGrayLineMap
private void drawHeatGrayLineMap(java.awt.Graphics2D gB, MapView mv, java.util.List<WayPoint> listSegm, java.awt.Composite foreComp, java.awt.Stroke foreStroke, java.awt.Composite backComp, java.awt.Stroke backStroke)
Draw gray heat map with current Graphics2D setting- Parameters:
gB- the common draw object to usemv- the meta data to current displayed arealistSegm- segments visible in the current scope of mvforeComp- composite use to draw foreground objectsforeStroke- stroke use to draw foreground objectsbackComp- composite use to draw background objectsbackStroke- stroke use to draw background objects
-
drawHeatMapGrayMap
private void drawHeatMapGrayMap(java.awt.Graphics2D g, java.awt.image.BufferedImage imgGray, int sampleRaster, int outlineWidth)
Map the gray map to heat map and draw them with current Graphics2D setting- Parameters:
g- the common draw object to useimgGray- gray scale input imagesampleRaster- the line with for drawingoutlineWidth- line width for outlines
-
drawHeatMap
private void drawHeatMap(java.awt.Graphics2D g, MapView mv, java.util.List<WayPoint> visibleSegments)
Collect and draw GPS segments and displays a heat-map- Parameters:
g- the common draw object to usemv- the meta data to current displayed areavisibleSegments- segments visible in the current scope of mv
-
drawHeatGrayDotMap
private static void drawHeatGrayDotMap(java.awt.Graphics2D gB, MapView mv, java.util.List<WayPoint> listSegm, int drawSize)
Draw a dotted heat map- Parameters:
gB- the common draw object to usemv- the meta data to current displayed arealistSegm- segments visible in the current scope of mvdrawSize- draw size of draw element
-
drawHeatSurfaceLine
private static void drawHeatSurfaceLine(java.awt.Graphics2D g, java.awt.Point fromPnt, java.awt.Point toPnt, int drawSize, double rmsSizeX, double rmsSizeY, double dropRate)
Draw a dotted surface line- Parameters:
g- the common draw object to usefromPnt- start pointtoPnt- end pointdrawSize- size of draw elementsrmsSizeX- RMS size of circle for X (width)rmsSizeY- RMS size of circle for Y (height)dropRate- Pixel render drop rate
-
fixColors
private void fixColors(java.util.List<WayPoint> visibleSegments)
Apply default color configuration to way segments- Parameters:
visibleSegments- segments visible in the current scope of mv
-
checkCache
private void checkCache()
Check cache validity set necessary flags
-
gpxDataChanged
public void gpxDataChanged(GpxData.GpxDataChangeEvent e)
callback when data is changed, invalidate cached configuration parameters- Specified by:
gpxDataChangedin interfaceGpxData.GpxDataChangeListener- Parameters:
e- The event
-
drawColorBar
public void drawColorBar(java.awt.Graphics2D g, MapView mv)
Draw all GPX arrays- Parameters:
g- the common draw object to usemv- the meta data to current displayed area
-
paintableInvalidated
public void paintableInvalidated(MapViewPaintable.PaintableInvalidationEvent event)
Description copied from interface:MapViewPaintable.PaintableInvalidationListenerCalled whenever aMapViewPaintable.PaintableInvalidationEventis fired. This might be called from any thread.- Specified by:
paintableInvalidatedin interfaceMapViewPaintable.PaintableInvalidationListener- Parameters:
event- The event
-
detachFromMapView
public void detachFromMapView(MapViewPaintable.MapViewEvent event)
Description copied from interface:MapViewPaintable.LayerPainterCalled when the layer is removed from the map view and this painter is not used any more.This method is called once on the painter returned by
AbstractMapViewPaintable.attachToMapView(org.openstreetmap.josm.gui.layer.MapViewPaintable.MapViewEvent)- Specified by:
detachFromMapViewin interfaceMapViewPaintable.LayerPainter- Parameters:
event- The event.
-
-