make MapTile.node final

This commit is contained in:
Hannes Janetzek 2014-02-04 13:32:37 +01:00
parent 3ea697763f
commit 8aa9cafa5e
3 changed files with 7 additions and 8 deletions

View File

@ -69,8 +69,8 @@ public class MapTile extends Tile {
/** /**
* absolute tile coordinates: tileX,Y / Math.pow(2, zoomLevel) * absolute tile coordinates: tileX,Y / Math.pow(2, zoomLevel)
*/ */
public double x; public final double x;
public double y; public final double y;
/** /**
* distance from map center * distance from map center
@ -102,7 +102,7 @@ public class MapTile extends Tile {
/** /**
* Pointer to access relatives in QuadTree * Pointer to access relatives in QuadTree
*/ */
public TileNode node; public final TileNode node;
/** /**
* to avoid drawing a tile twice per frame * to avoid drawing a tile twice per frame
@ -141,10 +141,11 @@ public class MapTile extends Tile {
// e.g. x:-1,y:0,z:1 for x:1,y:0 // e.g. x:-1,y:0,z:1 for x:1,y:0
MapTile holder; MapTile holder;
public MapTile(int tileX, int tileY, byte zoomLevel) { public MapTile(TileNode node, int tileX, int tileY, byte zoomLevel) {
super(tileX, tileY, zoomLevel); super(tileX, tileY, zoomLevel);
this.x = (double) tileX / (1 << zoomLevel); this.x = (double) tileX / (1 << zoomLevel);
this.y = (double) tileY / (1 << zoomLevel); this.y = (double) tileY / (1 << zoomLevel);
this.node = node;
} }
/** /**

View File

@ -90,8 +90,7 @@ public class TileManager {
@Override @Override
public MapTile create(int x, int y, int z) { public MapTile create(int x, int y, int z) {
TileNode t = super.add(x, y, z); TileNode t = super.add(x, y, z);
t.item = new MapTile(x, y, (byte) z); t.item = new MapTile(t, x, y, (byte) z);
t.item.node = t;
return t.item; return t.item;
} }
@ -106,7 +105,6 @@ public class TileManager {
super.remove(t.node); super.remove(t.node);
t.node.item = null; t.node.item = null;
t.node = null;
} }
@Override @Override

View File

@ -405,7 +405,7 @@ public class TileRenderer extends LayerRenderer {
//log.error(" + mNumTileHolder"); //log.error(" + mNumTileHolder");
break; break;
} }
MapTile holder = new MapTile(x, y, (byte) mZoom); MapTile holder = new MapTile(null, x, y, (byte) mZoom);
holder.isVisible = true; holder.isVisible = true;
holder.holder = tile; holder.holder = tile;
tile.isVisible = true; tile.isVisible = true;