From b110314077dd93999f685516cff74ed60970a7f1 Mon Sep 17 00:00:00 2001 From: Emux <devemux86@gmail.com> Date: Tue, 22 Aug 2017 19:17:57 +0300 Subject: [PATCH] vtm-theme-comparator: use same tile size and synchronize zoom level #387 --- .../org/oscim/theme/comparator/BothMapPositionHandler.java | 7 ++++--- .../theme/comparator/mapsforge/MapsforgeMapPanel.java | 4 ++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/vtm-theme-comparator/src/org/oscim/theme/comparator/BothMapPositionHandler.java b/vtm-theme-comparator/src/org/oscim/theme/comparator/BothMapPositionHandler.java index 9042c61c..f9f75af0 100644 --- a/vtm-theme-comparator/src/org/oscim/theme/comparator/BothMapPositionHandler.java +++ b/vtm-theme-comparator/src/org/oscim/theme/comparator/BothMapPositionHandler.java @@ -1,5 +1,6 @@ /* * Copyright 2017 Longri + * Copyright 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 @@ -41,7 +42,7 @@ public class BothMapPositionHandler implements LocationDataListener { @Override public void run() { mapsforgeMapPanel.setCoordinate(latitude, longitude, zoomLevel); - vtmPanel.setCoordinate(latitude, longitude, (byte) (zoomLevel - 1)); + vtmPanel.setCoordinate(latitude, longitude, zoomLevel); storePositionOnPrefs(latitude, longitude, zoomLevel); } }); @@ -52,7 +53,7 @@ public class BothMapPositionHandler implements LocationDataListener { Gdx.app.postRunnable(new Runnable() { @Override public void run() { - vtmPanel.setCoordinate(mapPosition.latLong.latitude, mapPosition.latLong.longitude, (byte) (mapPosition.zoomLevel - 1)); + vtmPanel.setCoordinate(mapPosition.latLong.latitude, mapPosition.latLong.longitude, mapPosition.zoomLevel); //TODO wy is zoom level on vtm x-1? storePositionOnPrefs(mapPosition.latLong.latitude, mapPosition.latLong.longitude, mapPosition.zoomLevel); } @@ -60,7 +61,7 @@ public class BothMapPositionHandler implements LocationDataListener { } public void mapPositionChangedFromVtmMap(org.oscim.core.MapPosition mapPosition) { - mapsforgeMapPanel.setCoordinate(mapPosition.getLatitude(), mapPosition.getLongitude(), (byte) (mapPosition.zoomLevel + 1)); + mapsforgeMapPanel.setCoordinate(mapPosition.getLatitude(), mapPosition.getLongitude(), (byte) mapPosition.zoomLevel); storePositionOnPrefs(mapPosition.getLatitude(), mapPosition.getLongitude(), (byte) (mapPosition.zoomLevel)); } diff --git a/vtm-theme-comparator/src/org/oscim/theme/comparator/mapsforge/MapsforgeMapPanel.java b/vtm-theme-comparator/src/org/oscim/theme/comparator/mapsforge/MapsforgeMapPanel.java index 18bd113e..872d720c 100644 --- a/vtm-theme-comparator/src/org/oscim/theme/comparator/mapsforge/MapsforgeMapPanel.java +++ b/vtm-theme-comparator/src/org/oscim/theme/comparator/mapsforge/MapsforgeMapPanel.java @@ -36,6 +36,7 @@ import org.mapsforge.map.reader.MapFile; import org.mapsforge.map.rendertheme.ExternalRenderTheme; import org.mapsforge.map.rendertheme.InternalRenderTheme; import org.mapsforge.map.rendertheme.XmlRenderTheme; +import org.oscim.core.Tile; import org.oscim.theme.comparator.BothMapPositionHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -61,6 +62,9 @@ public class MapsforgeMapPanel extends JPanel { this.setLayout(null); mapView = createMapView(); + // Use same tile size with VTM + mapView.getModel().displayModel.setFixedTileSize(Tile.SIZE); + PreferencesFacade preferencesFacade = new JavaPreferences(Preferences.userNodeForPackage(MapView.class)); final Model model = mapView.getModel(); model.init(preferencesFacade);