Technical Specification

Carmenta Engine 5.14

You can find system requirements for the different Carmenta Engine versions further down this page.

General

  • Software Development Kit (SDK) for rapid development of interactive geographic applications on Windows, Linux and Android.
  • High performance visualisation and processing of geographic data, both in 2D and 3D.
  • Available in both 32-bit and 64-bit version.
  • Fast kernel developed in optimised C++.
  • Individually optimised .NET, C++ and Java APIs.
  • The .NET API supports both .NET Framework and .NET Core NEW.
  • Optimised internally for multi core CPUs.
  • Hardware accelerated map rendering that offloads CPU.
  • Parallel asynchronous processing that keeps the application’s user interface responsive.
  • Map controls for WPF, Xamarin, Windows Forms, Qt, Qt Quick, Win32, MFC, X11, Java and Android.
  • Supports over 70 geographic data formats natively.
  • Different layers can have different coordinate systems, reprojection is done on the fly.
  • Maps can be accessed via remote servers (OGC WMS, WMTS, WCS, WFS and CSW).
  • Efficient cache mechanism for handling large numbers of moving objects on the map.
  • Flexible API for smoothly animating object movements.
  • Dedicated radar plot and radar video NEW functionality can handle millions of dynamic plots and be used to create real time PPI displays.
  • Component based architecture built around intuitive data flow paradigm.
  • Easy deployment using runtime merge modules (.msm) or simple XCopy deployment.
  • Built-in profiler for measuring and tuning the performance of map and application layers.
  • Built-in tiled map image file cache, suitable for optimising vector layers on low-end hardware.
  • Integrated read/write support for OGC GeoPackage files enables efficient, single-file geodata distribution.
  • Presentation of map layers and application layers can be defined in map configuration files using Carmenta Studio, or in runtime using the APIs.
  • Geographically correct spatial calculations such as projection, distance, great circle, scale factors, azimuth/angle calculations etc available for all reference systems.
  • Multiple windows and views can present the same data with different visualisations simultaneously.
  • Supports internationalisation – titles, descriptions and other metadata can be specified in multiple languages.
  • Unicode support for rendering non western right-to-left text, such as Arabic.
  • Supports scale-correct, high resolution printing of any map.

Visualisation

  • Supports custom line styles, pattern fills and textures.
  • Predefined common map symbols, line styles and patterns.
  • Semitransparency is supported on all drawing operations.
  • Hardware accelerated map layer effects can perform color adjustments (brightness, contrast, hue, saturation etc.) as well as glow, halos and ambient occlusion.
  • Support for animating the visualisation, e.g. to create blinking or pulsating objects.
  • Anti-aliasing of text, symbols, lines and polygons removes jaggedness in presentation.
  • Raster filtering, bilinear or bicubic, improves visualisation of scanned maps etc.
  • Hardware accelerated configurable multi-sample antialiasing and anisotropic filtering for maximum legibility in 2D and 3D.
  • Off screen drawing to file or memory.
  • Raster symbols from common image files.
  • Vector symbols from SVG or font files with halo and outline effects.
  • 3D symbols and corridors from common 3D shapes or 3D models.
  • Multiple visualisations on objects such as multiple texts and symbols at a point or line.
  • Complex line styles with auto-placement of symbols or labels along lines or in nodes, texts or symbols that clip lines etc.
  • Level of detail in 2D with automatic switching on/off of map layers based on scale and/or geographic area.
  • Vector and raster layers can be arbitrarily mixed. Layers can be combined using normal or multiply blend modes.
  • Attribute data controlled visualisation, selection and discrimination.
  • Automatic label placement of text and symbols that prevents overlapping and duplication.
  • Automatic scale-based aggregation of hierarcical data, e.g. tactical ORBAT structures.
  • Visualisation can be configured to automatically adapt to displays with very high pixel density.
  • Supports military tactical symbology (NATO App-6, DOD MIL-STD-2525).
  • Supports nautical symbology (IHO S-52, NATO AML Portrayal).

