Release Notes 4.19
What’s New
Neuerungen für 3D-Szenen
Dieses Release bringt zahlreiche neue Funktionen und Verbesserungen für 3D-Szenen mit sich, die im Folgenden detailliert beschrieben werden.
Neue Layer-Typen
Es stehen drei neue Layer-Typen für die Darstellung in 3D-Szenen zur Verfügung:
-
Szenen-Layer von Gebäuden (BuildingScene) : Ermöglicht die Visualisierung und Analyse von Gebäudemodellen in einer 3D-Szene.
-
Punktwolken-Szenen-Layer (Point Cloud) : Eignet sich zur Darstellung von Punktwolken, die beispielsweise aus LIDAR-Daten stammen.
-
Voxel-Layer : Bietet eine Möglichkeit, volumetrische Daten wie Umweltdaten oder 3D-Modelle darzustellen.
Alle diese Layer-Typen erweitern die Einsatzmöglichkeiten und Flexibilität bei der Arbeit mit 3D-Szenen.
Suche und Selektion in Szenen-Layern
Ab dieser Version können Szenen-Layer (Scene Layer) für Suchen und Selektionen genutzt werden. Dies ermöglicht es beispielsweise, direkt zu einem spezifischen Gebäude oder 3D-Objekt zu navigieren. Zudem können Attribute von mehreren Objekten gleichzeitig selektiert werden und im Result Center angezeigt werden.
Umgebungsvariablen
Durch das Festlegen von Umgebungsvariablen können Sie das Erscheinungsbild einer 3D-Szene anpassen. Zu den Möglichkeiten gehören:
-
Wetterbedingungen wie Niederschlag oder Bewölkung definieren.
-
Hintergrundfarben anpassen, um die visuelle Darstellung der Szene zu individualisieren.
Weitere Verbesserungen
-
Die Navigation in 3D-Ansichten wurde optimiert. Es ist jetzt möglich, Werkzeuge für die vorherige und nächste Ansicht zu verwenden.
-
Der Inhaltsbaum (TOC) zeigt nun korrekte Warnindikatoren für maßstabsabhängige Layeransichten in 3D-Szenen an.
-
map.apps unterstützt den
viewingMode
einer 3D-Szene.
Verbesserter Wechsel zwischen 2D und 3D
Dieses Release erleichtert den Wechsel zwischen 2D- und 3D-Ansichten durch folgende Neuerungen:
-
Spezifische Layer oder Grundkarten können für die 2D- oder 3D-Ansicht ausgeblendet werden.
-
Der Inhaltsbaum (TOC) gibt nun Hinweise zu Inhalten, die im 2D-Ansichtsmodus nicht dargestellt werden können.
ArcGIS Location Platform
-
Die Unterstützung für den Basemap Styles Service V2 wurde eingeführt.
-
Möglichkeit zur Konfiguration eines globalen API-Schlüssels (API Key), um ohne einzelne Nutzer-Anmeldung auf bestimmte ArcGIS Resourcen zugreifen zu können.
-
Der ArcGIS Locator unterstützt nun die korrekte Verwendung von ArcGIS API-Schlüsseln.
App-Editor
-
Der App-Editor bietet nun Vorschläge für die Konfiguration von 3D-Grundkarten.
-
Verbesserte Unterstützung für die Konfiguration und Validierung von Grundkarten, um Fehler bei der Konfiguration zu minimieren.
Weitere Neuerungen
-
Die technische Basis von map.apps wurde auf ArcGIS Maps SDK for JavaScript Version 4.31 aktualisiert. Dies bringt zahlreiche Verbesserungen und Fehlerbehebungen mit sich.
-
Die MapDraw-API wurde erweitert und bietet nun Optionen für Freihand- und Hybridzeichnungen.
-
Der Inhaltsbaum (TOC) blendet den Transparenzregler für Layer ohne Unterstützung für unterschiedliche Transparenzen aus.
-
Layer ohne Legende zeigen im Inhaltsbaum (TOC) keinen Erweiterungspfeil mehr an.
-
Die Result-UI unterstützt nun die Möglichkeit, benutzerdefinierte Symbole in Row- und Bulk-Actions hinzuzufügen.
-
Die Legende und der TOC unterstützen jetzt die neue Eigenschaft
respectLayerDefinitionExpression
, die für eine bessere Darstellung und Filterung sorgt.
Update-Hinweise
Falls Sie bei dem Update mehrere Versionen überspringen, befolgen Sie bitte auch alle Update-Hinweise der dazwischenliegenden Versionen. |
Unterstützung für sensible Daten in separater Datei (secrets.properties
)
Mit diesem Release wurde die Möglichkeit eingeführt, sensible Daten aus der Datei application.properties
in eine separate Datei namens secrets.properties
auszulagern.
Wenn mit mehreren Personen auf die Datei geschaut wird (zum Beispiel in einem Screen-Sharing) oder Sie die Konfigurations-Datei application.properties
an unseren Support oder andere senden, sind die sensiblen Daten so nicht mehr sichtbar.
Wir empfehlen Ihnen, ihre Konfiguration zu überprüfen und sensible Daten, wie zum Beispiel Passwörter, in eine Datei secrets.properties
zu verschieben, um die Sicherheit zu erhöhen.
Beispielkonfiguration
In der Datei application.properties
wird auf die Datei secrets.properties
verwiesen, die sensible Daten enthält:
# Load secrets from separate file
include=./secrets.properties
# Admin user definition
security.user.admin.pw=${secret.admin.pw}
Die tatsächlichen sensiblen Daten, wie Passwörter, werden dann in der Datei secrets.properties
definiert:
secret.admin.pw=fill-with-password
Weitere Informationen finden Sie in der Dokumentation.
Kompatibilität mit map.apps SDI
Sollten Sie die Erweiterung map.apps SDI nutzen, müssen Sie diese auf die Version 5.6.4 aktualisieren.
Änderungen an der Konfiguration (application.properties
)
-
Die Eigenschaft
proxy.allowedSSLDNs
wurde entfernt. Sollte diese in Ihrerapplication.properties
Datei gesetzt sein, entfernen Sie diese. -
Die Eigenschaft
analytics.gelf.identifier
wurde inanalytics.identifier
umbenannt. Falls sie diesen Wert verändert haben, korrigieren Sie bitte den Namen der Eigenschaft. -
Der Standardwert der Eigenschaft
printtask.service.url
wurde entfernt. Sie müssen von nun an explizit die URL eines ArcGIS Server Print Tasks konfigurieren, bevor sie die Druckfunktion nutzen können. Wir empfehlen einen Druckdienst zu verwenden, der von einem Ihrer ArcGIS Server gehostet wird.Beispiel:
https://example.com/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task
Änderungen in der Bundle-Konfiguration
-
Die Eigenschaft
ensureGeometryInMapSRS
wurde aus derConfig
-Komponente desparametersearch
-Bundles entfernt. Wenn Sie diese Eigenschaft explizit in Ihrer App-Konfiguration angegeben haben, können Sie die Eigenschaft entfernen.
Änderungen in der Konfiguration des Bundles basemapswitcher
Das Bundle basemapswitcher
benötigt seit dieser Version zwingend eine Konfiguration einer Basiskarte mit passender ID über das map-init
Bundle.
Das folgende Beispiel zeigt die notwendige Konfiguration:
"basemapswitcher": {
"Config": {
"nextBasemap": "esri-basemap-1"
}
},
"map-init": {
"Config": {
"basemaps": [
{
"id": "esri-basemap-1",
"basemap": {
"style": {
"id": "arcgis/streets"
}
}
}
]
}
}
Sollte das basemapswitcher
-Bundle keine passende Basiskarte finden, wird das Widget ausgeblendet.
Anpassung der autofocus
-Property im Fenster-System
Mit diesem Release wurde die autofocus
-Property im Fenster-System erweitert und ein neuer Wert eingeführt.
Somit gibt es nun folgende Werte für die autofocus
-Property:
-
false
→ Kein automatischer Fokuswechsel -
true
→ Fokus wechselt zum ersten fokussierbaren Inhaltselement (oder ersatzweise zum Fenster selbst). Dieser Wert bleibt aus Gründen der Rückwärtskompatibilität und für spezifische Anwendungsfälle (z. B. Fenster mit Formularen) erhalten. -
window
→ Der Fokus wird immer direkt auf das Fenster gesetzt. Dies ist der neue Standardwert, er wird also angewandt wenn kein expliziter Wert konfiguriert ist.
Um das alte Verhalten wieder herzustellen, also den Fokus weiterhin auf das erste fokussierbare Inhaltselement zu legen, setzen Sie autofocus: true
explizit in Ihrer Konfiguration.
Ausgelaufene Unterstützung
-
Die Bundles
omnisearch-portalitem
undshare-link-shim
wurden entfernt. -
Das Widget
username
aus dem Modulauthentication/UsernameWidget
wurde entfernt. Benutzen Sie stattdessen das WidgetauthenticationInfo
aus dem Modulauthentication/AuthenticationInfoWidget
.
map.apps verwendet das WidgetauthenticationInfo
seit längerem standardmäßig im seasons Template. Das heißt, dass ein Anpassung nur notwendig ist, wenn Sie das Widgetusername
explizit in Ihren Apps verwenden. -
Die Unterstützung von
app.jsp
Dateien für das rollenbasierte Filtern vonapp.json
Dateien wurde entfernt.
Abkündigungen
Für folgende Features wird die Weiterentwicklung eingestellt und das Ende der Unterstützung für die Zukunft angekündigt. Beachten Sie außerdem die Hinweise in den Systemanforderungen.
-
map.apps Manager und App-Konfiguration:
-
Die Live-Konfiguration wird nicht mehr weiterentwickelt und wird in einer der kommenden Versionen entfernt. Verwenden Sie stattdessen den App-Editor zur Konfiguration von Apps. Sie können die Live-Konfiguration bereits jetzt für Ihre Nutzer ausblenden, indem Sie die Konfigurations-Option
manager.config.editor.showLiveConfigButton
auffalse
setzen.
-
-
Bundles:
-
Das Bundle
omnisearch
wird nicht mehr weiterentwickelt. Das Bundle wird Mitte 2025 aus dem Produkt entfernt. Verwenden Sie stattdessen das Bundlesearch-ui
. -
Die Bundles
resultcenter
undselection-resultcenter
werden nicht mehr weiterentwickelt. Die Bundles werden Mitte 2025 aus dem Produkt entfernt. Verwenden Sie stattdessen das Bundleresult-ui
.
-
-
Entwicklung:
-
Die Unterstützung der JavaScript Module
test-utils/later
undtest-utils/waitForProperty
wird demnächst entfernt. Benutzen Sie stattdessen das neue Modultest-utils/waitFor
(ab 4.18.3 verfügbar). -
Die Unterstützung von
module.exports
in JavaScript-Dateien wird demnächst entfernt. Benutzen Sie stattdessen die ECMAScript Keywordsexport
bzw.export default
. -
Um eine zukünftige Migration von AMD zu einem anderem Modulsystem zu erleichtern sollten JavaScript-Dateien nach Möglichkeit nur noch als ECMAScript Module verfasst und anschließend transpiliert werden.
-
Die Unterstützung von
cancel
in der Rückgabe der Abfrageergebnisse (QueryResult) eines Stores wird demnächst entfernt. Ziel ist es die Komplexität derstore-api.Store
Api zur reduzieren. Bitte benutzen Sie stattdessen einen AbortController , wie unter Nutzung eines AsyncStore beschrieben.const aborter = new AbortController(); store.query({name: "Test"}, { signal: aborter.signal }) .then((resultItems)=>{ ... }, (e)=>{ if (e.name === "AbortError"){ // aborted } }) // trigger abort aborter.abort(); [source,javascript]
-
Die folgenden Klassen werden in einem der nächsten Releases entfernt:
Abgekündigte Klasse Alternative ct/array
native JavaScript Funktionen
ct/async
apprt-core/async
ct/_when
apprt-core/when
ct/_compare
apprt-core/comparators
-
Bekannte Einschränkungen
|
[Map] Zoom via mousewheel does not allow to zoom to the full max or min extent in some situations |
|
[Printing] Printing of line measurement not possible with PrintTask published from ArcMap |
Abhängigkeiten
-
Esri ArcGIS Maps SDK for JavaScript 4.31.6
-
ArcGIS Arcade 1.28
-
JasperReports 6.21.3
-
Moment.js 2.29.4
-
Vue.js 2.7.16
-
Vuetify.js 1.5.24 (with custom patches, tracked as 1.5.30)
Changelog
4.19.0
New Features
|
[SceneView] Set environment properties for scene views |
|
[Map] Support BuildingSceneLayer |
|
[Map] Support PointCloudLayer |
|
[Search] Search in scene layer |
|
[search-api] Provide query event |
|
[System] Update ArcGIS Maps SDK for JavaScript to version 4.31 |
|
Replace apprt-request with apprt-fetch in BaseRestStore |
|
Support readonly report mounts |
|
[Map] Support Basemap styles service v2 |
|
[App properties] Allow to define global API key |
|
[Measurement 2D] Provide API for access to ViewModel |
|
[mapdraw-api] Freehand and hybrid drawing options |
|
[ArcGIS Locator] Ensure correct support for ArcGIS API Key |
|
[TOC] Show hints for content that cannot be shown in 2D view mode |
|
[App Editor] Support for 3d basemaps |
|
[App Editor] Improve support for basemap configuration and validation |
|
[TOC] Hide transparency slider for layers without opacity property |
|
[TOC] Hide expand-arrow for layers without a legend |
|
[Measurement] Migrate bundles to typescript |
|
[Map Navigation] Allow to use previous and next view tools in 3D views |
|
[TOC] Show correct warning indicator for scale dependant layer views in 3D scenes |
|
[Selection] Select objects in scene layer |
|
[Measurement 3D] Provide API for access to ViewModel |
|
Drop support of "proxy.allowedSSLDNs" from application.properties |
|
[Map] Hide specific layers in 2D or 3D view |
|
[Map] Hide specific basemaps in 2D or 3D view |
|
[Configuration] Make use of "file:" prefix optional to include files via absolute paths in application.properties |
|
[Map] Support VoxelLayer |
|
[result-ui] Allow possibility to add custom icons in row- and bulk-actions |
|
[Legend] Support new legend property "respectLayerDefinitionExpression" |
|
[apprt-fetch] Disable switching from GET to POST by default |
|
[TOC] Support new legend property "respectLayerDefinitionExpression" for TOC items |
|
[basemapswitcher] Support only referenced basemaps from basemaps model |
|
Update vue to version 2.7.16 |
|
[App Editor] Update monaco-editor to version 0.52.2 |
|
Update @terraformer to latest version (@terraformer/wkt 2.2.1, @terraformer/spatial 2.2.1) |
|
Update proj4 lib in coordinatetranformer to 2.15.0 |
Fixed Issues
|
[Editing] Update feature button not using hover color from theme |
|
[Accessibility] Inconsistent behavior when opening windows via keyboard control |
|
[MS SQL] Error during pre-compression |
|
[measurement-2d] showIntro property does not work |
|
[Coordinate Viewer] In 3D views an empty scale is shown |
|
[Sketching] Sketching not working after view mode is switched |
|
[mapdraw API] Drawing cannot be canceled by pressing ESC button |
|
[apprt_request] Proxy fallback incorrect for multiple identical simultaneously requests |
|
[Global configuration] Property "manager.config.viewbundles" cannot start or end with double quotes |
|
[Map Navigation] Restore initial view does not work when switching view modes |
|
[search-ui] SearchUIService.reset() does not work during app start |
|
[Documentation] Wrong link to security.oauth.provider.arcgis.roles |
|
[result-api] renderType only applied on fields with expression info |