|
4 | 4 | import static java.util.concurrent.TimeUnit.MILLISECONDS;
|
5 | 5 |
|
6 | 6 | import java.awt.Color;
|
| 7 | +import java.awt.Point; |
7 | 8 | import java.awt.image.DataBufferByte;
|
8 | 9 | import java.io.IOException;
|
9 | 10 | import java.lang.reflect.Field;
|
10 | 11 | import java.util.ArrayList;
|
11 | 12 | import java.util.List;
|
| 13 | +import java.util.Map; |
12 | 14 | import java.util.concurrent.Future;
|
13 | 15 | import java.util.concurrent.ExecutorService;
|
14 | 16 | import java.util.concurrent.RejectedExecutionException;
|
15 | 17 | import java.util.concurrent.ThreadPoolExecutor;
|
16 | 18 |
|
| 19 | +import org.openstreetmap.gui.jmapviewer.Coordinate; |
| 20 | +import org.openstreetmap.gui.jmapviewer.Projected; |
17 | 21 | import org.openstreetmap.gui.jmapviewer.Tile;
|
| 22 | +import org.openstreetmap.gui.jmapviewer.TileRange; |
| 23 | +import org.openstreetmap.gui.jmapviewer.TileXY; |
| 24 | +import org.openstreetmap.gui.jmapviewer.interfaces.ICoordinate; |
| 25 | +import org.openstreetmap.gui.jmapviewer.interfaces.IProjected; |
18 | 26 | import org.openstreetmap.gui.jmapviewer.interfaces.TileSource;
|
| 27 | +import org.openstreetmap.gui.jmapviewer.tilesources.AbstractTMSTileSource; |
| 28 | +import org.openstreetmap.gui.jmapviewer.tilesources.TileSourceInfo; |
19 | 29 | import org.openstreetmap.josm.TestUtils;
|
20 | 30 | import org.openstreetmap.josm.data.Bounds;
|
21 | 31 |
|
@@ -53,12 +63,80 @@ public static QuadTreeNodeDynamicReference[] createDynamicReferences(QuadTreeMet
|
53 | 63 | };
|
54 | 64 | QuadTreeNodeDynamicReference[] refs = new QuadTreeNodeDynamicReference[referenceTiles_.length];
|
55 | 65 | for (int i = 0; i < referenceTiles_.length; i++) {
|
56 |
| - Tile mockTile = new Tile(null, (int) referenceTiles_[i][1], (int) referenceTiles_[i][2], (int) referenceTiles_[i][0]); |
| 66 | + Tile mockTile = new Tile(new TileStubSource(), (int) referenceTiles_[i][1], |
| 67 | + (int) referenceTiles_[i][2], (int) referenceTiles_[i][0]); |
57 | 68 | refs[i] = new QuadTreeNodeDynamicReference(quadTreeMeta, mockTile);
|
58 | 69 | }
|
59 | 70 | return refs;
|
60 | 71 | }
|
61 | 72 |
|
| 73 | + private static final class TileStubSource extends AbstractTMSTileSource { |
| 74 | + private TileStubSource() { |
| 75 | + super(new TileSourceInfo()); |
| 76 | + } |
| 77 | + |
| 78 | + @Override |
| 79 | + public Map<String, String> getMetadata(Map<String, List<String>> headers) { |
| 80 | + // TODO Auto-generated method stub |
| 81 | + return null; |
| 82 | + } |
| 83 | + |
| 84 | + @Override |
| 85 | + public double getDistance(double la1, double lo1, double la2, double lo2) { |
| 86 | + // TODO Auto-generated method stub |
| 87 | + return 0; |
| 88 | + } |
| 89 | + |
| 90 | + @Override |
| 91 | + public Point latLonToXY(double lat, double lon, int zoom) { |
| 92 | + // TODO Auto-generated method stub |
| 93 | + return null; |
| 94 | + } |
| 95 | + |
| 96 | + @Override |
| 97 | + public ICoordinate xyToLatLon(int x, int y, int zoom) { |
| 98 | + // TODO Auto-generated method stub |
| 99 | + return null; |
| 100 | + } |
| 101 | + |
| 102 | + @Override |
| 103 | + public TileXY latLonToTileXY(double lat, double lon, int zoom) { |
| 104 | + return new TileXY(lon / 2, lat / 2); |
| 105 | + } |
| 106 | + |
| 107 | + @Override |
| 108 | + public ICoordinate tileXYToLatLon(int x, int y, int zoom) { |
| 109 | + return new Coordinate(2*y, 2*x); |
| 110 | + } |
| 111 | + |
| 112 | + @Override |
| 113 | + public IProjected tileXYtoProjected(int x, int y, int zoom) { |
| 114 | + return new Projected(2*x, 2*y); |
| 115 | + } |
| 116 | + |
| 117 | + @Override |
| 118 | + public TileXY projectedToTileXY(IProjected p, int zoom) { |
| 119 | + return new TileXY(p.getEast() / 2, p.getNorth() / 2); |
| 120 | + } |
| 121 | + |
| 122 | + @Override |
| 123 | + public boolean isInside(Tile inner, Tile outer) { |
| 124 | + // TODO Auto-generated method stub |
| 125 | + return false; |
| 126 | + } |
| 127 | + |
| 128 | + @Override |
| 129 | + public TileRange getCoveringTileRange(Tile tile, int newZoom) { |
| 130 | + // TODO Auto-generated method stub |
| 131 | + return null; |
| 132 | + } |
| 133 | + |
| 134 | + @Override |
| 135 | + public String getServerCRS() { |
| 136 | + return "EPSG:3857"; |
| 137 | + } |
| 138 | + } |
| 139 | + |
62 | 140 | protected QuadTreeMeta quadTreeMeta;
|
63 | 141 |
|
64 | 142 | public BaseQuadTreeMetaTest(int scenarioIndex_, Integer seenRectOrderSeed_, Integer referenceTileOrderSeed_)
|
@@ -189,8 +267,8 @@ protected void inspectReferenceTiles(
|
189 | 267 | } catch (final AssertionError e) {
|
190 | 268 | System.out.format("assertArrayEquals failed on reference tile %d\n", j);
|
191 | 269 | System.out.println(
|
192 |
| - "ref = " + javax.xml.bind.DatatypeConverter.printHexBinary(refMaskBytes) + |
193 |
| - ", result = " + javax.xml.bind.DatatypeConverter.printHexBinary(resultMaskBytes) |
| 270 | + "ref = " + jakarta.xml.bind.DatatypeConverter.printHexBinary(refMaskBytes) + |
| 271 | + ", result = " + jakarta.xml.bind.DatatypeConverter.printHexBinary(resultMaskBytes) |
194 | 272 | );
|
195 | 273 | throw e;
|
196 | 274 | }
|
|
0 commit comments