Extensibility

  • Possibility to ”plug-in” custom data reading, processing and visualisation code as components that fit seamlessly into the Carmenta Engine data-flow model.
  • Custom visualisation can be developed either using native GDI or OpenGL or by using Carmenta Engine high-level graphics API.
  • Custom processing written in Python script can be embedded into map configurations.

Coordinate systems and projections

  • Configurable reference systems, projections and geodetic datums, support for EPSG IDs.
  • Handles embedded reference system information.
  • Supports more than 15 types of projections, including Mercator, Transverse Mercator, UTM, Lambert, Albers, Stereographic, Azimuthal Equidistant and Orthographic.
  • Projections for georeferencing using ground control points.

Geographic databases and formats

  • Can generate low resolution variants (”pyramids”) for all raster data sources to improve performance.
  • Support for spatial database queries.
  • Spatial indexing for efficient reading of large datasets.
  • Full-text attribute indexing for fast text search functionality, e.g. address search.
  • Supports reading Raster Attribute Tables for thematic data sources.
    Supports reading geospatial metadata according to the French GéoBase Défense and TopoBase Défense standards.
  • Reads directly (conversion is not needed) from a large number of formats:
ADRG AIXM AML ARINC 424 ASRP AutoCAD DXF AutoCAD DWG AUX BIL BSQ BSP Bing Maps BSB Nautical BMP CADRG CEOS (Spot) CIB CMRG (PCMap) COLLADA DEM DFAD DTED ECW Envisat N1 ESRI Shape (.shp) ESRI Binary ADF ESRI ASCII Grid ESRI File Geodatabase Erdas IMG Erdas LAN/GIS GeoJSON GeoSoft raster GeoTIFF GIF GridASCII GPX HDR IHO S-57 IHO S-63 Intergraph raster Japanese DEM CM93 C-MAP JPEG (.jpg) JPEG2000 (.jp2) Mapbox Vector Tiles (MVT) MapInfo TAB MapInfo MIF MBTiles MFF MFF MrSID MySQL NITF NOAA OGC GeoPackage OGC KML OGC WCS OGC WFS OGC WMS OGC WMTS OpenFlight Oracle Spatial PNG PolGASP PostGIS Raw RPF SDTS DEM SQL Server SRTM HGT TIFF Tiled Map Servers USGS ASCII USGS DOQ USRP VTP BT elevation VPF VMAP VVOD WVS WMO GRIB
  1. Reads and writes
  2. Uses advanced spatial indexing technology for fast access of large files
  3. With optional IHO S-52 nautical chart presentation
  4. Functionality available as an additional Carmenta Engine Extension
  5. Not available in Carmenta Engine Linux version
  6. Not available in Carmenta Engine for Android

Interaction

  • Flexible API for querying geographic objects on screen.
  • High-level interaction tool interface that developers may use to ”plug in” their own interaction handling.
  • Separate visualisation can be configured for selected and hovered map objects.
  • Tools for navigating 2D and 3D maps.
  • Tools for creating and editing 2D and 3D points, lines and polygons.
  • Tools for creating and editing circles, ellipses, circle sectors, rings etc.
  • Tools for multi-touch interactions such as pinch-to-zoom and twist-to-rotate.
  • Overview window functionality.

