Skip navigation
All Places > GeoDev Germany > Blog > Author: a.erbeesri-de-esridist

Web AppBuilder for ArcGIS ist eine sofort verwendbare Anwendung zum Erstellen fokussierter ArcGIS Web-Apps mithilfe von intuitiven Widgets und Werkzeugen. Mit Web AppBuilder for ArcGIS können eigene Apps auf ArcGIS Online oder dem eigenen Server gehostet und auf jedem Endgerät genutzt werden. Ebenso lassen sich konfigurierbare Web-App-Vorlagen für die Wiederverwendung und unternehmensweite Nutzung erstellen.

 

Die Funktionalität von Web AppBuilder for ArcGIS lässt sich durch benutzerdefinierte Widgets und Designs noch erweitern. Genau dafür benötigen Entwickler die Web AppBuilder for ArcGIS Developer Edition.

 

 

Die neue Version 2.6 der Web AppBuilder for ArcGIS Developer Edition hat nun den gleichen funktionalen Stand wie der eingebettete Web AppBuilder in ArcGIS Online nach dem September Release. Im SDK selber wurden außerdem einige neue, hilfreiche Klassen und Methoden hinzugefügt.

 

Vollständige Informationen dazu könnt Ihr in diesem Esri Inc. Blogeintrag nachlesen.

ArcGIS Runtime ist eine Familie aus nativen SDKs zur Entwicklung von Geo-Apps für alle populären Mobile und Desktop Plattformen. Mit allen ArcGIS Runtime SDKs lassen sich Apps erstellen, die auch bei eingeschränkter oder fehlender Netzwerkverbindung den Zugang zu Karten und Daten und deren weitere Verwendung ermöglichen. Zusätzlich können Vektordaten auf das Gerät heruntergeladen, offline bearbeitet und später problemlos mit der Datenbank synchronisiert werden, sobald eine Internetverbindung besteht.

 

Für die Offline-Bereitstellung von unterschiedlichen Datentypen gibt es mehrere Möglichkeiten und Workflows, die in ArcGIS Runtime problemlos kombiniert werden können. Dabei ist zu beachten, dass die SDKs für Desktops (.NET/WPF, Java, Qt) mit der Local Server Technologie mit einigen Daten umgehen können, die in den anderen SDKs nicht möglich sind.

 

Grundsätzlich können wir drei Optionen unterscheiden:

  1. Prozessieren von Daten in ArcGIS Desktop in Form von ArcGIS Runtime Content oder verschiedene Arten von Packages und anschließende Bereitstellung per Side-Loading oder File-Download.
  2. Einbinden von „Originaldaten“ so wie sie sind, z.B. GeoTiff’s, KML, Shapes usw.
  3. Export der Daten von Services mit ArcGIS Runtime selbst, zur Laufzeit der App, so z.B. in Collector for ArcGIS (basiert auf ArcGIS Runtime Technologie)

 

Natürlich können die Karten vom Entwickler clientseitig Layer für Layer zusammengepuzzelt werden. Das bedeutet einen gewissen Mehraufwand. Um tatsächlich eine komplette Karte mit allen Daten in einem Rutsch offline zu nehmen und zu nutzen gab es bis zur Version 100.0 der ArcGIS Runtime nur zwei Möglichkeiten – als vorprozessiertes Mobile Map Package (.mmpk) und als Map Package (.mpk) in Kombination mit dem Local Server. Beide zählen zu Option 1 in der Aufzählung weiter oben. Mit ArcGIS Runtime Version 100.1 gibt es nun mit dem neuen OfflineMapTask die Möglichkeit, eine vollständigen Karte in der App zur Laufzeit zu exportieren (Option 3).

 

Der neue OfflineMapTask in ArcGIS Runtime v100.1

 

Voraussetzung für den OfflineMapTask ist eine WebMap, welche für die Offline-Verwendung konfiguriert wurde. Eine WebMap ist eine Beschreibung der Karte in Textformat (JSON) mit Informationen zu Datenquellen, Symbologie und Dingen wie Initial Extent, Design von PopUps u.s.w. Sämtliche ArcGIS Apps und Entwicklerwerkzeuge können WebMaps lesen und die Karte dementsprechend aufbauen. Sie sind somit das ganze Geheimnis, warum Karten durchgängig identisch aussehen egal welche ArcGIS Clients genutzt werden. WebMaps werden als Portal Items in ArcGIS Online oder ArcGIS Enterprise gespeichert und sie haben eine ID. Genau diese ID wird auch für den OfflineMapTask benötigt, um die Karte in ArcGIS Runtime offline zu nehmen.

 

 

Die Schritt für Schritt Implementierung eines OfflineMapTasks steht in der jeweiligen Dokumentation der verschiedenen ArcGIS Runtime SDks beschrieben, hier zum Beispiel für .NET. Zusätzlich gibt es Samples auf GitHub um es auszuprobieren, hier z.B. auch für .NET. Deshalb ist es nicht notwendig die Vorgehensweise in diesem Blog nochmal aufzuschlüsseln.

 

Interessant wiederum ist das Format, in welchem die Karte durch den OfflineMapTask auf dem Gerät abgelegt wird:

 

 

 

In der Doku steht, dass die Daten als Mobile Map Package lokal gespeichert werden. Ein Mobile Map Package, wie wir es bisher kennen, ist eine gepackte Datei mit der Endung .mmpk. Dies hatte ich eigentlich nach dem ersten Test auch erwartet.

 

Es wird aber ein Ordner mit .mmpk (Mobile Map Package) in der Bezeichnung angelegt, siehe Bild. Die Struktur darunter ähnelt stark der Struktur eines entpackten MMPKs (alle Packages sind gezippt). Unter diesem Ordner wiederum befindet sich die Beschreibung/Konfiguration der Karte (mobile_map.mmap), eine SQLite Datenbank (.geodatabase) mit den Vektordaten und auch Tile Packages (.tpk) der Basemaps. Zur Erinnerung, in den bestehenden, gepackten MMPK-Format sind Tile Packages bisher nicht erlaubt.

 

Zudem kann der entstandene Mobile Map Package - Ordner nur noch in ArcGIS Runtime verwendet werden (via MobileMapPackage-Klasse) und nicht wie die gezippten MMPKs auch in ArcGIS Desktop.

 

