Carmenta Engine supports native reading of over 100 different data types. However, when developing a Carmenta Engine application, other types of data may be needed to complete the user experience.
Tag: carmenta engine
This article aims to introduce the reader to the concept of MVVM (Model-View-ViewModel) as well
as how one could utilize it to create better Carmenta Engine WPF
applications. This will be done in three parts. First, we introduce the
reader to the concept of the MVVM-pattern. Secondly, we showcase a
standard C# WPF Carmenta Engine application, the HelloWorld sample.
Finally, we rewrite the sample application to comply with
In this article, our basic QtQuick application will be enhanced with a networking panel allowing it to connect to a remote server by entering an IP and port, and then allowing it to create and edit features, while broadcasting the changes to potential other connected clients.
In this tutorial, you will learn how to modify the existing QtQuick sample and add a LayerControl to it.
We will replace the QML form to have a collapsible side panel, allowing to display a layer tree. The layer control will be populated from code through a model and will allow toggling on and off layers from the UI.
When using Carmenta Engine, there are times in which you want to be more specific about your visualization. Perhaps your visualization is only suitable for certain type of observers, at certain zoom levels or at certain times of the day. These are what we refer to as dynamical runtime condition variables. They exist as a set of UpdateAttributes inside the View class. There is a set of predefined variables but it’s also possible to add custom variables.
PowerShell provides a lot of built-in functionality, but it is also possible to load dll files directly and gain additional functionality. In this article we will have a look at how it is possible to use the Carmenta Engine API directly in PowerShell to automate tasks such as creating configurations for Carmenta Engine.
When working with geospatial applications, a common operation is to convert coordinates between screen pixel coordinates and geographical coordinates. This can be useful in various cases, such as displaying the geographical coordinate for the mouse cursor position, working with custom tools for user interaction, editing feature geometries from code, and more.
Custom objects are a flexible plugin mechanism in Carmenta Engine for integrating customized operations in a regular map configuration. More functionality is added in new Carmenta Engine versions to make this integration more seamless compared to the built-in objects. In this guide, we will focus on the custom dataset use case, for retrieving a customized DataSetInfo, and dynamically instantiating the dataset based on a file on disk.
In Carmenta Engine we define data flows by linking operators together. An operator reads features from its input, processes or manipulates those features and pass the result to the next operator. In the typical case, operators are added and configured in a configuration file and calls are managed by the map view without direct user interaction with the operators.
But in some cases a more custom approach is necessary and the application need to access the processed features directly in code. For example, the application may want to display information produced by the operators or an external component (or service) may want to use the result as input. In this article, we will explain how to approach such use-case.
Geographical data and map views are defined in a Coordinate Reference Systems (CRS). There are many different coordinate systems, which can be used for different purposes. It is for example very common to use a Mercator coordinate projection for visualization of worldwide data on a map. In contrast, Mercator is not recommended for calculations or data storage, because of risk for lack of precision, especially near the poles.
An application often needs to handle geodata in different CRSs or visualize it in another CRS than the CRS of the data source. This means that the data needs to be reprojected at some point. These projections can both affect performance and cause a loss of accuracy if they are not performed efficiently.
Carmenta Engine has in-depth support for efficient coordinate transformations. In this article, we will describe how geographical coordinates are generally handled in the Carmenta Engine workflow, as well as go into some more advanced use cases and best practices.