About this release

The 2022.0 release of LuciadCPillar focuses on fast and robust integration of highly accurate point clouds and 3D reality meshes. The new features allow users to stream point clouds to explore the world at sub-centimeter accuracy, and 3D meshes to discover the world digitally.

luciad portfolio
Figure 1. The Luciad product portfolio. Note: LuciadCPillar’s support for Java for Android is currently in an alpha version. If you’re interested in this feature, please contact product.management.luciad.gsp@hexagon.com .

Benefits of the new features

Support for 3D data

LuciadCPillar exploits graphics hardware to achieve high visual and analytical performance. This capability is now being put to good use for the integration of the immense amount of data offered as point clouds and 3D reality meshes. The format of choice is 3D Tiles, an OGC community standard that can encode both point cloud and 3D meshes datasets. Your data does not have to reside on a server. LuciadCPillar can also directly connect to OGC 3D Tiles datasets that reside on your SSD drive. You can combine 3D data with any other data source in LuciadCPillar.

Stream point clouds
Figure 2. Streaming point clouds to LuciadCPillar.
Stream 3D meshes
Figure 3. Streaming 3D meshes to LuciadCPillar.

Stream point clouds to explore the world at sub-centimeter accuracy

By their nature, point clouds are very detailed representations of reality. Nowadays, point cloud data sets are often the product of Light Detection and Ranging (LiDAR) technologies, although they may also be constructed from an imagery set. LiDAR remote sensing technology is getting increasingly popular, driven both by technological advancement and applicability in a variety of domains. Today, mobile capturing systems offer lightweight but powerful, high-resolution laser sensors. They allow rapid scanning of the environment in a cost-effective way. Those environment scans lead to massive point cloud data collections with billions and even trillions of points.

An important example among numerous use cases is the development of smart cities. LiDAR data captured in cities can help generate an accurate topography to support urban planning, infrastructure management, environmental protection, public safety, public services, and more.

LuciadCPillar is now capable of loading point clouds. These can be served as OGC 3D tiles or as Hexagon Smart Point Cloud (HSPC) data. LuciadFusion, the server product of the Luciad portfolio, allows users to discover point cloud data and stream it to LuciadCPillar as 3D tiles.

GPU-based visualization for smooth handling of point cloud data streams

OGC 3D Tiles services automatically expose the available data attributes and their range, as well as the data quality. This ensures an optimal end user experience, with tiles smoothly loaded and refined as users pan and zoom on the map.

The point cloud data can be styled by its color, intensity, and height attributes, or any other exposed numerical attribute. The styling of the points and the quality of the data can be modified at runtime. You can set the size of the points manually, or you can let it adapt automatically to the density of the data set.

PC combined data
Figure 4. The point cloud data can be styled and combined with any other data source in LuciadCPillar.

Stream 3D meshes to explore the world digitally

3D models are widely used in a variety of industries, not the least in the geospatial world. They are either captured through photographic surveying or created in design modeling tools. The highly detailed 3D reality meshes generated to represent a precise real-world environment, such as a building, a bridge, or even an entire city, are becoming increasingly popular sources of 3D models. They are typically massive in size.

mesh marseille1
Figure 5. Represent a precise real-world environment with highly detailed 3D meshes in LuciadCPillar.
Add a new dimension to your map view with true 3D data

LuciadCPillar now allows you to load and integrate 3D reality meshes with other data on your map. The loading and visualization of 3D reality meshes is a ripple-free process, even when multiple files are loaded. Tiles will smoothly fade in and out as users pan and zoom on the map. You can view the meshes in full 3D and seamlessly integrate them with other data sets such as aerial imagery and terrain data to visualize the entire environment.

Smart loading of 3D mesh data

Streamed reality meshes are supported as a feed of OGC 3D Tiles, a multi-leveled 3D tiled format for massive 3D mesh data. LuciadFusion, the server product from the Luciad Portfolio, can serve reality meshes as OGC 3D Tiles. LuciadCPillar automatically uses the exposed data structure and quality metadata. You can style the 3D Tiles data sets using embedded meshes or color expressions.

Sample code to get you started

Included in the release is a new OGC 3D Tiles sample that illustrates how you can use the API to load the data, and style and analyze the data in an interactive way. The sample is available in both a C++ and a C# version.

In addition to the sample, the release comes with a comprehensive set of how-to guides with more details on how to leverage our API for your data visualization needs. The documentation covers:

Touch support

Navigation around maps is easy and intuitive using a computer mouse as controller. Nevertheless, users occasionally work on tablets or embedded devices that need be operated through touch interaction. Therefore, LuciadCPillar now supports touch-based controllers for map navigation, selection, and on-screen creation and editing of objects.

Sample code to get you started

All samples in the release are now automatically equipped with touch support. The code that wires the touch events from your C++ UI toolkit to the LuciadCPillar API can be found in the Qt Widgets Integration and Qt Quick Integration projects in the C++ samples solution.

Additionally, the Create and Edit sample illustrates how you can use touch input to create and edit vector features on the map.

Support for high-resolution displays

LuciadCPillar now fully supports high-pixel density displays, commonly referred to as HiDPI or Retina displays. These displays are supported out-of-the-box, meaning that map features such as icons, line widths, and font sizes are automatically scaled up in response to the DPI scale settings of the host operating system. These settings include a DPI scale factor that can be adjusted in the operating system to change the size of text, applications, and other items.

Sample code to get you started

Also for this capability, the Qt Widgets Integration and Qt Quick integration projects in the samples illustrate how you can hook into the Qt UI toolkit to discover DPI and display scale settings and adapt your application.

You can find more information in the Support high-resolution (HiDPI) displays reference guide and the How to integrate the LuciadCPillar map in the Qt framework article.

Other improvements

Support for TIFF elevation data in GeoPackage

The LuciadCPillar support for OGC GeoPackage has been extended to include TIFF-encoded elevation data.

OpenGL and .NET upgrade considerations

There are some general upgrade considerations. Starting with this release, the minimum supported openGL version is 4.2. LuciadCPillar has also been upgraded from .NET 4.6 to 4.7.2. These details have been adjusted in the Hardware and software requirements article.

Visual Studio solution for sample code supports multiple targets

The generated Visual Studio Solution structure for the sample code now supports multiple targets in the same solution. You can now run a Debug or Release version of the samples without running CMake again.