LuciadRIA Toolbox is a collection of sophisticated tools and utility code that you can integrate in your LuciadRIA application. A basic integration API gives you easy access.

The wide range of features in the LuciadRIA Toolbox makes it a good fit for many customer projects. You either use the toolbox as-is, or completely modify it from source code.

As LuciadRIA components, the toolbox samples stand on their own, without any guarantees regarding their maintenance and backward compatibility.

Although the LuciadRIA Toolbox packages all have a package.json, we explicitly discourage you from adding dependencies to those packages through npm. These packages don’t follow semantic versioning, so a patch update may result in backward-incompatible changes, for example.

LuciadRIA Toolbox samples don’t contain UI, only functionality.

Tools in the LuciadRIA Toolbox

You can find the LuciadRIA Toolbox in the toolbox folder of your LuciadRIA installation.

Tool name Description Getting started

Annotation

Uses a combination of a LuciadRIA layer and controller to allow users to annotate 3D points or measurements on a map and visualize these annotations.

See LabelAnnotationSupport and MeasurementAnnotationSupport.

Cross-section

Allows users to examine cross-sections of meshes and point clouds by creating a vertical plane synchronized with a cartesian LuciadRIA Map.

See CrossSectionController and CrossSectionView.

Geolocation

Allows users to position and rotate non-geo-referenced 3D Tiles assets on the earth.

See GeolocateHandleSupport, AltitudeHandleSupport, MoveHandleSupport, RotateHandleSupport and the associated controllers in the controller folder.

Legend

Offers support for the visualization of dynamic legends on top of the map. Dynamic legends generate legend images only for features that are actually painted on the map at its current scale level and given the current layer visibility.

See LegendSupport and LegendEntryInput.

Magnifier

Allows users to visualize a part of the map in detail by zooming in on that part.

See MagnifierSupport and MagnifierController.

Overview map

Also called mini-map. Provides a secondary 2D overview map that’s synchronized with a primary 3D map.

See OverviewMapSupport.

Player

A LuciadRIA API designed to support and control the playback of animations.

See PlayerSupport.

Recorder

Manages the recording of map animations.

See RecorderSupport.

3D ruler

Allows users to take measurements in a 3D scene, such as distance, areas, and orthogonal measurements.

See Ruler3DController and ThreePointProjector for advanced usage.

Scene navigation

The SceneNavigationController is a controller that allows looking at 3D scenes by panning, rotating and zooming in and out.

See SceneNavigationController.

Slicing

Allows creating, editing, and managing oriented boxes. The boxes define and position visibility expressions on meshes and point clouds.

See VisibilityBoxSupport and the associated controllers in the controller folder.

Tour

Allows users to create video footage of their scene. They can create a path for a virtual camera to follow while recording, and then animate and re-play the recorded tour.

See TourPathSupport and the other tour support tools in the tour folder.

The config, controller, core , hooks, and loaders folders contain configuration and helper code for the main LuciadRIA Toolbox functions.

Re-use LuciadRIA Toolbox code in your project

If you want to re-use code from LuciadRIA Toolbox packages, we recommend that you copy the code over to your application.

If you’re not using TypeScript yourself, it can be useful to transpile the LuciadRIA code to JavaScript. For the LuciadRIA Toolbox packages, launch the TypeScript compiler with the tsc --outDir ./out command.

To make this easier, we recommend using something like webpack resolve aliases, so that you don’t have to change all imports when you’re copying the files to your project.