diff --git a/vtm-android-example/src/org/oscim/android/test/ReverseGeocodeActivity.java b/vtm-android-example/src/org/oscim/android/test/ReverseGeocodeActivity.java index 184f3fb8..e38b4a0b 100644 --- a/vtm-android-example/src/org/oscim/android/test/ReverseGeocodeActivity.java +++ b/vtm-android-example/src/org/oscim/android/test/ReverseGeocodeActivity.java @@ -86,7 +86,7 @@ public class ReverseGeocodeActivity extends MapsforgeMapActivity { GeoPoint p = mMap.viewport().fromScreenPoint(e.getX(), e.getY()); // Read all labeled POI and ways for the area covered by the tiles under touch - float touchRadius = TOUCH_RADIUS * CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI; + float touchRadius = TOUCH_RADIUS * CanvasAdapter.getScale(); long mapSize = MercatorProjection.getMapSize((byte) mMap.getMapPosition().getZoomLevel()); double pixelX = MercatorProjection.longitudeToPixelX(p.getLongitude(), mapSize); double pixelY = MercatorProjection.latitudeToPixelY(p.getLatitude(), mapSize); diff --git a/vtm-android/src/org/oscim/android/canvas/AndroidSvgBitmap.java b/vtm-android/src/org/oscim/android/canvas/AndroidSvgBitmap.java index 55294308..1dcbf287 100644 --- a/vtm-android/src/org/oscim/android/canvas/AndroidSvgBitmap.java +++ b/vtm-android/src/org/oscim/android/canvas/AndroidSvgBitmap.java @@ -1,7 +1,7 @@ /* * Copyright 2010, 2011, 2012 mapsforge.org * Copyright 2013-2014 Ludwig M Brinckmann - * Copyright 2014-2016 devemux86 + * Copyright 2014-2017 devemux86 * * This program is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free Software @@ -78,7 +78,7 @@ public class AndroidSvgBitmap extends AndroidBitmap { private static android.graphics.Bitmap getResourceBitmapImpl(InputStream inputStream, int width, int height, int percent) throws IOException { synchronized (SVG.getVersion()) { - return getResourceBitmap(inputStream, CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI, DEFAULT_SIZE, width, height, percent); + return getResourceBitmap(inputStream, CanvasAdapter.getScale(), DEFAULT_SIZE, width, height, percent); } } diff --git a/vtm-desktop/src/org/oscim/awt/AwtSvgBitmap.java b/vtm-desktop/src/org/oscim/awt/AwtSvgBitmap.java index 42908146..cb8f357c 100644 --- a/vtm-desktop/src/org/oscim/awt/AwtSvgBitmap.java +++ b/vtm-desktop/src/org/oscim/awt/AwtSvgBitmap.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 devemux86 + * Copyright 2015-2017 devemux86 * * This program is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free Software @@ -79,7 +79,7 @@ public class AwtSvgBitmap extends AwtBitmap { private static BufferedImage getResourceBitmapImpl(InputStream inputStream, int width, int height, int percent) throws IOException { synchronized (SVGCache.getSVGUniverse()) { - return getResourceBitmap(inputStream, CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI, DEFAULT_SIZE, width, height, percent); + return getResourceBitmap(inputStream, CanvasAdapter.getScale(), DEFAULT_SIZE, width, height, percent); } } diff --git a/vtm-ios/src/org/oscim/ios/backend/IosSvgBitmap.java b/vtm-ios/src/org/oscim/ios/backend/IosSvgBitmap.java index 19e78a43..760f0281 100644 --- a/vtm-ios/src/org/oscim/ios/backend/IosSvgBitmap.java +++ b/vtm-ios/src/org/oscim/ios/backend/IosSvgBitmap.java @@ -1,6 +1,6 @@ /* * Copyright 2016 Longri - * Copyright 2016 devemux86 + * Copyright 2016-2017 devemux86 * * This program is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free Software @@ -90,7 +90,7 @@ public class IosSvgBitmap extends IosBitmap { } private static UIImage getResourceBitmapImpl(InputStream inputStream, int width, int height, int percent) { - return getResourceBitmap(inputStream, CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI, DEFAULT_SIZE, width, height, percent); + return getResourceBitmap(inputStream, CanvasAdapter.getScale(), DEFAULT_SIZE, width, height, percent); } public IosSvgBitmap(InputStream inputStream, int width, int height, int percent) throws IOException { diff --git a/vtm/src/org/oscim/backend/CanvasAdapter.java b/vtm/src/org/oscim/backend/CanvasAdapter.java index cb737224..58b72e3f 100644 --- a/vtm/src/org/oscim/backend/CanvasAdapter.java +++ b/vtm/src/org/oscim/backend/CanvasAdapter.java @@ -210,6 +210,10 @@ public abstract class CanvasAdapter { return new File(parentPath, pathName); } + public static float getScale() { + return CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI; + } + protected static void init(CanvasAdapter adapter) { g = adapter; } diff --git a/vtm/src/org/oscim/layers/LocationLayer.java b/vtm/src/org/oscim/layers/LocationLayer.java index 05f9ed46..7d89adc4 100644 --- a/vtm/src/org/oscim/layers/LocationLayer.java +++ b/vtm/src/org/oscim/layers/LocationLayer.java @@ -25,7 +25,7 @@ public class LocationLayer extends Layer { public final LocationRenderer locationRenderer; public LocationLayer(Map map) { - this(map, CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI); + this(map, CanvasAdapter.getScale()); } public LocationLayer(Map map, float scale) { diff --git a/vtm/src/org/oscim/layers/marker/utils/ScreenUtils.java b/vtm/src/org/oscim/layers/marker/utils/ScreenUtils.java index b4801caa..b62a0c24 100644 --- a/vtm/src/org/oscim/layers/marker/utils/ScreenUtils.java +++ b/vtm/src/org/oscim/layers/marker/utils/ScreenUtils.java @@ -34,7 +34,7 @@ public class ScreenUtils { * @return Value in PX according to screen density */ public static int getPixels(float dp) { - return (int) (CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI * dp); + return (int) (CanvasAdapter.getScale() * dp); } public static class ClusterDrawable { @@ -66,7 +66,7 @@ public class ScreenUtils { mPaintBorder.setColor(foregroundColor); mPaintBorder.setStyle(Paint.Style.STROKE); - mPaintBorder.setStrokeWidth(2.0f * CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI); + mPaintBorder.setStrokeWidth(2.0f * CanvasAdapter.getScale()); } private void setText(String text) { diff --git a/vtm/src/org/oscim/renderer/LocationRenderer.java b/vtm/src/org/oscim/renderer/LocationRenderer.java index 84af46fb..644b9c4a 100644 --- a/vtm/src/org/oscim/renderer/LocationRenderer.java +++ b/vtm/src/org/oscim/renderer/LocationRenderer.java @@ -73,7 +73,7 @@ public class LocationRenderer extends LayerRenderer { private int mShowAccuracyZoom = SHOW_ACCURACY_ZOOM; public LocationRenderer(Map map, Layer layer) { - this(map, layer, CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI); + this(map, layer, CanvasAdapter.getScale()); } public LocationRenderer(Map map, Layer layer, float scale) { diff --git a/vtm/src/org/oscim/scalebar/DefaultMapScaleBar.java b/vtm/src/org/oscim/scalebar/DefaultMapScaleBar.java index afaf5569..07679f93 100644 --- a/vtm/src/org/oscim/scalebar/DefaultMapScaleBar.java +++ b/vtm/src/org/oscim/scalebar/DefaultMapScaleBar.java @@ -1,7 +1,7 @@ /* * Copyright 2010, 2011, 2012, 2013 mapsforge.org * Copyright 2014 Ludwig M Brinckmann - * Copyright 2014-2016 devemux86 + * Copyright 2014-2017 devemux86 * Copyright 2014 Erik Duisters * Copyright 2014 Christian Pesch * @@ -49,7 +49,7 @@ public class DefaultMapScaleBar extends MapScaleBar { private final Paint paintScaleTextStroke; public DefaultMapScaleBar(Map map) { - this(map, CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI); + this(map, CanvasAdapter.getScale()); } public DefaultMapScaleBar(Map map, float scale) { diff --git a/vtm/src/org/oscim/theme/ThemeLoader.java b/vtm/src/org/oscim/theme/ThemeLoader.java index adcafee5..45e2b8ad 100644 --- a/vtm/src/org/oscim/theme/ThemeLoader.java +++ b/vtm/src/org/oscim/theme/ThemeLoader.java @@ -53,7 +53,7 @@ public class ThemeLoader { else t = USE_ATLAS ? XmlAtlasThemeBuilder.read(theme, themeCallback) : XmlThemeBuilder.read(theme, themeCallback); if (t != null) - t.scaleTextSize(CanvasAdapter.textScale + (CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI - 1)); + t.scaleTextSize(CanvasAdapter.textScale + (CanvasAdapter.getScale() - 1)); return t; } } diff --git a/vtm/src/org/oscim/theme/XmlMapsforgeThemeBuilder.java b/vtm/src/org/oscim/theme/XmlMapsforgeThemeBuilder.java index 714b6a53..db1d59ff 100644 --- a/vtm/src/org/oscim/theme/XmlMapsforgeThemeBuilder.java +++ b/vtm/src/org/oscim/theme/XmlMapsforgeThemeBuilder.java @@ -169,8 +169,8 @@ public class XmlMapsforgeThemeBuilder extends DefaultHandler { public XmlMapsforgeThemeBuilder(ThemeFile theme, ThemeCallback themeCallback) { mTheme = theme; mThemeCallback = themeCallback; - mScale = CanvasAdapter.scale + (CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI - 1); - mScale2 = CanvasAdapter.scale + (CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI - 1) * 0.5f; + mScale = CanvasAdapter.scale + (CanvasAdapter.getScale() - 1); + mScale2 = CanvasAdapter.scale + (CanvasAdapter.getScale() - 1) * 0.5f; } @Override diff --git a/vtm/src/org/oscim/theme/XmlThemeBuilder.java b/vtm/src/org/oscim/theme/XmlThemeBuilder.java index b83a63a7..890cbee7 100644 --- a/vtm/src/org/oscim/theme/XmlThemeBuilder.java +++ b/vtm/src/org/oscim/theme/XmlThemeBuilder.java @@ -169,8 +169,8 @@ public class XmlThemeBuilder extends DefaultHandler { public XmlThemeBuilder(ThemeFile theme, ThemeCallback themeCallback) { mTheme = theme; mThemeCallback = themeCallback; - mScale = CanvasAdapter.scale + (CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI - 1); - mScale2 = CanvasAdapter.scale + (CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI - 1) * 0.5f; + mScale = CanvasAdapter.scale + (CanvasAdapter.getScale() - 1); + mScale2 = CanvasAdapter.scale + (CanvasAdapter.getScale() - 1) * 0.5f; } @Override diff --git a/vtm/src/org/oscim/tiling/source/mapfile/MapDatabase.java b/vtm/src/org/oscim/tiling/source/mapfile/MapDatabase.java index 11da4e4c..26f3ff70 100644 --- a/vtm/src/org/oscim/tiling/source/mapfile/MapDatabase.java +++ b/vtm/src/org/oscim/tiling/source/mapfile/MapDatabase.java @@ -415,7 +415,7 @@ public class MapDatabase implements ITileDataSource { if (queryParameters.queryZoomLevel > MapFileTileSource.MAX_ZOOM_LEVEL) buffer = Tile.SIZE / 2; else - buffer = (int) (16 * CanvasAdapter.dpi / CanvasAdapter.DEFAULT_DPI + 0.5f); + buffer = (int) (16 * CanvasAdapter.getScale() + 0.5f); xmin = -buffer; ymin = -buffer;