TileMapApp: improve POI overlays

This commit is contained in:
Hannes Janetzek
2012-10-30 11:56:46 +01:00
parent cbceb2c6e9
commit 0eda94864f
6 changed files with 67 additions and 86 deletions

View File

@@ -410,10 +410,10 @@ public class TileGenerator implements IRenderCallback, IMapDatabaseCallback {
mLevels = TileGenerator.renderTheme.getLevels();
// limit stroke scale at z=17
if (tile.zoomLevel < STROKE_MAX_ZOOM_LEVEL)
setScaleStrokeWidth(tile.zoomLevel);
else
setScaleStrokeWidth(STROKE_MAX_ZOOM_LEVEL);
// if (tile.zoomLevel < STROKE_MAX_ZOOM_LEVEL)
setScaleStrokeWidth(tile.zoomLevel);
// else
// setScaleStrokeWidth(STROKE_MAX_ZOOM_LEVEL);
// acount for area changes with latitude
mProjectionScaleFactor = 0.5f + 0.5f * (
@@ -466,7 +466,6 @@ public class TileGenerator implements IRenderCallback, IMapDatabaseCallback {
/**
* Sets the scale stroke factor for the given zoom level.
*
* @param zoomLevel
* the zoom level for which the scale stroke factor should be
* set.

View File

@@ -26,6 +26,7 @@ import org.oscim.renderer.layer.VertexPool;
import org.oscim.view.MapView;
import org.oscim.view.MapViewPosition;
import android.util.FloatMath;
import android.util.Log;
public class TileManager {
@@ -155,7 +156,6 @@ public class TileManager {
* Update list of visible tiles and passes them to TileManager, when not
* available tiles are created and added to JobQueue (mapView.addJobs) for
* loading by TileGenerator class
*
* @param clear
* whether to clear and reload all tiles
*/
@@ -292,7 +292,6 @@ public class TileManager {
/**
* set mNewTiles for the visible tiles and pass it to GLRenderer, add jobs
* for not yet loaded tiles
*
* @param mapPosition
* the current MapPosition
* @param zdir
@@ -487,8 +486,8 @@ public class TileManager {
dy = (t.pixelY + h) - y;
dx %= center;
dy %= center;
t.distance = ((dx > 0 ? dx : -dx) + (dy > 0 ? dy : -dy)) * 0.25f;
// t.distance = FloatMath.sqrt((dx * dx + dy * dy)) * 0.25f;
//t.distance = ((dx > 0 ? dx : -dx) + (dy > 0 ? dy : -dy)) * 0.25f;
t.distance = FloatMath.sqrt((dx * dx + dy * dy)) * 0.25f;
} else if (diff > 0) {
// tile zoom level is child of current
@@ -502,8 +501,8 @@ public class TileManager {
}
dx %= center;
dy %= center;
t.distance = ((dx > 0 ? dx : -dx) + (dy > 0 ? dy : -dy));
// t.distance = FloatMath.sqrt((dx * dx + dy * dy));
//t.distance = ((dx > 0 ? dx : -dx) + (dy > 0 ? dy : -dy));
t.distance = FloatMath.sqrt((dx * dx + dy * dy));
} else {
// tile zoom level is parent of current
@@ -511,8 +510,8 @@ public class TileManager {
dy = ((t.pixelY + h) << -diff) - y;
dx %= center;
dy %= center;
t.distance = ((dx > 0 ? dx : -dx) + (dy > 0 ? dy : -dy)) * (-diff * 0.5f);
// t.distance = FloatMath.sqrt((dx * dx + dy * dy)) * (-diff * 0.5f);
//t.distance = ((dx > 0 ? dx : -dx) + (dy > 0 ? dy : -dy)) * (-diff * 0.5f);
t.distance = FloatMath.sqrt((dx * dx + dy * dy)) * (-diff * 0.5f);
}
}
}
@@ -609,7 +608,6 @@ public class TileManager {
/**
* called from MapWorker Thread when tile is loaded by TileGenerator
*
* @param jobTile
* ...
* @return ...