Ich persönlich vermute, dass wir es hier schon mit einer Weiterentwicklung zu tun haben, die auch auf der Developer Summit in Palm Springs in diversen Roadmaps erwähnt wurde: Mobile Map Packages sollen letztendlich lokal in ArcGIS Runtime verwaltet werden können, sämtlichen Inhalt des ArcGIS Runtime Contents enthalten können, Editierung von Vektordaten innerhalb des Packages ermöglichen und als Austauschformat zwischen ArcGIS Runtime und ArcGIS Desktop nutzbar sein. Genau der richtige Weg würde ich sagen.

The ArcGIS API for JavaScript helps you create web mapping apps that use the geospatial capabilities provided by the ArcGIS platform. For example, you can create apps that display maps in 2D and 3D, integrate with ready-to-use content and services, and more, all in modern browsers like Chrome, Edge, Firefox, Internet Explorer (11 or higher), and Safari (7.1 or higher).

 

The API supports HTML5 and CSS3 components, so you can develop apps that take advantage of modern browser capabilities to improve performance and flexibility. You can also use developer-friendly widgets, flexible UI placement tools, and pop-up windows to build apps that are responsive to any screen size.

 

The new Version 4.5 of the ArcGIS API for JavaScript adds some key capabilities and several smaller enhancements, e.g.:

  • Fast feature layers: Interact with more than a million features
  • Initial release of sketching tools
  • OGC enhancements - WMS and WMTS layers can now be visualized in a 3D scene

 

Fast feature layer rendered with WebGL (beta)

 

In the new version 3.22 of the ArcGIS API for JavaScript there are configurable point clustering as a highlight and some API updates.

 

You can explore the full release notes and more information in this Esri Blogpost.

On September 18th, the third GeoMonday of this year was held on the topic “artificial intelligence and geodata”. More than 30 good-humoured Geogeeks, well supplied with pizza and beer, listened to exciting lectures and discussed lively about them.

 

 

Did you miss this past GeoMonday? No problem, we have recorded all talks and took some pictures, see below. And don't worry, after GeoMonday is before GeoMonday. You can find all the details on meetup.com or here on GeoNet.

 

See you again soon!

Your GeoDev Germany & GeoMonday Team!

 

 

 

Michael Marz, Esri Deutschland:

How neural networks make GIS-supported crop production more efficient

High-tech has already arrived in agriculture. Modern agricultural machinery and geographic information systems make precision farming possible. An important aspect in crop production is the basic fertilization with nutrients and additives. The pH value can already be determined in a small scale and during the crossing of a tractor with specific sensors. For essential macronutrients like phosphorus, on-site soil sampling as well as complex and cost-intensive determination of the content in the laboratory are still necessary. Phosphorus content depends on chemical and physical soil conditions. If these conditions are known, the content of phosphorus can be estimated. This paper provides extracts from a research project on how neural networks help to estimate local phosphorous content for fertilization by learning those nonlinear multilateral relationships in the soil.

 

 

Martin Wilden and Matthias Stein, con terra:

Natural language understanding in web mapping applications

"Will speech soon do away with typing?" - This question has recently been raised by a large German newspaper. Lately, more and more speech assistants like Google Assistant, Amazon's Alexa, Mircosoft's Cortana or Apple's Siri are reaching the market and allowing users to control many parts of their life by voice input. This technology is called natural language understanding (NLU) and may also be used to control Web mapping technology. Imagine that you could say "show me all schools in Berlin" instead of using a selection tool to select those features.

 

 

 

Some impressions:

 

StreetMap Premium for ArcGIS Runtime bietet hochwertige, weltweite Straßendaten, die für die Verwendung bei der kartographischen Kartendarstellung, Geokodierung und dem Routing optimiert wurden. Diese Daten können in Apps eingebunden werden, die mit den ArcGIS Runtime SDKs ab Version 100.0 entwickelt wurden. Sie werden lokal auf dem Gerät des Nutzers gespeichert – dass ermöglicht die Nutzung unterwegs und ohne Internetverbindung. Die Daten werden in regelmäßigen Abständen aktualisiert, so dass sie stets auf dem neuesten Stand sind und somit der Fokus der Entwicklungsarbeit ausschließlich auf der Erstellung und Pflege der eigentlichen Apps liegt.

 

 

Folgende Vorteile bietet StreetMap Premium for ArcGIS Runtime:

 

  • Detaillierte Straßengrundkarte
    Die mit StreetMap Premium for ArcGIS Runtime bereitgestellten Daten wurden bereits aufbereitet und sind als sofort einsetzbare Straßengrundkarte verfügbar. Diese hochwertige Grundkarte bietet in den Apps den nötigen räumlichen Kontext.
  • Suchen und Geokodieren von Positionen
    StreetMap Premium for ArcGIS Runtime umfasst einen Locator-Task zur Geokodierung, der sich ganz einfach in Apps einbinden lässt. Mit diesem Locator können Nutzer nach spezifischen Adressen, Kreuzungen oder Points of Interest suchen und diese auf einer Karte darstellen.
  • Lösen von Routen-Problemen
    StreetMap Premium for ArcGIS Runtime bietet auch ein Netzwerk-Dataset für Verkehrsnetze für umfassende Routing-Analysefunktionen in ArcGIS Runtime-Apps. Diese Daten ermöglichen das Ermitteln der optimalen Routen zwischen verschiedenen Orten im Straßennetzwerk.
  • Offline-Verwendung von Straßendaten
    Die in StreetMap Premium for ArcGIS Runtime verfügbaren Daten sind auch dann verfügbar, wenn keine Verbindung zum Internet besteht. So können Nutzer auch im Außendienst oder Bereichen mit schlechter oder keiner Internetverbindung bequem auf die Grundkarten, Geokodierungsfunktionen und Routing-Funktionalität zugreifen. Ein weiterer Vorteil ist die reduzierte Datenmenge, die übertragen werden muss – dies spart Kosten.
  • Apps für den Einsatz in der ganzen Welt
    Die Daten und Karten von StreetMap Premium for ArcGIS Runtime sind für die ganze Welt verfügbar. Mobile Kartenpakete für unterschiedlichste Gebiete, z. B. Regionen oder Länder, lassen sich damit in Apps einbinden.

 

 

Download und Lizenzierung

ArcGIS Entwickler können mit StreetMap Premium for ArcGIS Runtime ab der kostenlosen ArcGIS Developer Subscription „Essentials“ entwickeln und testen. Die Daten können in Form von Mobile Map Packages (.mmpk) für unterschiedliche Länder und Regionen im Downloadbereich des ArcGIS Developers Portals heruntergeladen werden:

 

 

