Dimension canvasDimension = this.drawingCanvas.getDimension(); int tileSize = this.mapView.getModel().displayModel.getTileSize(); BoundingBox boundingBox = MapPositionUtil.getBoundingBox(mapPosition, canvasDimension, tileSize);
@Test public void getTopLeftPointTest() { for (int tileSize : TILE_SIZES) { MapPosition mapPosition = new MapPosition(new LatLong(0, 0), (byte) 0); Canvas canvas = GRAPHIC_FACTORY.createCanvas(); canvas.setBitmap(GRAPHIC_FACTORY.createBitmap(tileSize, tileSize)); Point expectedPoint = new Point(0, 0); Assert.assertEquals(expectedPoint, MapPositionUtil.getTopLeftPoint(mapPosition, canvas.getDimension(), tileSize)); mapPosition = new MapPosition(new LatLong(0, 90), (byte) 1); expectedPoint = new Point(tileSize, (float) tileSize / 2); Assert.assertEquals(expectedPoint, MapPositionUtil.getTopLeftPoint(mapPosition, canvas.getDimension(), tileSize)); } } }
@Test public void getBoundingBoxTest() { for (int tileSize : TILE_SIZES) { MapPosition mapPosition = new MapPosition(new LatLong(0, 0), (byte) 0); Canvas canvas = GRAPHIC_FACTORY.createCanvas(); canvas.setBitmap(GRAPHIC_FACTORY.createBitmap(tileSize, tileSize)); double latitudeMin = MercatorProjection.LATITUDE_MIN; double latitudeMax = MercatorProjection.LATITUDE_MAX; BoundingBox expectedBoundingBox = new BoundingBox(latitudeMin, -180, latitudeMax, 180); Assert.assertEquals(expectedBoundingBox, MapPositionUtil.getBoundingBox(mapPosition, canvas.getDimension(), tileSize)); mapPosition = new MapPosition(new LatLong(0, 90), (byte) 0); expectedBoundingBox = new BoundingBox(latitudeMin, -90, latitudeMax, 180); Assert.assertEquals(expectedBoundingBox, MapPositionUtil.getBoundingBox(mapPosition, canvas.getDimension(), tileSize)); mapPosition = new MapPosition(new LatLong(90, -180), (byte) 0); expectedBoundingBox = new BoundingBox(0, -180, latitudeMax, 0); Assert.assertEquals(expectedBoundingBox, MapPositionUtil.getBoundingBox(mapPosition, canvas.getDimension(), tileSize)); } }
Dimension canvasDimension = this.drawingCanvas.getDimension(); int tileSize = this.mapView.getModel().displayModel.getTileSize(); BoundingBox boundingBox = MapPositionUtil.getBoundingBox(mapPosition, canvasDimension, tileSize);