I am using VTM 0.15.0 and want to add a WMS layer to my map. This is my code:
public abstract class MyUrlTileSource extends TileSource {
...
...
...
private static class DefaultTileUrlFormatter implements TileUrlFormatter {
@Override
public String formatTilePath(MyUrlTileSource tileSource, Tile tile) {
int x =tile.tileX;
int y = tile.tileY;
int zoom = tile.zoomLevel;
double minLon = tile2lon(x, zoom);
double minLat = tile2lat(y, zoom);
PointXY minPointStr = ConvertCoordinate.wgs2webMercator(minLat,minLon);
double minX = minPointStr.getX();
double minY = minPointStr.getY();
double maxLon = tile2lon(x + 1, zoom);
double maxLat = tile2lat(y + 1, zoom);
PointXY maxPointStr = ConvertCoordinate.wgs2webMercator(maxLat,maxLon);
double maxX = maxPointStr.getX();
double maxY = maxPointStr.getY();
String url = "/GeoServer/sdi/wms?service=WMS&version=1.1.0&request=GetMap&layers=sdi%3Adehestan&bbox="+minX+","+maxY+","+maxX+","+minY;
return url;
}
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mMyBitmapTileSource geoserverLayer = MyBitmapTileSource.builder()
.tilePath("/{Z}/{X}/{Y}.png")
.build();
geoserverLayer.setApiKey(null);
mMap.layers().add(new BitmapTileLayer(mMap, geoserverLayer));
}