Für das Deployment der fertigen Apps muss StreetMap Premium for ArcGIS Runtime als Extension zu ArcGIS Runtime lizenziert werden.  Der oder die Lizenzschlüssel (lizenziert wird per Region) werden dazu auch im Code wie eine Extension implementiert. Mehr Informationen zur Vorgehensweise hier am Beispiel des ArcGIS Runtime SDK for .NET.

 

Implementierung

Das Implementieren und Nutzen von StreetMap Premium for ArcGIS Runtime ist intuitiv und in allen ArcGIS Runtime SDKs fast identisch:

 

Öffnen des Mobile Map Packages:

var mapPackage = await MobileMapPackage.OpenAsync(Path to mmpk);

 

Nutzen der fertigen Map(s):

var map = mapPackage.Maps[1];
Map = map;

 

Nutzen des Locator Tasks für Geocoding/Reverse Geocoding usw.:

await mapPackage.LocatorTask.LoadAsync();
var suggestions = await mapPackage.LocatorTask.SuggestAsync("Fechnerstrasse 8, Leipzig");

 

Nutzen des Transportation Networks für Routing:

var routeTask = await RouteTask.CreateAsync(map.TransportationNetworks[0]);

 

 

Mit dem ArcGIS Runtime SDK for .Net sieht es so aus (der Einfachheit halber alles in einer Methode):

private async void CreateMmpkMap()
{
    GraphicsOverlays[0].Graphics.Clear();
    try
    {
        var mapPackage = await MobileMapPackage.OpenAsync(_baseDirectory.LocalPath + @"geodata\Germany.mmpk");
        var map = mapPackage.Maps[1];

        // Locator, just a test
        await mapPackage.LocatorTask.LoadAsync();
        var suggestions = await mapPackage.LocatorTask.SuggestAsync("Fechnerstrasse 8, Leipzig");
        //do something with the suggestions

        await map.LoadAsync();

        //make sure the map loaded
        if (map.LoadStatus != LoadStatus.Loaded) return;

        // Routing
        var routeTask = await RouteTask.CreateAsync(map.TransportationNetworks[0]);

        // get the default route parameters
        var routeParams = await routeTask.CreateDefaultParametersAsync();
        // explicitly set values for some params
        routeParams.ReturnDirections = false;
        routeParams.ReturnRoutes = true;
        routeParams.OutputSpatialReference = map.SpatialReference;


        // create a Stop for my location
        var myLocation = new MapPoint(1375470.8306, 6685056.1967, map.SpatialReference);
        var stop1 = new Stop(myLocation);

        var markerSym = new SimpleMarkerSymbol
        {
            Style = SimpleMarkerSymbolStyle.Circle,
            Color = Colors.Red,
            Size = 12
        };
        var pointGraphic = new Graphic(myLocation, markerSym);
        _graphicsOverlays[0].Graphics.Add(pointGraphic);

        // create a Stop for your location
        var yourLocation = new MapPoint(1377231.148, 6687515.5736, map.SpatialReference);
        var stop2 = new Stop(yourLocation);

        pointGraphic = new Graphic(yourLocation, markerSym);
        _graphicsOverlays[0].Graphics.Add(pointGraphic);

        // assign the stops to the route parameters
        var stopPoints = new List<Stop> { stop1, stop2 };
        routeParams.SetStops(stopPoints);

        var routeResult = await routeTask.SolveRouteAsync(routeParams);

        // get the route from the results
        var route = routeResult.Routes[0];

        // create a graphic (with a dashed line symbol) to represent the route
        var routeSymbol = new SimpleLineSymbol(SimpleLineSymbolStyle.DashDotDot, Colors.Red, 5);
        var routeGraphic = new Graphic(route.RouteGeometry, routeSymbol);

        // add the route graphic to the map view and zoom to its extent
        _graphicsOverlays[0].Graphics.Add(routeGraphic);

        map.InitialViewpoint = new Viewpoint(route.RouteGeometry, 0);

        Map = map;

    }
    catch (Exception ex)
    {
        var text = ex.Message;
    }
}

 

Ergebnis

ArcGIS Runtime ist eine Familie aus nativen SDKs zur Entwicklung von Geo-Apps für alle populären Mobile und Desktop Plattformen. Für Desktops gibt es mit dem Runtime Local Server ein zusätzliches SDK zur Implementierung von erweiterter Geo-Funktionalität. Mit diesen wollen wir uns in dem Blog näher beschäftigen:

 

 

Was ist der ArcGIS Runtime Local Server?

Wie der Name schon andeutet ist der Runtime Local Server ein lokal auf dem Gerät laufender Web GIS Server. Dieser wird aber nicht installiert, sondern zur Laufzeit der ArcGIS Runtime Anwendung als Prozess erzeugt und verwaltet. Wird die Anwendung beendet, beendet sich damit auch der Local Server. Pro ausgeführte Anwendung kann nur ein Local Server gestartet werden (Singleton Pattern), es können aber mehrere Anwendungen mit jeweils eigenem Local Server nebeneinander laufen.

 

 

Die lokalen GIS Services für den Local Server werden auch zur Laufzeit erzeugt und verwaltet. Diese basieren auf lokalen Datenpaketen, welche zuvor mit ArcGIS Desktop erzeugt werden müssen. Genau wie in ArcGIS Online und ArcGIS Enterprise werden diese GIS Services über die ArcGIS Server REST API, also über URLs angesprochen. In ArcGIS Runtime ist es somit egal aus welcher Quelle ein GIS Service stammt, es können die gleichen Tasks und Layer auch dafür genutzt werden.

 

Der Schwerpunkt des Runtime Local Server liegt ganz klar auf dem lokalen Geoprocessing. Hunderte Analyse Tools aus der ArcToolbox, mächtige Model Builder Analyse Modelle und auch eigene Python Skripte in ArcGIS Desktop können zu Geoprocessing Packages gekapselt und diese durch lokale Geoprocessing Services genutzt werden. Das ist der Schlüssel für hochspezialisierten ArcGIS Runtime Anwendungen auch für GIS-Experten.

Es können noch weitere Typen lokaler Services erzeugt werden, dazu später mehr.

 

 

Unterstütze Plattformen 

Folgende ArcGIS Runtime SDKs unterstützen den Runtime Local Server:

ArcGIS Runtime SDK for

Local Server Unterstützung für:

Anmerkungen

.NET

·         Windows (32/64 Bit)

Es wird nur die WPF API unterstützt.

Java

·         Windows (32/64 Bit)