Data processing “On the fly”

  • Buffer zone generation for raster data and vector data.
  • Clipping of geographic points, lines, polygons and meshes by geographic polygons or viewing area.
  • Connection / desegmentation of lines and polygons.
  • Data reduction through line and polygon ”thinning”.
  • Geographic, UTM/MGRS and GARS grid generation.
  • Generate circle and ellipse objects from point + radius.
  • Generate concentric range circles and radial lines around objects or at the center of the map.
  • Generate 3D volumes (e.g. boxes, spheres and pipes) from 2D objects.
  • Hill shading with dynamic sun position.
  • Slope and aspect calculations.
  • Detection of ridges, valleys, peaks and basins.
  • Isoline, e.g. elevation contours calculation.
  • Real time line-of-sight calculation in both 2D maps and 3D city environments.
  • Volumetric line-of-sight with multi-sensor airspace coverage analysis.
  • Merging heterogeneous raster data with different resolutions into homogeneous data.
  • Rasterisation of 2D vector layers.
  • Reprojection of vector and raster data.
  • Resampling of raster data.
  • Accessibility analysis and routing calculations for terrain vehicles.
  • Transformation of line objects to polygons and vice versa.
  • Smoothing of line and polygon shapes.
  • Vertical Profile Calculation which can cut through both terrain, land use and vector data.
  • Vertical clearance and terrain warning calculation for flight routes based on terrain and vector obstacles.
  • Projection of full motion video onto the ground or onto detailed 3D environments based on camera parameters.
  • Dynamic generation of point density rasters for heat map presentation.

Software development kit contents

  • Carmenta Studio – a visual editor for map configurations.
  • Carmenta Explorer – a map configuration viewer.
  • Comprehensive documentation, including tutorials, technical articles and API documentation.
  • Many sample applications with source code in C# for Windows Forms, WPF and Xamarin, C++ for Qt, MFC, Win32 and X11 as well as Java for Swing and Android.
  • Sample maps and map configurations.

System Requirements

Carmenta Engine 5.14

Carmenta Engine for Windows

Operating Systems:

Windows 7 (32-bit and 64-bit), Windows 8.1 (64-bit) and Windows 10 (64-bit).
Both 32-bit and 64-bit versions available.

Graphics device requirements for hardware acceleration:

Using OpenGL rendering requires a device supporting OpenGL 1.1.
The Plot Extension requires OpenGL 1.5.
The GlobeView component, the terrain warning functionality, the radar video layer and the hardware-accelerated effects require OpenGL 3.0.
Using DirectX rendering requires a device supporting DirectX 9.1.
Using the radar video layer and the camera project overlay requires a device supporting DirectX 11.

Language and framework requirements:

.NET Framework API: .NET Framework 4.0 or later.
.NET Standard API: .NET Framework 4.6.1 or later, or .NET Core 2.0 or later.
Java API: Java 8 or later.
C++ API: Visual Studio 2013 or later. When using Qt or Qt Quick, Qt version 5.9 or later should be used.

Integrated Development Environments:

Support is provided for Microsoft Visual Studio 2013, 2015, 2017 and 2019 (C++ and C#).
Other C++ IDEs that use the Microsoft C++ compiler (MSVC) can also be used.
Java developers can use NetBeans or Eclipse.

Carmenta Engine for Linux

Operating Systems:

Ubuntu 18.04 LTS and 20.04 LTS.
Red Hat Enterprise Linux 7 and 8.
SUSE Linux Enterprise 15.
64-bit version generally available. 32-bit version available on request.

Graphics device requirements for hardware acceleration:

Using OpenGL rendering requires a device supporting OpenGL 1.1 and GLX 1.3.
The Radar Plot Extension requires OpenGL 1.5.
The GlobeView component, the terrain warning functionality, the radar video layer and the hardware-accelerated effects require OpenGL 3.0.

Language requirements:

Java API: Java 8 or later.
C++ API: GCC 4.8.1 or later. When using Qt or Qt Quick, Qt version 5.9 or later should be used.

Carmenta Engine for Android

CPU:

ARMv7 compatible (32-bit).
ARMv8 compatible (64-bit).
x86-64 compatible (64-bit).

Operating System:

Android 6.0 or above.

Graphics device requirements for hardware acceleration:

Using OpenGL rendering requires a device with full support for OpenGL ES 2.0.
The GlobeView component, the terrain warning functionality, the radar video layer and the hardware accelerated effects require a device with full support for OpenGL ES 3.0.

Integrated Development Environments:

Support is provided for Android Studio for Java projects and Visual Studio 2017 and 2019 with Xamarin.Android 8.0 or later for .NET projects.