This scenario demonstrates how you can crawl a collection of elevation data and serve it to a LuciadRIA application in an LTS service.

LTS allows you to efficiently serve elevation data, because it offers that data in a hierarchical tile structure, called a coverage. Because an LTS service serves only LuciadFusion coverages, elevation data needs to be pre-processed into such a coverage first.

In the scenario, we use a folder with DHM files as an example for the elevation data, but the scenario will also work if you have elevation data in a format such as DTED, ETOPO, and DEM. We are going to set up the folder containing elevation files as a data root for LuciadFusion Studio, create a product with the data, create an LTS service containing the product, and serve it to LuciadRIA after it has been pre-processed.

Setting up the data root

To set up the data root, go to SETTINGS > DATA ROOTS > ADD DATA ROOT, and select the folder with the DHM files.

Adding the folder with DHM files as a data root
Figure 1. Adding the folder with DHM files as a data root.

LuciadFusion starts the crawling process, and adds all the DHM files to the DATA tab.

Creating the product

An LTS service offers one coverage for each product it contains, so we need to create a product with the DHM elevation files first. Combining multiple individual elevation data files in a single product allows you to serve this data as a single coverage through an LTS service. If you want to offer multiple coverages, you should create a product for each coverage you want to offer.

If you already created a LuciadFusion coverage of your data with the Data Connectivity Manager (DCM) and added that coverage to LuciadFusion Studio, you just need to create a product containing that coverage. Products containing a LuciadFusion coverage do not require any pre-processing. Keep in mind that you can only create a product containing exactly one LuciadFusion coverage if you plan on serving it in an LTS service.

To create the product:

  1. Select all the DHM files of your data set by holding SHIFT and clicking each DHM file on the DATA screen.

Selecting the DHM data in Studio
Figure 2. Selecting the DHM data in Studio
  1. Click CREATE PRODUCT.

  2. Give a meaningful name and title to the product. The product name will also be used as the name for the coverage when it is added to an LTS service.

Creating the product
Figure 3. Creating the product
  1. Click CREATE PRODUCT.
    The product has been created.

The product was created
Figure 4. The product was created

You can now create an LTS service with the product to start serving the elevation data in the product.

Setting up an LTS service

As mentioned earlier, an LTS service serves a coverage for each product that it contains. A product in an LTS service must contain either a single LuciadFusion coverage, or one or more elevation data files. A product containing a LuciadFusion coverage can be served directly in an LTS service. On the other hand, products containing elevation data will automatically be pre-processed into a LuciadFusion coverage when they are used to create an LTS service or when they are added to an LTS service. This will be the case for the product with DHM data.

To create an LTS service for the product with DHM data:

  1. Go to the products page by clicking on the PRODUCTS tab.

  2. Select the product with DHM data.

Selecting the product with elevation data
Figure 5. Selecting the product with elevation data
  1. Click CREATE SERVICE.

  2. Enter a service title and name in the Create service dialog, and select the LTS service type.

Setting up the LTS service
Figure 6. Setting up the LTS service
  1. Leave the Start service? check box selected, and click CREATE SERVICE.

At this point, LuciadFusion Studio starts generating a Fusion coverage. While it is taking care of this pre-processing job, your new service will have the PENDING status.

The pre-processing may take a while if you loaded a large elevation data set. To track the status of the pre-processing job, you can go to the JOBS screen. It shows the running pre-processing job in the lower half of the screen. You can click the job entry for more details.

Monitoring progress of the pre-processing job
Figure 7. Monitoring progress of the pre-processing job

As soon as the pre-processing job is done, the LTS service status switches from PENDING to RUNNING.

The LTS service is running
Figure 8. The LTS service is running

If there is overlapping data in a product, the data might be re-ordered during pre-processing, and the resulting LuciadFusion coverage may store the data in in a different order than the original order in the product. LuciadFusion will order the data according to pixel density and other properties so that more detailed data is used in higher levels of the coverage.

LTS service pre-processing failure.

If any data other than elevation data is added to a product in an LTS service, the pre-processing step will fail. Currently, only elevation data can automatically be pre-processed into a LuciadFusion coverage. If you want to create a coverage with other data, you need to use the Data Connectivity Manager. See the Data Connectivity Manager User’s Guide for more information.

Connecting to the LTS service from LuciadRIA

Once the LTS service has started, you can connect to it from a LuciadRIA application. You will need to know the endpoint URL of the service, the coverage ID, and the coverage parameters.

To find out what the endpoint URL is, go to the SERVICES tab in LuciadFusion Studio, and click the title of the LTS service in the list to open the details screen. Find the ENDPOINT URL entry.

Find out the service endpoint URL
Figure 9. Find out the service endpoint URL

To find the coverage ID, click the PRODUCTS tab in the details screen of the LTS service. Click the product for which you want to obtain the coverage ID.

Products tab of LTS service
Figure 10. Products tab of LTS service

The details screen of the product opens. You can find the coverage ID by looking at the address bar of your web browser. Everything after products/ is the product ID, and therefore also the ID of the coverage.

The product/coverage id
Figure 11. The product/coverage id

The parameters of a coverage generated by a pre-processing job for an LTS service are listed in the table below. The parameters are optimized for consumption by LuciadRIA.

Table 1. Coverage parameters
Parameter Description Value

Type

The type of the coverage

Elevation

Tile width

The width of the tiles (in pixels)

32

Tile height

The height of the tiles (in pixels)

32

Level 0 row count

Number of rows at level 0

2

Level 0 column count

Number of columns at level 0

4

Levels

Number of levels in the tileset

24

Sampling mode

The sampling mode used when generating the tiles

Point

Bounding box

The 2D bounding box of the coverage

long:-180, lat:-90, width:360, height:180

Georeference

The geographic reference of the coverage’s bounding box

Geodetic reference (WGS 84 geodetic datum)

Format

The tile format of the coverage

image/tiff

It is also possible to connect to the LTS service from a LuciadLightspeed application, such as Lucy. Keep in mind that these coverage parameters were optimized for LuciadRIA.