
TerraLens is for Control Freaks.
Written
March 15, 2021

Written by the Engineering Team, Kongsberg Geospatial
Kongsberg Geospatial’s TerraLens SDK was designed to please software developers who feel the need to be control freaks. The SDK gives users the ability to create unique visualizations that best suit the end user and use case.
TerraLens does this by allowing developers to trade off performance with visual effects. Beauty often comes at a cost – to your application performance and to memory usage. TerraLens was engineered with a focus on performance for legacy systems and the low-power computer systems typically found in military C2 environments.
But maybe you want your application to be beautiful. Perhaps you’re designing an application for newer systems with dedicated GPUs, and you want to leverage that to build a highly granular, information-rich display. The TerraLens SDK provides a toolset to allow you to balance beauty and performance, and provides a performance tracing API to get insights into bottlenecks in your particular application.
The SDK also offers a fine degree of control over every aspect of how maps and overlays are styled and presented in application viewports.
Some of the ways TerraLens provides developers control over application presentation and performance include the following:
Control over Visualization
- Control over raster map visualizations, including brightness, contrast, elevation shading
- Control over vector styling, including color, line style, halo, and text alignment
- Control over overlay visualization, including colors, intensity and alpha values, text alignment to curves, vertical/horizontal text alignment
Control over Overlay Interactions and Granularity
- Control over visibility and pickability at layer or individual presentation levels
- Control over pick aperture
- Control over overlay granularity (style individual entities uniquely, with individual pickability and logic, or handle entities in groups for faster render speed)
Control Over Entity Rendering
- Control over line rendering, caps, and halos
- Control over atmosphere, map resolution, and range-based filtering
- Control over range interpolation for polygons to balance smoothness with rendering speed at greater distances
Control at the Application Level
- Control over in-memory map cache size (a bigger cache will result in more performant panning and zooming, while a smaller cache will keep the most recent tiles only, freeing up memory)
- Control over map granularity (merge multiple small maps into a single larger map at run-time for improved performance
- Control over when the map projection center is updated (updating the center as the map is panned will reduce projection errors, but doing it every time the map center moves will cause all geographic objects to be recalculated)
- Control over when layer updates occur
TerraLens supports multiple threading models, including per-viewport threading and per-data source threading. More in-depth information about visualization control, threading control, and the Performance Tracing API is available in the TerraLens product overview documentation.