·         Linux (64 Bit)

MacOS wird nicht unterstützt.

Qt

·         Windows (32/64 Bit)

·         Linux (64 Bit)

Es wird nur die Qt/C++ API unterstützt.

 

Weitere mögliche Zielplattformen der SDKs in der Tabelle und auch die ArcGIS Runtime SDKs for Android, iOS und macOS werden nicht unterstützt. Dies lässt sich auch nicht mit Cross-Platform Technologie (z.B. Xamarin oder QML API) umgehen.

 

 

Download und Lizensierung

ArcGIS Entwickler können mit dem Local Server ab der kostenlosen ArcGIS Developer Subscription „Essentials“ entwickeln und testen. Das ArcGIS Runtime Local Server SDK gibt es für Windows und Linux und wird im Downloadbereich des ArcGIS Developers Portals heruntergeladen.

 

 

Die Lizenzstufe einer fertigen Anwendung mit Runtime Local Server Technologie hängt von der implementierten Funktionalität ab. Die Mindeststufe ist dabei ArcGIS Runtime License Level Standard. Für manche Funktionen wird zusätzlich noch die Analysis Extension benötigt. Für Geoprocessing Tools werden die benötigten Lizenzstufenstufen hier aufgeschlüsselt.

 

 

Datenquellen und Funktionalität 

Map- und Geoprocessing Packages können im Moment nur in ArcMap erzeugt werden. Dabei ist folgendes zu beachten:

 

 

Folgendes ist möglich (Auszug):

Quelle

Lokaler Service

Funktionen (Auszug)

Map package (.mpk)

MapService/

FeatureService

  • Dynamische Daten
  • Rasterdaten
  • Features & Tabellen
  • Abfragen, Editierung
  • Dynamic Layers (Hier grundlegende Infos des Konzeptes)
  • Zugriff auf (ArcSDE) Datenbanken
  • uvm

Geoprocessing Package (.gpk)

Geoprocessing Service

https://developers.arcgis.com/net/latest/wpf/guide/local-server-geoprocessing-tools-support.htm

 

 

Implementierung

In der Dokumentation der ArcGIS Runtime SDKs for .NET/WPF, Java und Qt/C++ steht die Implementierung des ArcGIS Runtime Local Server ausführlich beschrieben. Hier die Kurzfassung:

 

  1. Download und Installation
  2. Erstellen eines Local Server Deployments für das Projekt (Welche Funktionalität soll genutzt werden!)
    1. Local Server Deployment Builder tool (Java und Qt)
    2. Deployment manifest file im Visual Studio Projekt (.NET)
  3. Im Code:
    1. Starten des Runtime Local Server
    2. Erzeugen und Starten von lokalen Services auf Basis von Packages
    3. Nutzen der lokalen Services in den entsprechenden ArcGIS Runtime Tasks und Layer

 

Mit dem ArcGIS Runtime SDK for .Net am Beispiel eines einfachen Buffer Tools (Download) sieht es so aus:

 

(a) Starten des Runtime Local Server

private LocalServer _localServer;
private LocalGeoprocessingService _localGpService;

private async void StartLocalServer()
{
    try
    {
        // Get the singleton LocalServer object using the static "Instance" property
        _localServer = LocalServer.Instance;
        _localServer.AppDataPath = @"D:\Temp\LocalServerData";

        // Handle the StatusChanged event to react when the server is started
        _localServer.StatusChanged += (sender, statusChangedEventArgs) =>
        {
            // Check if the server started successfully
            if (statusChangedEventArgs.Status == LocalServerStatus.Started)
            {
                // Start specific local services here ...
                InitializeGpService();
            }
        };
        // Start the local server instance
        await _localServer.StartAsync();
    }
    catch (Exception e)
    {
        Console.WriteLine(e);
    }
}

 

(b) Erzeugen und Starten eines lokalen Services auf Basis eines Geoprocessing Packages (Download) 

private async void InitializeGpService()
{
    try
    {
        // Create a local GP service from a geoprocessing package on disk
        _localGpService = new LocalGeoprocessingService(@"data\simple-buffer.gpk");

        // Handle the status changed event to check when it's loaded
        _localGpService.StatusChanged += (svc, args) =>
        {
            // If service started successfully, create a gp task
            if (args.Status == LocalServerStatus.Started)
            {
                //do something, if needed
            }
        };
        // Start the local geoprocessing service
        await _localGpService.StartAsync();
    }
    catch (Exception e)
    {
        Console.WriteLine(e);
    }
}

 

(c) Nutzen des lokalen Services mit einem Geoprocessing Tasks

private async void MyMapViewOnGeoViewTapped(object sender, GeoViewInputEventArgs e)
{
    var gpUri = new Uri(_localServer.Services[0].Url.AbsoluteUri + "/SimpleBuffer");

    // Create parameters, run the task, process results, etc.
    // ...
    var geoprocessorTask = await GeoprocessingTask.CreateAsync(gpUri);

    var parameter =
        new GeoprocessingParameters(GeoprocessingExecutionType.AsynchronousSubmit)
        {
            OutputSpatialReference = MyMapView.SpatialReference
        };

    var myInputFeatures = new FeatureCollectionTable(new List<Field>(), GeometryType.Point, MyMapView.SpatialReference);
    // Create a new feature from the feature collection table. It will not have a coordinate location (x,y) yet
    var myInputFeature = myInputFeatures.CreateFeature();

    // Assign a physical location to the new point feature based upon where the user clicked in the map view
    myInputFeature.Geometry = e.Location;

    // Add the new feature with (x,y) location to the feature collection table
    await myInputFeatures.AddFeatureAsync(myInputFeature);

    parameter.Inputs.Add("InputFeatures", new GeoprocessingFeatures(myInputFeatures));
    parameter.Inputs.Add("Distance", new GeoprocessingLinearUnit(1000, GeoprocessingLinearUnits.Kilometer));

    GeoprocessingJob job = geoprocessorTask.CreateJob(parameter);
    try
    {
        // Execute analysis and wait for the results
        var analysisResult = await job.GetResultAsync();
        var outputFeatures = analysisResult.Outputs["BufferOutput"] as GeoprocessingFeatures;
    }
    catch (TaskCanceledException cancelledException)
    {
        // This is thrown if the task is cancelled.
        MessageBox.Show(cancelledException.Message);
    }
    catch (Exception exception)
    {
        MessageBox.Show(exception.Message);
    }
}

 

Ergebnis

 

Resümee

