@Test public void testInnerTileOffsets() { Envelope meta = new Envelope(1215736.8585492, 1215744.0245205, 5455471.361398601, 5455478.5273699); Envelope box1 = new Envelope(1215736.8585492, 1215739.2472063, 5455476.1387128, 5455478.5273699); Envelope box2 = new Envelope(1215739.2472063, 1215741.6358635, 5455476.1387128, 5455478.5273699); assertEquals(new Point(0, 2), cache.getTileOffsetsInMeta(box1, meta)); assertEquals(new Point(1, 2), cache.getTileOffsetsInMeta(box2, meta)); } }
/** * @param key * @param request * @param tiles */ public RenderedImage getTile(MetaTileKey key, GetMapRequest request, RenderedImage[] tiles) { Envelope bbox = request.getBbox(); if (CRS.getAxisOrder(request.getCrs()) == AxisOrder.NORTH_EAST) { bbox = new Envelope(bbox.getMinY(), bbox.getMaxY(), bbox.getMinX(), bbox.getMaxX()); } Point tileCoord = getTileOffsetsInMeta(bbox, key.getMetaTileEnvelope()); return tiles[tileCoord.x + (tileCoord.y * key.getMetaFactor())]; }