From 0c39ff8be0c7ed657f35d6695c577c03532a20bd Mon Sep 17 00:00:00 2001 From: Izumi Kawashima <schedul.xor@gmail.com> Date: Mon, 21 Nov 2016 11:52:31 +0900 Subject: [PATCH] Made {X},{Y},{Z} customizable in derived tile sources for tile URL (#244) --- .../oscim/tiling/source/UrlTileSource.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/vtm/src/org/oscim/tiling/source/UrlTileSource.java b/vtm/src/org/oscim/tiling/source/UrlTileSource.java index 3ef41493..caf20786 100644 --- a/vtm/src/org/oscim/tiling/source/UrlTileSource.java +++ b/vtm/src/org/oscim/tiling/source/UrlTileSource.java @@ -68,7 +68,7 @@ public abstract class UrlTileSource extends TileSource { } - public final static TileUrlFormatter URL_FORMATTER = new DefaultTileUrlFormatter(); + public static final TileUrlFormatter URL_FORMATTER = new DefaultTileUrlFormatter(); private final URL mUrl; private final String[] mTilePath; @@ -174,7 +174,19 @@ public abstract class UrlTileSource extends TileSource { return mHttpFactory.create(this); } - static class DefaultTileUrlFormatter implements TileUrlFormatter { + public int tileXToUrlX(int tileX) { + return tileX; + } + + public int tileYToUrlY(int tileY) { + return tileY; + } + + public int tileZToUrlZ(int tileZ) { + return tileZ; + } + + private static class DefaultTileUrlFormatter implements TileUrlFormatter { @Override public String formatTilePath(UrlTileSource tileSource, Tile tile) { @@ -183,13 +195,13 @@ public abstract class UrlTileSource extends TileSource { if (b.length() == 1) { switch (b.charAt(0)) { case 'X': - sb.append(tile.tileX); + sb.append(tileSource.tileXToUrlX(tile.tileX)); continue; case 'Y': - sb.append(tile.tileY); + sb.append(tileSource.tileYToUrlY(tile.tileY)); continue; case 'Z': - sb.append(tile.zoomLevel); + sb.append(tileSource.tileZToUrlZ(tile.zoomLevel)); continue; default: break;