Mit der Local Server Technologie können fokussierte ArcGIS Runtime Anwendungen mit Werkzeugen aus ArcGIS Desktop für den GIS-Expertenbereich erstellt werden. Weiterhin gibt es die Möglichkeit, direkt auf Daten einer SDE zuzugreifen, viele verschiedene lokale Datentypen zu nutzen und vieles mehr. Und das mit modernster Technologie (64 Bit, Asynchron usw.) für verschiedene Desktop Plattformen. Wenn das nicht Grund genug für ArcGIS Engine/ArcObjects Entwickler ist …

Mit dem Major Release von ArcGIS Pro 2.0 mit vielen spannenden Neuerungen wurde auch ein zugehöriges ArcGIS Pro 2.0 SDK veröffentlicht. Mit diesem SDK können .NET Entwickler eigene individuelle Werkzeuge und Workflows für ArcGIS Pro erstellen.

 

 

Migration 

ArcGIS Pro 2.0 ist ein „breaking change“ Release. Add-Ins und Konfigurationen, welche mit der Version 1.4 oder davor entwickelt wurden, müssen neu kompiliert werden. Dabei sind gegebenenfalls folgende Dinge zu beachten/fixen:

 

  • ArcGIS Pro .NET Assemblies sind nun strong-named
  • Einige API Komponenten haben sich geändert, z.B. sind viele ehemals asynchrone Methoden nun synchron
  • ArcGIS Pro WPF styles, brushes und colors wurden umbenannt

 

Highlights 

  • Neue Klassen und Methoden für den Umgang mit Raster, Geodatabase, Mapping, Geometry, Content Management und Editieren
  • Visual Studio 2017 Support
  • Viele Samples und Guides auf GitHub

 

Ausführliche Informationen zu allen Neuerungen des ArcGIS Pro 2.0 SDKs findet Ihr in diesem News Blog von Esri Inc. und in der ArcGIS Pro 2.0 API Reference.

AppStudio for ArcGIS ist eine innovative Anwendung zur Erstellung mobiler Karten-Apps für Android, iOS, Mac, Linux und Windows. Apps werden einmal erstellt und sind dann plattformübergreifend und auf jedem Gerät sofort verwendbar. Programmierkenntnisse sind für das Erstellen von Apps mit AppStudio for ArcGIS nicht notwendig, denn es enthält eine Reihe konfigurierbarer App-Vorlagen, mit denen Aussehen, Verhalten und Inhalte gesteuert werden können.

 

Ist die App fertig, kann sie auf allen Geräten getestet und organisationsweit freigegeben oder über Apple App Store, Google Play, Ubuntu Apps Directory und Windows Store öffentlich zur Verfügung gestellt werden.

 

Entwickler können mit den AppStudio Desktop Editionen bestehende App-Vorlagen anpassen und auch vollständig eigene Apps erstellen. Dabei unterstützt die volle Power von ArcGIS Runtime.

 

Mit AppStudio for ArcGIS Version 2.0 kommen neue Funktionen, aktualisierte Werkzeuge für Entwickler und ein moderner Look & Feel. Zum Beispiel:

 

Support von ArcGIS Runtime Version 100.1

Jetzt können auch alle Möglichkeiten der neuesten ArcGIS Runtime Generation in AppStudio genutzt werden, z.B. Apps mit 3D Scenes oder die Nutzung von Datenformaten wie Mobile Map Packages und Vector Tile Basemaps.

 

Verbesserte App Templates

Das Map Viewer Template hat neben neuen Funktionen ein intuitives neues Interface und bietet nun ein adaptives Design für alle Bildschirmgrößen. Das Quick Report Template hat unter anderem ein neues Kameramodul, dark/light Themes und die Möglichkeit zum Offline arbeiten spendiert bekommen.

 

Neues Look & Feel der AppStudio Desktop Edition

Die Desktop Edition wurde von Grund auf neu designt und bietet nun ein konfigurierbares Interface, Schnellzugriff auf Werkzeuge und auch die beliebten dark/light Themes. Apps und Samples können durch Tags oder andere Filteroptionen schneller gefunden werden.

 

 

Neue Möglichkeiten für Entwickler

In AppStudio wurden verschiedene AppFramework Plugins für Local Notification, Vibration, Background Location, Promises und SQL Storage implementiert. Diese unterstützen bei der Entwicklung von leistungsstarken und modernen native Apps. Diese Plugins befinden sich noch im Beta Status.

 

 

Ausführliche Informationen zu den Neuerungen von AppStudio for ArcGIS Version 2.0 findet Ihr in diesem News Blog von Esri Inc. und in der AppStudio GeoNet Gruppe.

Am 21.03.2017 hat Lars zum Auftakt unserer vierteiligen Webinarreihe für Entwickler über das neue ArcGIS Developer Program in einem einstündigen Webcast informiert. Am Dienstag (28.03.) haben Lars und ich den zweiten Webcast gehalten. Diesmal ging es rund um die Erstellung nativer Apps mit ArcGIS Runtime mit dem Schwerpunkt auf die neue Version 100 (Quartz) und Infos über das neue ArcGIS Runtime Deployment Model.

 

Nach einer kurzen Einleitung haben wir zuerst mit der Quantum Systems Ground Control App zur Erstellung von Flugplänen und der Administration von Drohnen veranschaulicht, was für coole Dinge mithilfe von ArcGIS Runtime entwickelt werden können. Danach informierten wir in einem etwas längeren Teil über die neue Architektur und Funktionalität der Version 100, auch mit einigen Demos und Codebeispielen. Im letzten Teil berichteten wir über das neue Lizenzmodell für das Deployment von ArcGIS Runtime Apps.

 

Links zu ArcGIS Runtime Samples:

 

Das Video zum Webcast:

 

 

Herzlichen Dank nochmal für die rege Teilnahme, es hat auch uns großen Spaß gemacht. Wir haben Eure Fragen in den Kommentaren unten direkt beantwortet. Falls Ihr noch weitere Fragen habt, oder Anregungen und Kritik, könnt Ihr auch die Kommentare dazu nutzen. Der Foliensatz zum Webinar ist als PDF an diesen Blog angehangen.

 

Euer GeoDev Germany Team

 

PS: Der nächste Webcast über die Neuerungen der ArcGIS API for JavaScript 4.x und Web AppBuilder for ArcGIS findet nächsten Dienstag, den 04.04., um 16 Uhr statt. Wer noch nicht für die Webinarreihe angemeldet ist, zur Registrierung geht es hier.

