Aller au contenu

Platform & application integration

Built using native technologies, and harnessing WebAssembly and WebGL 2 on the web, Horizon takes full advantage of your hardware to deliver optimal performance.

Horizon can run natively on Windows and Linux using OpenGL 3, and in any web browser that supports WebAssembly and WebGL 2.

Currently, C++ and TypeScript bindings and APIs are available. However, the Protocol Buffers-defined language-independent API makes it possible to use Horizon in any language that can communicate a dynamic library natively, or a WebAssembly module on the web.

Terrain & rasters

Horizon can displayed tens of dynamically-streamed rasters spanning the entire planet, down to centimeter resolution, as imagery or terrain heightmaps (DTM).

Rasters containing data values (such as simulation results) can be dynamically colorized by providing a palette.

The terrain itself can be made semi transparent to reveal underground objects.

Vector geometry

Horizon can stream vector data from many formats and protocols. Additionally, vector data can be provided directly from the application and even be resident in-memory for interactive applications.

Multiple attribute sources can be joined together to augment open-source data with business-specific attributes.

The integrated styling scripting language makes it easy to customize how your data is displayed in depth, and highlight valuable insights on your maps.

Vector representations can be mixed and matched to create rich scenes.

if (attr("date") > "2025-12-31") {
    discard;
}
set "radius" = div(attr("users"), 1000);
set "color" = lighten(attr("color"), 0.2);
emit "cylinder";
Extruded polygons

Extruded polygons

The extruded representation transforms footprint polygons into 3D shapes, useful for representing buildings, histograms, and other data with a dynamic vertical component.

They provide a simple and effective way to visualize 3D data from a 2D source.

Learn more
Cylinders

Cylinders

The cylinders representations transforms polylines into 3D shapes, useful for representing pipelines, tunnels, and other data with a radial component.

Additionally they can be animated with dashes and gradients.

Learn more
Instanced models

Instanced models

Instanced models allow for the efficient rendering of large numbers of identical objects in a scene, while varying their appearance with scale, rotation, and color.

This technique is particularly useful for visualizing forests, street furniture, or any scenario where many similar objects need to be displayed.

Learn more
Symbols

Symbols

Symbols are a complex representation that combine icons, texts, and other visual elements with layouting elements to create a rich and informative visualization.

They are useful for displaying data directly in the scene.

Learn more
Heatmaps

Heatmaps

Heatmaps display aggregations of data points with a color gradient, allowing for the visualization of density and intensity of data.

They are useful for identifying patterns and trends in large geospatial datasets.

Learn more
Flat overlays

Flat overlays

Flat overlay representations allow displaying vector data on the terrain surface, useful for visualizing areas, streets, points of interest, etc.

They can be decorated with pattern images and animated dashes.

Learn more

3D models & 3D Tiles

Horizon can display glTF and 3D Tiles models or point clouds, from human-scale objects to city-scale (or even larger) datasets such as digital twins.

The same styling script system use by vector layers can be used to stylize and filter your models.

Use the multi-materials & dynamic materials bindings system to dynamically visualize computation results on your digital twins.

Supported formats & protocols

Raster data

  • Tiled URL
  • Untiled image
  • Bing maps
  • ArcGIS
  • WMS
  • WMTS
  • TMS
  • TileJSON
  • PMTiles
  • Application-served

Vector data

  • Tiled URL
  • Untiled dataset
  • TileJSON
  • PMTiles
  • Application-served

3D models

  • glTF 2
  • 3D Tiles 1.0
  • Packed 3D Tiles 1.0

Image formats

  • PNG
  • JPEG
  • WebP
  • GIF
  • BIL
  • BIP
  • BSQ

Vector formats

  • GeoJSON
  • Mapbox Vector Tiles
  • Geobuf

DTM encodings

  • Floats
  • Mapzen Terrarium
  • Mapbox Terrain RGB
  • Cesium terrain

Interactive features

Multi-view rendering

Multi-view rendering

Render multiple views of the same scene in a single window, with different camera positions and settings, and different data.
Learn more
Gizmos

Gizmos

Manipulate objects in the scene using intuitive on-screen controls for translation and rotation.

Use them in your own applications to create interactive workflows.

Learn more
Picking & highlighting

Picking & highlighting

Select and highlight objects in the scene for better visualization and integration with the host application.
Learn more
Viewshed analysis

Viewshed analysis

Analyze the visibility of a scene from a specific point of view.

Useful for urban planning and security applications.

Learn more
Shape editor

Shape editor

Edit and manipulate shapes within the scene to draw zones, measure distances, or create custom geometries.
Learn more
Clipping

Clipping

Clip the scene with planes to reveal hidden structures.
Learn more

Graphics & customization

Horizon gives you full control over lighting & ambiance. Display a beautiful simulated atmosphere, dense fog, or synthetic lighting to adapt the scene to your needs.

The engine can integrate seamlessly in webpages thanks to its ability to use a transparent background.