Skip to main content

Integration


Integration

Theory

LuciadRIA integrates with LuciadFusion by consuming service endpoints such as WMS for raster map rendering and WFS for vector/feature retrieval.


Practical integration patterns

Pattern A: RIA consumes Fusion WMS

Use when:

  • background maps
  • rendered map layers
  • tiled raster visualization
  • performant display of map imagery

Pattern B: RIA consumes Fusion WFS

Use when:

  • feature-level interaction is required
  • query/filter/select/highlight/edit flows are needed
  • client-side feature inspection matters

Pattern C: RIA consumes other service outputs

Additional service types include:

  • WMTS
  • WCS
  • 3D Tiles
  • HSPC
  • LTS

Sample code: WMS integration

import {WMSCapabilities} from "@luciad/ria/model/capabilities/WMSCapabilities.js";
import {WMSTileSetModel} from "@luciad/ria/model/tileset/WMSTileSetModel.js";
import {WMSTileSetLayer} from "@luciad/ria/view/tileset/WMSTileSetLayer.js";

const wmsUrl = "https://fusion.example.com/wms";

WMSCapabilities.fromURL(wmsUrl).then(function(capabilities) {
const model = WMSTileSetModel.createFromCapabilities(capabilities, [
{ layer: "rivers" }
]);
const layer = new WMSTileSetLayer(model);
map.layerTree.addChild(layer);
});

Sample code: WFS integration

import {WFSFeatureStore} from "@luciad/ria/model/store/WFSFeatureStore.js";
import {FeatureModel} from "@luciad/ria/model/feature/FeatureModel.js";
import {FeatureLayer} from "@luciad/ria/view/feature/FeatureLayer.js";
import {LayerType} from "@luciad/ria/view/LayerType.js";

const url = "https://fusion.example.com/wfs";
const featureTypeName = "cities";

WFSFeatureStore.createFromURL(url, featureTypeName).then((store) => {
const model = new FeatureModel(store);
const layer = new FeatureLayer(model, {
label: "Cities",
layerType: LayerType.STATIC
});
map.layerTree.addChild(layer);
});