[Blogeintrag hier auch auf deutsch]

 

The native ArcGIS Runtime SDKs help developers build applications that provide comprehensive spatial capabilities and deploy them to a variety of popular mobile and desktop platforms and devices. These SDKs enable users to explore and leverage the ArcGIS platform's Web GIS capabilities by accessing and working with data in the cloud but also taking data offline to perform various workflows such as editing, synchronizing, geoanalytics, geocoding, locating as well as routing. All native ready-to-use apps by Esri, such as Collector for ArcGIS, are based on ArcGIS Runtime technology. The new version 100.0 (formerly known as “Quartz”) is a major release with significant changes in terms of functionality, architecture, APIs, and licensing.

 

New Functionality

 

Highlights include 3D visualization and the use of new data formats as well as working seamlessly with all Web GIS platforms, such as ArcGIS Online and Portal for ArcGIS. Moreover, new capabilities and enhancements have been implemented for geometries, Smart Mapping, symbology, and many other features. Authentication has become much simpler, too.

 

ArcGIS Runtime 3D Scene

 

Apps can now visualize 2D maps as well as 3D scenes, both relying on the same data sources. 3D scenes additionally use scene layers to render local 3D scene layer packages or 3D scene services, e.g. for visualizing 3D building models. Using elevation services or local raster data, you can incorporate elevation models into scenes. There is special 3D symbology for features as well as 3D options for rendering and displaying, such as extrusion, to manipulate the view and enhance features.

 

Mobile map packages, vector tile basemaps, and many other data formats are now available as data sources. Mapping has generally become more easy, e.g. by using preconfigured, ready-to-use maps from the cloud or as a data package rather than compiling them from different data sources on the client side. In addition to that, there are tools available for saving and sharing maps compiled on the client side.

 

The integration of ArcGIS Runtime into the concept of Web GIS has been significantly enhanced. Prior to this version, content already included web maps, services, and data. It is now possible to use this content to create, manipulate, and save workflows. Authentication Manager, a class that can be configured to implement, manage, and control security-related events, is now available for easy and centralized authentication handling.

 

Changing the Architecture and APIs

 

ArcGIS Runtime v100 architecture

 

All ArcGIS Runtime SDKs use the same C++ runtime core. This core controls the communication to the hardware of the end device and implements the business logic for visualization. It is responsible for accessing the data and the engines for analyses, navigation, labeling, and other operations. Platform-specific APIs for iOS, Android, .NET, Java, Qt/QML, and OS X all make use of this runtime core. As an example, the ArcGIS Runtime SDK for Android is made up of the Android API, the runtime core as well as the related documentation.

 

This C++ application programming interface (API) and the C application binary interface (ABI) between platform-specific APIs and the runtime core are new technology features. In the previous version, the APIs directly accessed the runtime core libraries which caused a higher programming effort (Interop) just for communication. This effort has been reduced significantly by the new interfaces. Another benefit is that new functionality is quickly implemented into all SDKs which in turn minimizes error susceptibility.

 

All platform-specific APIs have been completely redesigned. This was mostly necessary to incorporate the 3D functionality and implement the new way of accessing the runtime core. Additionally, APIs have been standardized to the most part (e.g. consistent use of class and method names). Error handling has been simplified, and a loadable pattern can now be used to monitor the asynchronous nature of loading data.

 

With ArcGIS Runtime v100.0, cross-platform development is also enabled with some SDKs. As an example: .NET developers may now use the ArcGIS Runtime SDK for .NET with incorporated Xamarin technology to develop cross-platform Xamarin apps for Android and iOS. You can also build and deploy to OS X as a platform using ArcGIS Runtime SDK for Java.

 

New Deployment License Model

 

With ArcGIS Runtime v100.0, Esri provides a new licensing model for deploying apps at four license levels: Lite, Basic, Standard, and Advanced. The functionality differs depending on which license level is acquired but common operations are provided whether you are online or offline. Lite level is available for free and enables users to create viewer apps with maps, geocoding, and simple routing. At the Basic level, developers can create apps for data collection.

 

Standard and Advanced level functionalities address developers of advanced GIS applications. These apps can provide access to additional data formats and analysis capabilities. The Standard and Advanced license levels come with an Analysis Extension, supporting a subset of the ArcGIS toolboxes Analysis, Network Analyst, Spatial Analyst, and 3D Analyst.

 

Two options are available to set the license level for your ArcGIS Runtime apps: deployment license key and named user (not available yet for Standard and Advanced).

 

Migration from ArcGIS Runtime Version 10.2.x to v100.0

 

Due to large-scale changes in the architecture and within the APIs, a simple migration from version 10.2.x to v100.0 is not possible. Developers need to rewrite apps, and some functionality from the previous version has not been included in ArcGIS Runtime v100.0 yet. Future releases will close this gap.

 

Conclusion

 

With ArcGIS Runtime v100.0, a new era has begun. It is an important foundation for all future requirements on how native apps leverage and support the concept of Web GIS and make use of the ArcGIS functionality. For ArcGIS Engine developers ArcGIS Runtime is now a valid option to create GIS applications using modern technology. Esri Inc. puts it in a nutshell: Building a platform for app developers for the future!

[Blogeintrag hier auch auf deutsch]

 

With ArcGIS 10.4, Esri introduced a new, compact data type for offline usage. Maps, address locators, and routing networks can be compiled to individual Mobile Map Package using ArcGIS Pro 1.2 or higher. This is the next generation Runtime Content that requires the separate creation of each data type, though.

 

Mobile Map Packages (.mmpk) can conveniently be shared on ArcGIS Online, Portal for ArcGIS, or by creating copies.  MMPKs can be utilized in Navigator for ArcGIS, with apps developed with ArcGIS Runtime, starting with version 100 ("Quartz"), and in ArcGIS Pro.

 

Key Facts

 

  1. Mobile map packages are unique file packages.
  2. They require little memory space and can easily be shared and updated.
  3. They can be used across various platforms.
  4. It's possible to include maps, address locators, and road networks (even individually).
  5. MMPKs can comprise of multiple maps, locators, or routing networks.
  6. Map packages can easily be used with ArcGIS apps and applications developed with ArcGIS Runtime.
  7. Mobile map packages are read-only.

 

Creating Mobile Map Packages

 

Mobile map packages can be created using the Create Mobile Map Package tool in ArcGIS Pro 1.2 or higher. Relevant data and capabilities have to be compiled in advance. There are various ways for creating MMPKs. This article presents two alternatives to create mobile map packages with an appealing map, a locator, and a customized routing network that provides an option to leave the public road and navigate on private forestry roads.

 

