The majority of formats require the same two steps for visualization on a Lightspeed view. To visualize WMS data:
-
Decode the data into an
ILcdModel
using anILcdModelDecoder
. -
Create an
ILspLayer
for theILcdModel
and add it to theILspView
.
//First create the model //Start by creating a TLcdWMSDataSource for the coverage String serverURL = "https://sampleservices.luciad.com/wms"; String wmsLayerName = "cities"; TLcdWMSDataSource dataSource = TLcdWMSDataSource.newBuilder() .uri(serverURL) .addLayer(wmsLayerName) .build(); //Decode the model by passing the datasource to the model decoder ILcdModelDecoder decoder = new TLcdCompositeModelDecoder(TLcdServiceLoader.getInstance(ILcdModelDecoder.class)); ILcdModel model = decoder.decodeSource(dataSource); //Create a layer for the model and use the tiled paint strategy ILspLayer layer = TLspWMSLayerBuilder.newBuilder() .model(model) .paintStrategy(ELcdWMSPaintStrategy.TILED) .build(); //Add the layer to the Lightspeed view (an ILspView) view.addLayer(layer);
This results in a WMS layer with default styling. See Visualizing Raster Data for more information about visualizing and styling raster data.
This created WMS layer queries the data in a tiled manner.
See the Single image versus tiled WMS requests guide for more information about querying a WMS server for a single image versus querying it in a tiled manner.
This code snippet uses the The model decoder class that is actually responsible for decoding WMS data is the
|