Preparing the data

To visualize Binz datasets in LuciadRIA, you must convert the Binz data to the OGC 3D Tiles format. The OGC 3D Tiles format is optimized for streaming and visualizing large geographical datasets.

To find out how to convert Binz data, see our Converting Binz data to OGC 3D Tiles tutorial.

You can convert Binz data with LuciadFusion, and let LuciadFusion serve the result as an OGC 3D Tiles service.

Visualizing the data

To visualize the converted Binz data, you can create a layer just like for any other OGC 3D Tiles dataset, using OGC3DTilesModel and TileSet3DLayer:

  var layer = OGC3DTilesModel.create("http://luciadfusion:8080/ogc/3dtiles/mybinz/tileset.json").then(function(model) {
    return new TileSet3DLayer(model, {});
  });

Enhancing the visual quality and user experience

LuciadRIA offers a few visual effects settings that can greatly enhance the visual quality of your Binz data:

  • TileSet3DLayer.qualityFactor: adjust this setting to load more detail at longer distances, or less detail if your dataset is very large.

  • TileSet3DLayer.meshStyle.pbrSettings: use this setting to use the physically based rendering (PBR) material properties of the dataset.

  • Map.effects.antiAliasing: enable this setting to prevent pixel aliasing artifacts at the edges of your shapes.

  • Map.effects.light: enable this setting to allow a directional light source to light up your shapes. You can also enable shadows with this setting - see also TileSet3DLayer.meshStyle.

  • Map.effects.ambientOcclusion: enable this shading effect to get soft shadows. Start with radius 0.5.

  • Map.effects.eyeDomeLighting: enable this setting to enhance depth perception by drawing outlines around your shapes. Start with strength 0.2 and window 1.

Interacting with the data

In LuciadRIA, you can select Binz features interactively.

To select a feature, enable selection on your layer, and specify the featureID as the data property to use for selection:

  var layer = OGC3DTilesModel.create("http://luciadfusion:8080/ogc/3dtiles/mybinz/tileset.json").then(function(model) {
    return new TileSet3DLayer(model, {
      selectable: true,
      idProperty: "featureID"
    });
  });

You can then use a standard selection listener or a standard balloon content provider to show information on the selected feature.

The selected feature is a Feature object that contains the original feature metadata as properties, such as the feature ID, moniker and linkage.

The LuciadRIA BIM sample shows this in action.