Mobile Map Packages with OpenStreetMap and Private Assets

 

Navigator for ArcGIS with OSM

Navigator for ArcGIS with OSM

 

OpenStreetMap (OSM) data is available free of cost and of quite good quality. The creation of an appealing map, the implementation of a suitable address locator and a road network for routing requires some efforts, though.

 

Initially, all data must be prepared for usage with ArcGIS. The map and road network can be created using the ArcGIS Editor for OpenStreetMap. This free and open ArcGIS for Desktop add-on allows for the filtering of raw OSM data to gain the required information, and the extraction into an ArcGIS-compatible format. The next step is the design of a visually appealing map (this part can be a challenging task for non-cartographers) and the creation of a routing network. The road network can be extended with private assets. In this example, a polyline feature class of forestry roads and another feature class of connections between public and forestry roads (so-called "transitions") are added to the network. The transitions have to be created manually using the Snapping tool (snapping public to forestry roads) and are then stored in the feature class. After reprocessing the network, it is possible to leave the public roads and navigate on the forestry roads. Network quality and performance are influenced by applied rules and attributes. And this is where the actual work starts: Cul-De-Sac rules, speed limits, U-turn policies, special walking, driving, or trucking routes—just to name a few—can be configured.

Finally, a suitable address locator is required, a rather laborious task. To configure the locator, cities, addresses, POIs, and their coordinates have to be extracted from the OSM data. The locator is then created with the appropriate ArcGIS Pro or ArcGIS for Desktop tools.

 

After importing the ArcGIS for Desktop project (.mxd) into ArcGIS Pro, the Create Mobile Map Package is run to create the MMPK that is based solely on OSM data.

 

Quick overview of the required steps:

  1. Import OpenStreetMap data into ArcGIS using ArcGIS Editor for OSM.
  2. Design the map.
  3. Create a routing network and add private assets.
  4. Configure the locator.
  5. Create a mobile map package with ArcGIS Pro.

 

Mobile Map Packages with StreetMap Premium for ArcGIS and Private Assets

 

Navigator for ArcGIS with StreetMap Premium

Navigator for ArcGIS with StreetMap Premium

 

StreetMap Premium for ArcGIS is a data package that is subject to cost (one-year subscription) and is based on HERE data (formerly NAVTEQ). The StreetMap Premium portfolio provides everything that is required: global dataset with appealing maps for day and night time, locators for individual countries, and a road network with almost perfect rules.  StreetMap Premium includes an ArcGIS Pro project that can be used very easily and without much additional effort to create mobile map packages.

 

In addition to that, StreetMap Premium provides the option to extend maps and road networks with private assets. To learn more about extending the road network, please check this tutorial.

 

Note: The tutorial describes the steps to add individual roads and streets manually. Usually a feature class with this data - forestry roads in our example - already exist.  In this case only the transitions have to be added manually. Next, the data is imported into the appropriate StreetMap Premium feature class "Custom Streets" and adapted to the target schema (attributes). This can be done with the Append geoprocessing tool in ArcGIS Pro. Finally, the required attributes like STREET_NAME or Paved are adjusted for accurate processing of routes and directions. Various tools or Python can be used for automating this step.

 

Quick overview of the required steps:

  1. Extend a routing network with private assets.
  2. Create a mobile map package with ArcGIS Pro.

 

Summary

 

Mobile map packages are ideal to use maps and to search for addresses or routes offline on mobile devices. The main challenge is the data that forms the basis for these packages. The examples above, using OpenStreetMap or StreetMap Premium, have demonstrated the options available: When using free data, some work is required to prepare the information and achieve the desired quality.  With StreetMap Premium, this work can be avoided by paying a fee. In either case, extending the routing network with private assets is the exciting part.

 

Whatever option you choose, all data will end up in one single package eventually. This allows for the creation of customized mobile map packages for various application scenarios and their easy distribution to mobile devices. Which "out of the box" navigation software that you know - other than Navigator for ArcGIS - provides the possibility to replace data at your own discretion and to route on private roads, as shown in our example?

Die ArcGIS API for JavaScript bietet eine effiziente Unterstützung beim Erstellen von Web-Mapping-Apps, bei denen die räumlichen Funktionen der ArcGIS Plattform zum Einsatz kommen. Damit lassen sich beispielsweise Anwendungen entwickeln, die Karten visualisieren, vorkonfigurierte Inhalte und Services einbinden, Wegbeschreibungen und Routen erstellen, geometrische Berechnungen durchführen und vieles mehr – all dies für gängige Browser auf Desktops und mobilen Geräten.

Dank der Unterstützung von HTML5- und CSS3-Komponenten lassen sich die Performance und Flexibilität der Apps steigern. Hilfreich sind außerdem praktische Widgets, flexible Tools zur UI-Konfiguration sowie Pop-ups zur Umsetzung des Responsive Designs.

Mit der 4.x Serie der ArcGIS API for JavaScript hat Esri eine neu überarbeitete Version herausgebracht, die nun auch Web-Karten und Funktionen in 3D unterstützt. Das Ziel war die Verwendung von 3D-Webkarten so einfach zu gestalten wie 2D-Webkarten. Dafür wurde die API grundlegend neu entworfen. Ein neues einheitliches Programmiermodell ermöglicht bei 3D-Webszenen die gleiche Implementierung von Layern, Rendering, Tasks, Geometrie, Symbolisierung, Pop-ups und Navigation wie für 2D-Anwendungen. Außerdem lassen sich die Atmosphäre, Lichtverhältnisse sowie Kamerawinkel modifizieren – dies gewährleistet eine besonders realistische Darstellung.

 

Die Highlights in der neuen Version 4.1 sind:

 

  • Unterstützung weiterer Funktionen mit Dynamic MapServices

Mit Dynamic MapServices können Darstellung und Inhalte des Dienstes dynamisch angepasst werden. Es können nun unter anderem dynamische Popups, Labels und Daten-Layer genutzt werden.

 

  

 

  • Neuer 3D Layer IntegratedMeshLayer

Damit können unter anderem realistische Texturen wie Hausfassaden und Bäume aus 3D Objekten erstellt werden.

 

 

  • Neuer CSV Layer

Sehr einfachen Darstellen von Geo-Objekten aus .csv-Dateien.

 

  • Schreiben von WebScenes

