The majority of formats require the same two steps for visualization on a Lightspeed view. To visualize WFS data:

  1. Decode the data into an ILcdModel using an ILcdModelDecoder.

  2. Create an ILspLayer for the ILcdModel and add it to the ILspView.

//First create the model
//Start by creating a TLcdWFSDataSource for the coverage
String serverURL = "http://sampleservices.luciad.com/wfs";
String featureTypeName = "t_cities__c__1214";
TLcdWFSDataSource dataSource = TLcdWFSDataSource.newBuilder()
                                                .uri(serverURL)
                                                .featureTypeName(featureTypeName)
                                                .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 with default styling
ILspLayer layer = TLspShapeLayerBuilder.newBuilder()
                                       .model(model)
                                       .build();

//Add the layer to the Lightspeed view (an ILspView)
view.addLayer(layer);

This results in a WFS layer with default styling. See Visualizing Vector Data for more information about visualizing and styling vector data.

This code snippet uses the TLcdCompositeModelDecoder, initialized with all model decoders available in the service registry.

The model decoder class that is actually responsible for decoding WFS data is the TLcdWFSModelDecoderDecorator.