vtm-theme-comparator: use same tile size and synchronize zoom level #387

This commit is contained in:
Emux 2017-08-22 19:17:57 +03:00
parent 1cf4d3a60b
commit b110314077
2 changed files with 8 additions and 3 deletions

View File

@ -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));
}

View File

@ -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);