WebMaps sind Konfigurationen für komplette 2D-Karten und für 3D-Karten sind es WebScenes. Diese Webscenes können nun von Web-Entwicklern neu erstellt oder bestehende geändert werden.

 

  • PrintTask zum Drucken von Karten (nur 2D)

Ein ready-to-use Task zum Ausdrucken von 2D-Karten und Inhalten mithilfe eines Print Services. 

 

Die 3.x Serie und die 4.x Serie der ArcGIS API for JavaScript werden parallel weiterentwickelt und bleiben auch eine Zeitlang nebeneinander bestehen, solange bis die 4.x Serie alle Funktionen der Vorgängerversion enthält. Für neue Projekte wird generell empfohlen die 4.x Serie zu nutzen, es sei denn es fehlen Funktionen aus der 3.x Serie. Für die richtige Wahl hilft dabei eine Entscheidungsmatrix.

 

Weiterführende Informationen zum ArcGIS API for JavaScript 4.1 findet Ihr auf dem Esri Blog.

Der Web AppBuilder for ArcGIS ist eine sofort verwendbare Anwendung zum Erstellen fokussierter ArcGIS Web Apps mithilfe von intuitiven Widgets und Werkzeugen. Mit Web AppBuilder for ArcGIS können eigene Web Apps auf ArcGIS Online oder dem eigenen Server gehostet und auf jedem Endgerät genutzt werden. Mit der Developer Edition können Entwickler benutzerdefinierte Widgets und Designs erstellen.

 

Die Version 2.1 des Web AppBuilder for ArcGIS Developer Edition steht nun zum Download bereit. Sie beinhaltet alle Neuerungen des Juni 2016 Updates der eingebetteten Version auf ArcGIS Online. Kurz zusammengefasst - es gibt sieben neue Widgets, viele existierende Widgets wurden erweitert und es gibt mehr Möglichkeiten für das Design und Attributierung der eigenen Web Apps. In dieser StoryMap können einige der neuen Widgets ausprobiert werden.

 

ObliqueViewerWidget.png

Neu in Version 2.1 – Oblique Viewer Widget

 

Für Entwickler wurden neue Optionen hinzugefügt, z.B.:

  • Unterstützung von Feature Actions

     In Widgets oder Popups können für einzelne Features oder Gruppen von Features spezielle Aktionen ausgelöst werden,      z.B. „Zoom to“ oder „Export to CSV“. Es können auch eigene Feature Actions erstellt werden.

  • Neue Klassen

     Zum Beispiel die Klasse FeatureActionManager zum Handling von FeatureActions.

  • Neue Tutorials

     Lernhilfen zum Erstellen von Themes, Panels, Layout Widgets, Controller Widgets und Feature Actions

  • Der eingebettete lokale Webserver Node.js wurde auf Version 4.4.7 aktualisiert

 

 

Die vollständige Liste der Neuerungen des Web AppBuilder for ArcGIS 2.1 Developer Edition  kann hier nachgelesen werden.

Mit AppStudio for ArcGIS muss eine App nur einmal erstellt werden und kann dann ganz einfach als native Apps für Android, iOS, Linux, OS X oder Windows bereitgestellt werden. Diese Apps können innerhalb der Organisation freigegeben oder in den gängigen App-Stores der Öffentlichkeit zur Verfügung gestellt werden. Mit der Web-Variante des AppStudios können Apps sehr einfach mit ready-to-use Templates konfiguriert werden. Mit der Desktop-Variante können Entwickler die Templates an eigene Bedürfnisse anpassen oder „from scratch“ vollständig eigene erstellen. Mit dem AppStudio erstellte Apps basieren auf dem ArcGIS Runtime SDK for Qt/QML.

 

AppStudio for ArcGIS 1.2 beinhaltet neue Funktionalität und es wurden die AppStudio Templates, die Webseite, die Desktop-Entwicklerwerkzeuge und der AppStudio Player aktualisiert.

Die Highlights sind:

 

  • Unterstützung für Portal for ArcGIS

AppStudio Apps können jetzt auch in Portal for ArcGIS (on-premises) verwaltet werden. Mit dem AppStudio Player kann auf Portal for ArcGIS zugegriffen werden.

 

  • Neue AppConsole für Debugging

Mit diesem Werkzeug können Entwickler Software Messages loggen und somit sehen, was intern in der App passiert. Es können auch Logging-Daten von Geräten im gleichen Netzwerk empfangen werden.

 

AppStuddio_Console.png

 

  • Verbesserungen und Bug Fixes der AppStudio Templates

Beispielsweise kann im Map Tour Template nun die OSM Basemap genutzt werden und Fotos werden besser dargestellt.

 

Weitere Infos dazu gibt es hier.

Zurzeit gibt es zwei nebeneinander existierende Versionen der ArcGIS API for JavaScript. Einerseits die schon länger bestehende 3.xx API, welche nun mit der Version 3.17 ein neues Update bekommen hat, - und die erst vor kurzem veröffentlichte neue Generation 4. Beide APIs werden funktional weiterentwickelt und unterstützt. Es gibt zwei Gründe, warum beide APIs parallel weiterführt werden. Erstens, die 4.xx API ist aufgrund einer grundlegend überarbeiteten Architektur nicht mehr kompatibel zu den Vorgängerversionen und zweitens, die neue 4.xx API enthält noch nicht alle Funktionen der 3.xx API. Das bedeutet für Entwickler, dass sie sich momentan für eine der APIs entscheiden müssen. Für die richtige Wahl hilft dabei eine Entscheidungsmatrix.

 

Neu in der ArcGIS API for JavaScript 3.17 sind neben einigen Bugfixes und kleineren Verbesserungen folgende Highlights:

 

  • Smart Mapping: Datums-basierte Visualisierung

Smart Mapping sind coole Werkzeuge auf ArcGIS Online/Portal zur Visualisierung von Karten. Mit Datums-basierter Visualisierung können Karten durch Datumsattribute in Features entsprechend farblich oder in der Transparenz angepasst werden.

 

smartmapping-date.png

 

  • Verbesserung von Feature-Tables

Es werden nun Attachements unterstützt, es können mehr Informationen angezeigt werden und es gibt nun mehr Optionen für Entwickler zum Anpassen von Feature-Tables.

 

featuretable-attachments.png

 

  • Verbesserter OGC Support

     Es wurden mehr Möglichkeiten zur Visualisierung von WMS- und WFS Layer implementiert.

 

Eine Vollständige Liste aller Änderungen gibt es hier.

Filter Blog

By date: By tag: