rename MapGenerator -> TileGenerator
This commit is contained in:
parent
a1317a9de5
commit
28cc35a32d
@ -25,8 +25,8 @@ public final class MapDatabaseFactory {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param attributeSet
|
* @param attributeSet
|
||||||
* A collection of attributes which includes the desired MapGenerator.
|
* A collection of attributes which includes the desired MapDatabase.
|
||||||
* @return a new MapGenerator instance.
|
* @return a new MapDatabase instance.
|
||||||
*/
|
*/
|
||||||
public static IMapDatabase createMapDatabase(AttributeSet attributeSet) {
|
public static IMapDatabase createMapDatabase(AttributeSet attributeSet) {
|
||||||
String mapDatabaseName = attributeSet.getAttributeValue(null,
|
String mapDatabaseName = attributeSet.getAttributeValue(null,
|
||||||
@ -53,7 +53,7 @@ public final class MapDatabaseFactory {
|
|||||||
/**
|
/**
|
||||||
* @param mapDatabase
|
* @param mapDatabase
|
||||||
* the internal MapDatabase implementation.
|
* the internal MapDatabase implementation.
|
||||||
* @return a new MapGenerator instance.
|
* @return a new MapDatabase instance.
|
||||||
*/
|
*/
|
||||||
public static IMapDatabase createMapDatabase(MapDatabases mapDatabase) {
|
public static IMapDatabase createMapDatabase(MapDatabases mapDatabase) {
|
||||||
switch (mapDatabase) {
|
switch (mapDatabase) {
|
||||||
|
|||||||
@ -1,30 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2010, 2011, 2012 mapsforge.org
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
* Foundation, either version 3 of the License, or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public License along with
|
|
||||||
* this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package org.oscim.view;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enumeration of all internal MapGenerator implementations.
|
|
||||||
*/
|
|
||||||
public enum MapRenderers {
|
|
||||||
/**
|
|
||||||
* texture renderer.
|
|
||||||
*/
|
|
||||||
SW_RENDERER,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* opengl renderer.
|
|
||||||
*/
|
|
||||||
GL_RENDERER
|
|
||||||
}
|
|
||||||
@ -38,7 +38,7 @@ import org.oscim.theme.Theme;
|
|||||||
import org.oscim.view.generator.JobQueue;
|
import org.oscim.view.generator.JobQueue;
|
||||||
import org.oscim.view.generator.JobTile;
|
import org.oscim.view.generator.JobTile;
|
||||||
import org.oscim.view.generator.MapWorker;
|
import org.oscim.view.generator.MapWorker;
|
||||||
import org.oscim.view.renderer.MapGenerator;
|
import org.oscim.view.renderer.TileGenerator;
|
||||||
import org.oscim.view.renderer.MapRenderer;
|
import org.oscim.view.renderer.MapRenderer;
|
||||||
import org.xml.sax.SAXException;
|
import org.xml.sax.SAXException;
|
||||||
|
|
||||||
@ -156,13 +156,13 @@ public class MapView extends FrameLayout {
|
|||||||
mapDatabase = MapDatabaseFactory.createMapDatabase(mapDatabaseType);
|
mapDatabase = MapDatabaseFactory.createMapDatabase(mapDatabaseType);
|
||||||
}
|
}
|
||||||
|
|
||||||
MapGenerator mapGenerator = new MapGenerator(this);
|
TileGenerator tileGenerator = new TileGenerator(this);
|
||||||
mapGenerator.setMapDatabase(mapDatabase);
|
tileGenerator.setMapDatabase(mapDatabase);
|
||||||
|
|
||||||
if (i == 0)
|
if (i == 0)
|
||||||
mMapDatabase = mapDatabase;
|
mMapDatabase = mapDatabase;
|
||||||
|
|
||||||
mMapWorkers[i] = new MapWorker(i, mJobQueue, mapGenerator, mMapRenderer);
|
mMapWorkers[i] = new MapWorker(i, mJobQueue, tileGenerator, mMapRenderer);
|
||||||
mMapWorkers[i].start();
|
mMapWorkers[i].start();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,6 +188,8 @@ public class MapView extends FrameLayout {
|
|||||||
|
|
||||||
mMapZoomControls = new MapZoomControls(mapActivity, this);
|
mMapZoomControls = new MapZoomControls(mapActivity, this);
|
||||||
mMapZoomControls.setShowMapZoomControls(true);
|
mMapZoomControls.setShowMapZoomControls(true);
|
||||||
|
|
||||||
|
enableRotation = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -263,8 +265,8 @@ public class MapView extends FrameLayout {
|
|||||||
|
|
||||||
for (MapWorker mapWorker : mMapWorkers) {
|
for (MapWorker mapWorker : mMapWorkers) {
|
||||||
|
|
||||||
MapGenerator mapGenerator = mapWorker.getMapGenerator();
|
TileGenerator tileGenerator = mapWorker.getMapGenerator();
|
||||||
IMapDatabase mapDatabase = mapGenerator.getMapDatabase();
|
IMapDatabase mapDatabase = tileGenerator.getMapDatabase();
|
||||||
|
|
||||||
mapDatabase.close();
|
mapDatabase.close();
|
||||||
openResult = mapDatabase.open(null);
|
openResult = mapDatabase.open(null);
|
||||||
@ -322,7 +324,7 @@ public class MapView extends FrameLayout {
|
|||||||
if (mDebugDatabase)
|
if (mDebugDatabase)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
MapGenerator mapGenerator;
|
TileGenerator tileGenerator;
|
||||||
|
|
||||||
Log.i(TAG, "setMapDatabase " + mapDatabaseType.name());
|
Log.i(TAG, "setMapDatabase " + mapDatabaseType.name());
|
||||||
|
|
||||||
@ -334,9 +336,9 @@ public class MapView extends FrameLayout {
|
|||||||
mapWorkersPause(true);
|
mapWorkersPause(true);
|
||||||
|
|
||||||
for (MapWorker mapWorker : mMapWorkers) {
|
for (MapWorker mapWorker : mMapWorkers) {
|
||||||
mapGenerator = mapWorker.getMapGenerator();
|
tileGenerator = mapWorker.getMapGenerator();
|
||||||
|
|
||||||
mapGenerator.setMapDatabase(MapDatabaseFactory
|
tileGenerator.setMapDatabase(MapDatabaseFactory
|
||||||
.createMapDatabase(mapDatabaseType));
|
.createMapDatabase(mapDatabaseType));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -14,7 +14,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.oscim.view;
|
package org.oscim.view;
|
||||||
|
|
||||||
import org.oscim.view.renderer.MapGenerator;
|
import org.oscim.view.renderer.TileGenerator;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
@ -220,7 +220,7 @@ public class MapZoomControls {
|
|||||||
/**
|
/**
|
||||||
* Sets the maximum zoom level of the map.
|
* Sets the maximum zoom level of the map.
|
||||||
* <p>
|
* <p>
|
||||||
* The maximum possible zoom level of the MapView depends also on the current {@link MapGenerator}. For example,
|
* The maximum possible zoom level of the MapView depends also on the current {@link TileGenerator}. For example,
|
||||||
* downloading map tiles may only be possible up to a certain zoom level. Setting a higher maximum zoom level has no
|
* downloading map tiles may only be possible up to a certain zoom level. Setting a higher maximum zoom level has no
|
||||||
* effect in this case.
|
* effect in this case.
|
||||||
*
|
*
|
||||||
|
|||||||
@ -15,7 +15,7 @@
|
|||||||
package org.oscim.view.generator;
|
package org.oscim.view.generator;
|
||||||
|
|
||||||
import org.oscim.utils.PausableThread;
|
import org.oscim.utils.PausableThread;
|
||||||
import org.oscim.view.renderer.MapGenerator;
|
import org.oscim.view.renderer.TileGenerator;
|
||||||
import org.oscim.view.renderer.MapRenderer;
|
import org.oscim.view.renderer.MapRenderer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -25,7 +25,7 @@ import org.oscim.view.renderer.MapRenderer;
|
|||||||
public class MapWorker extends PausableThread {
|
public class MapWorker extends PausableThread {
|
||||||
private final String THREAD_NAME;
|
private final String THREAD_NAME;
|
||||||
private final JobQueue mJobQueue;
|
private final JobQueue mJobQueue;
|
||||||
private final MapGenerator mMapGenerator;
|
private final TileGenerator mMapGenerator;
|
||||||
private final MapRenderer mMapRenderer;
|
private final MapRenderer mMapRenderer;
|
||||||
|
|
||||||
// private final int mPrio;
|
// private final int mPrio;
|
||||||
@ -33,23 +33,23 @@ public class MapWorker extends PausableThread {
|
|||||||
/**
|
/**
|
||||||
* @param id
|
* @param id
|
||||||
* thread id
|
* thread id
|
||||||
* @param mapGenerator
|
* @param tileGenerator
|
||||||
* ...
|
* ...
|
||||||
* @param mapRenderer
|
* @param mapRenderer
|
||||||
* ...
|
* ...
|
||||||
*/
|
*/
|
||||||
public MapWorker(int id, JobQueue jobQueue, MapGenerator mapGenerator,
|
public MapWorker(int id, JobQueue jobQueue, TileGenerator tileGenerator,
|
||||||
MapRenderer mapRenderer) {
|
MapRenderer mapRenderer) {
|
||||||
super();
|
super();
|
||||||
mJobQueue = jobQueue;
|
mJobQueue = jobQueue;
|
||||||
mMapGenerator = mapGenerator;
|
mMapGenerator = tileGenerator;
|
||||||
mMapRenderer = mapRenderer;
|
mMapRenderer = mapRenderer;
|
||||||
|
|
||||||
THREAD_NAME = "MapWorker" + id;
|
THREAD_NAME = "MapWorker" + id;
|
||||||
// mPrio = Math.max(Thread.MIN_PRIORITY + id, Thread.NORM_PRIORITY - 1);
|
// mPrio = Math.max(Thread.MIN_PRIORITY + id, Thread.NORM_PRIORITY - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
public MapGenerator getMapGenerator() {
|
public TileGenerator getMapGenerator() {
|
||||||
return mMapGenerator;
|
return mMapGenerator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,7 @@ class MapTile extends JobTile {
|
|||||||
TextTexture texture;
|
TextTexture texture;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tile data set by MapGenerator:
|
* Tile data set by TileGenerator:
|
||||||
*/
|
*/
|
||||||
LineLayer lineLayers;
|
LineLayer lineLayers;
|
||||||
PolygonLayer polygonLayers;
|
PolygonLayer polygonLayers;
|
||||||
|
|||||||
@ -39,9 +39,9 @@ import android.util.Log;
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
public class TileGenerator implements IRenderCallback, IMapDatabaseCallback {
|
||||||
|
|
||||||
private static String TAG = MapGenerator.class.getName();
|
private static String TAG = TileGenerator.class.getName();
|
||||||
|
|
||||||
private static final double PI180 = (Math.PI / 180) / 1000000.0;
|
private static final double PI180 = (Math.PI / 180) / 1000000.0;
|
||||||
private static final double PIx4 = Math.PI * 4;
|
private static final double PIx4 = Math.PI * 4;
|
||||||
@ -88,8 +88,8 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
private final Tag[] debugTagWay = { new Tag("debug", "way") };
|
private final Tag[] debugTagWay = { new Tag("debug", "way") };
|
||||||
private final Tag[] debugTagArea = { new Tag("debug", "area") };
|
private final Tag[] debugTagArea = { new Tag("debug", "area") };
|
||||||
private final float[] debugBoxCoords = { 0, 0, 0, Tile.TILE_SIZE,
|
private final float[] debugBoxCoords = { 0, 0, 0, Tile.TILE_SIZE,
|
||||||
Tile.TILE_SIZE, Tile.TILE_SIZE, Tile.TILE_SIZE, 0 };
|
Tile.TILE_SIZE, Tile.TILE_SIZE, Tile.TILE_SIZE, 0, 0, 0 };
|
||||||
private final short[] debugBoxIndex = { 8 };
|
private final short[] debugBoxIndex = { 10 };
|
||||||
|
|
||||||
private float mProjectionScaleFactor;
|
private float mProjectionScaleFactor;
|
||||||
|
|
||||||
@ -97,7 +97,7 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
* @param mapView
|
* @param mapView
|
||||||
* the MapView
|
* the MapView
|
||||||
*/
|
*/
|
||||||
public MapGenerator(MapView mapView) {
|
public TileGenerator(MapView mapView) {
|
||||||
Log.d(TAG, "init DatabaseRenderer");
|
Log.d(TAG, "init DatabaseRenderer");
|
||||||
mMapView = mapView;
|
mMapView = mapView;
|
||||||
}
|
}
|
||||||
@ -161,7 +161,7 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
// Log.d(TAG, "renderPointOfInterest: " + mTagName);
|
// Log.d(TAG, "renderPointOfInterest: " + mTagName);
|
||||||
|
|
||||||
// mNodeRenderInstructions =
|
// mNodeRenderInstructions =
|
||||||
MapGenerator.renderTheme.matchNode(this, tags, mCurrentTile.zoomLevel);
|
TileGenerator.renderTheme.matchNode(this, tags, mCurrentTile.zoomLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -205,7 +205,7 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
// mRenderInstructions[i].renderWay(this, tags);
|
// mRenderInstructions[i].renderWay(this, tags);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
mRenderInstructions = MapGenerator.renderTheme.matchWay(this, tags,
|
mRenderInstructions = TileGenerator.renderTheme.matchWay(this, tags,
|
||||||
(byte) (mCurrentTile.zoomLevel + 0),
|
(byte) (mCurrentTile.zoomLevel + 0),
|
||||||
closed, true);
|
closed, true);
|
||||||
|
|
||||||
@ -221,10 +221,10 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
mTagName = new Tag("name", tags[0].key + ":" + tags[0].value, false);
|
mTagName = new Tag("name", tags[0].key + ":" + tags[0].value, false);
|
||||||
|
|
||||||
if (closed) {
|
if (closed) {
|
||||||
mRenderInstructions = MapGenerator.renderTheme.matchWay(this, debugTagArea,
|
mRenderInstructions = TileGenerator.renderTheme.matchWay(this, debugTagArea,
|
||||||
(byte) 0, true, true);
|
(byte) 0, true, true);
|
||||||
} else {
|
} else {
|
||||||
mRenderInstructions = MapGenerator.renderTheme.matchWay(this, debugTagWay,
|
mRenderInstructions = TileGenerator.renderTheme.matchWay(this, debugTagWay,
|
||||||
(byte) 0, true, true);
|
(byte) 0, true, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -438,7 +438,7 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
mLevels = MapGenerator.renderTheme.getLevels();
|
mLevels = TileGenerator.renderTheme.getLevels();
|
||||||
|
|
||||||
// limit stroke scale at z=17
|
// limit stroke scale at z=17
|
||||||
if (tile.zoomLevel < STROKE_MAX_ZOOM_LEVEL)
|
if (tile.zoomLevel < STROKE_MAX_ZOOM_LEVEL)
|
||||||
@ -471,12 +471,12 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
+ tile.toString(), false);
|
+ tile.toString(), false);
|
||||||
mPoiX = Tile.TILE_SIZE >> 1;
|
mPoiX = Tile.TILE_SIZE >> 1;
|
||||||
mPoiY = 10;
|
mPoiY = 10;
|
||||||
MapGenerator.renderTheme.matchNode(this, debugTagWay, (byte) 0);
|
TileGenerator.renderTheme.matchNode(this, debugTagWay, (byte) 0);
|
||||||
|
|
||||||
mIndices = debugBoxIndex;
|
mIndices = debugBoxIndex;
|
||||||
mCoords = debugBoxCoords;
|
mCoords = debugBoxCoords;
|
||||||
mDrawingLayer = 10 * mLevels;
|
mDrawingLayer = 10 * mLevels;
|
||||||
MapGenerator.renderTheme.matchWay(this, debugTagBox, (byte) 0, false, true);
|
TileGenerator.renderTheme.matchWay(this, debugTagBox, (byte) 0, false, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
tile.lineLayers = mLineLayers;
|
tile.lineLayers = mLineLayers;
|
||||||
@ -530,13 +530,13 @@ public class MapGenerator implements IRenderCallback, IMapDatabaseCallback {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setRenderTheme(RenderTheme theme) {
|
public void setRenderTheme(RenderTheme theme) {
|
||||||
MapGenerator.renderTheme = theme;
|
TileGenerator.renderTheme = theme;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean checkWay(Tag[] tags, boolean closed) {
|
public boolean checkWay(Tag[] tags, boolean closed) {
|
||||||
|
|
||||||
mRenderInstructions = MapGenerator.renderTheme.matchWay(this, tags,
|
mRenderInstructions = TileGenerator.renderTheme.matchWay(this, tags,
|
||||||
(byte) (mCurrentTile.zoomLevel + 0), closed, false);
|
(byte) (mCurrentTile.zoomLevel + 0), closed, false);
|
||||||
|
|
||||||
return mRenderInstructions != null;
|
return mRenderInstructions != null;
|
||||||
Loading…
x
Reference in New Issue
Block a user