Skip to content

This page provides details about enhancements in the 300.0 release of ArcGIS Maps SDK for Qt. It also lists this release's deprecations, resolved issues, known issues, and more.

Enhancements

Scenes (3D)

Local scene support

Introducing support for local scenes. Local scenes are used to visualize 3D data on a flat plane rather than a globe. They are well suited for data that lies within a small extent. As a result, we now support loading local scenes in a web scene or MobileScenePackage. Additional constructors have been added to the Scene class to enable creating it in either Local or Global viewing modes.

Local Scene Support

Building scene layer

Support added for BuildingSceneLayer, which are layers designed for visualizing buildings. These building models are usually created from Building Information Modeling (BIM) and the layer can be used to visualize detailed building information. Since this information can be highly complex, data filters can be used to show and hide specific features. Different filter modes, which define how the features are drawn while the data filter is active, are also available. This layer is currently only supported in the new LocalSceneView.

Local Scene Support

New view for local scenes

Introducing a new view, LocalSceneView, to support rendering a Scene that is in a Local viewing mode.

Scenes with WGS84 or CGCS2000 spatial reference defined in the local scene view will report a view spatial reference of Plate Carrée. The following will return points in Plate Carrée:

This view has limited functionality and layer support at this time, and will continue to be enhanced with additional layers and functionality in future releases. However, LocalSceneView will not work on an Android Emulator because it requires the device to support OpenGL ES 3.2. In addition, the deprecated OpenStreetMap (OSM) 3D Buildings Layer will not be supported with LocalSceneView.

KML Photo Overlay

Support for rendering KmlPhotoOverlay has been added. In the current release, only rectangular shaped photo overlays are supported.

KML photo overlay of Esri headquarters

Apply surface elevation to geometry

A new Surface::applyElevationAsync() function has been added to the Surface class. This method accepts a Point, Polyline, Polygon, or Multipoint geometry and returns a copy of that geometry with all vertex Z‑values populated using the surface’s elevation source(s).

Improved performance of identify in feature layers

The performance and user experience for identify in feature layers in 3D has been improved. The biggest improvements can be seen when a layer contains a large volume of data where improvements up to 30% can be observed.

Realistic stars background

The SceneView has been updated with a realistic stars background.

Realistic stars background

Geometry editing

Editing curves with the GeometryEditor

You can now edit geometries with true curves in the GeometryEditor. Using the existing geometry editor tools, you can now interactively adjust the start and end vertices of true curve segments, and also scale, rotate, and move the whole geometry or its parts.

curve-geometryeditor-relnotes300

You cannot interactively insert vertices on curve segments or create new curve segments at this release.

Taking true curves offline

True curves are now included by default in maps and data taken offline in on-demand workflows. A new Geodatabase::isTrueCurveClient() indicates if the geodatabase preserves true curves and acts as a true curve client when synchronizing edits with the service. This function is maintained for the lifetime of the geodatabase replica; delete and regenerate any existing mobile geodatabases and mobile map packages if you require them to preserve true curves. Consider setting ArcGISRuntimeEnvironment::setServiceCurveGeometryMode() to ServiceCurveGeometryMode::DensifyCurves if your application does not preserve true curves throughout editing workflows.

Supported true curve types in feature services

A new ArcGISFeatureServiceInfo::supportedCurveTypes() function on ArcGISFeatureServiceInfo and ArcGISFeatureLayerInfo indicate the types of true curve segment supported in geometries stored as features in the service. You can refer to this value when your app creates and edits feature geometries, allowing you to match your app functionality to the curve types supported by the data source being edited. For example, ArcGIS Online feature services support only circular arc true curve segments represented by EllipticArcSegment where EllipticArcSegment::isCircular() is true.

Displaying true curves in 3D

Display, identify, and selection of true curves in SceneView is now supported for polygons and polylines using SurfacePlacement::DrapedFlat. See Known issues for details of curve geometry support in SceneView.

Well-known text OGC standard support (WKT2) for coordinate systems and transformations

A new wkText2() function on SpatialReference, SpatialReferenceBuilder, GeographicTransformationStep, and HorizontalVerticalTransformationStep returns a string using the OGC-defined international standard for well-known text representation of coordinate reference systems. WKText2 strings support advanced and modern coordinate reference system constructs, such as dynamic datums and compound systems, which cannot be correctly represented by the existing WKText function.

Analysis API

High-performance spatial analysis API

This release introduces a new high-performance analysis API built to leverage the power of modern GPUs for lightning-fast computation and display. The initial release of this API includes ViewshedFunction, LineOfSightFunction, and map algebra functions. The API provides a framework that allows you to chain functions to build complex analysis scenarios while maintaining performance. Analysis results can be persisted on the device or displayed in an AnalysisOverlay for fast rendering and responsive user experiences.

High-performance spatial analysis API

See the Spatial analysis topic for more details.

Symbology

Model symbol layer

This release introduces a new symbol layer: ModelSymbolLayer. It can create a MultilayerSymbol that renders a 3D model. The symbol layer provides enhanced capabilities compared to the legacy MarkerSceneSymbol.

Some advantages provided by ModelSymbolLayer include:

  • Support for multi-LOD (Level of Detail) for model symbols rendered in a LocalSceneView. Please note that this feature is not available in a SceneView.
  • You no longer need to use the legacy ModelSceneSymbol or SimpleMarkerSceneSymbol to create a model symbol. The new ModelSymbolLayer works directly with MultilayerSymbol.
  • It can be used to create a primitive shape or a 3D model. Previously, different object types were required to represent primitive shapes and supported model types.
  • Display primitive shapes or models using either real-world or screen units (this feature was previously exclusive to ModelSceneSymbol).
  • You can create a ModelSymbolLayer from a remote source.

There are currently some known limitations:

  • If multiple model symbol layers are added, only the first model symbol layer found is rendered; all others are ignored.
  • If there is a mix of model symbol layers and other symbol layers, only the first model symbol layer found is rendered; all other symbol layers are ignored.

Size unit when displaying symbols in 3D

A new property called MultilayerSymbol::sceneSizeUnit is added to MultilayerSymbol. This property determines whether 3D symbols are drawn in real-world units (meters) or screen units (device-independent pixels). It only applies to 3D symbols, and has no effect for 2D symbols (which are always drawn in screen units).

Raster renderer improvements

  • This release adds support to create custom color ramps for use in the StretchRenderer class by creating a ColorRamp from a collection of ColorStops. You can create each color and define its relative position along the color ramp for precise control over how colors blend, allowing you to create weighted gradients and custom color palettes.

  • Use the API to create a ColorRamp from a collection of QColor objects to create linear gradients from a list of colors, for example from a JavaScript Maps SDK color ramp.

  • You can also create a Colormap to map integer values in a raster to a specific color when rendering raster data. Create a ColormapRenderer from a Colormap with custom defined values and colors.

Raster renderer improvements

Dynamic entities

Query dynamic entities by track ID

You can query dynamic entities using one or more track IDs. This provides a convenient way to query for specific dynamic entities, without constructing a WHERE clause, allowing you to zoom to its location, follow it on the map, or start monitoring its notification events for updates.

Geodatabase

Shared templates

When used as a SharedTemplateSource, the ServiceGeodatabase and Geodatabase classes now support shared templates from ArcGIS Enterprise 11.3+ or ArcGIS Online feature services, and from standalone mobile geodatabases exported from ArcGIS Pro 3.6+, respectively. These capabilities are available through the querySharedTemplatesAsync(), createFeaturesAsync(), and addFeaturesAsync() functions. A SharedTemplate defines default attributes, symbology, tools, and geometry construction settings for creating sets of features across multiple layers and tables within a database.

Subtype feature layer

The SubtypeSublayer::searchId(), which uniquely identifies a layer, now allows applications to enable Web or Mobile Map search by using a string identifier.

Support for reading classification schema

This release introduces PortalInfo::hasClassificationSchema(), which allows you to determine whether a classification schema is defined for a portal. ArcGIS Enterprise administrators set the item's data sensitivity level, specify who can access and share the information, and outline when information can be made publicly accessible. If a classification schema exists, you can leverage new APIs to retrieve it and view classification information for a specific PortalItem. This information allows you to overlay the data's classification information, as defined by the administrator (such as Restricted, Sensitive, or Confidential), on your application user interface.

Attachments

Keywords

Use the new Attachment::keywords() function to read keywords assigned to existing attachments. ArcGISFeature has new overloaded functions to add and update attachments. In addition, you can set and edit keywords when creating or updating an Attachment. Attachment keywords are supported when connected to feature services and in stand-alone mobile geodatabases.

Pop-up filters

AttachmentsPopupElement can be authored to filter attachments by one or more keywords and/or by content type (for example, images, video, and so on). When these filters have been configured, fetching attachments returns only Attachments that match the filter criteria.

Add and update directly from a file

ArcGISFeature has new overloaded functions that take a file path for attachment content instead of a memory buffer. When Attachment content is supplied from a file, the Qt Maps SDK application can avoid the large memory allocation required for a buffer, thus making the operation more memory efficient.

Improved memory management

Memory optimizations of the Qt Maps SDK mean that an application is better equipped to handle larger Attachments compared to previous releases. Combining these optimizations with the file-based APIs described above and the ArcGIS Maps SDK for Qt can support attachments up to approximately 1 GB when the device memory allows for it.

Map view

Change map spatial reference

You can now change a map's spatial reference on-the-fly even after it is loaded or being rendered on screen. This can be useful, for example, if you want to specify a particular spatial reference for a programmatically created map, or if you want to change the spatial reference of a pre-authored web map or mobile map to match a custom basemap.

When the spatial reference changes, existing layers in the map that support reprojection automatically update their content to display in the new coordinate system. This includes layer types such as ArcGISMapImageLayer, WmsLayer, FeatureLayer (including FeatureCollectionLayer and SubtypeFeatureLayer), AnnotationLayer, DimensionLayer, EncLayer, KmlLayer, and RasterLayer. However, tiled layers are strictly bound to their tiling scheme’s spatial reference and cannot be reprojected. This includes ArcGISTiledLayer and ArcGISVectorTiledLayer, WmtsLayer, and WebTiledLayer. You can inspect the layer’s LayerViewState to get information about the underlying error when these layers fail to render.

GeoView content, such as graphics overlays, grids, location display, the geometry editor, and operations such as identify and set viewpoints can handle updates to the map’s spatial reference. However, image overlays do not support reprojection and will not be rendered if their spatial reference does not match the map’s spatial reference.

Change Map Spatial Reference

New motion smoothing filter default value

The motion smoothing filter is now disabled by default. The isMotionSmoothingEnabled() on IndoorsLocationDataSourceConfiguration is initialized to false to eliminate lag previously observed with geometry-based positioning. Improvements to our internal pipeline and newer, outlier-resilient algorithms have rendered this secondary filter redundant. However, it can still be manually enabled if additional smoothing is required.

Pedestrian navigation

RouteTracker now supports both vehicle and pedestrian navigation outdoors. The algorithm has been optimized for pedestrian-specific dynamics, including varied speeds, frequent orientation changes, and non-linear movement. To configure, set the navigationMode parameter to Driving for vehicle navigation, or Walking for pedestrian navigation upon initialization.

Layer

Oriented imagery layers

This release introduces support for rendering oriented imagery layers. You can create an OrientedImageryLayer by providing either a URL, a portal item, or a feature table. This layer type is also supported when opening web maps, web scenes, or mobile map/scene packages that contain them. Functionally, an OrientedImageryLayer behaves similarly to a FeatureLayer, offering capabilities such as identify, selection, query, and displaying pop-ups. In future releases, OrientedImageryLayer will be enhanced with additional operations, such as finding the best image and generating dynamic footprints.

Symbol layer drawing order

Symbol layer drawing overrides the default drawing order of symbols on a GeoView. When symbols have more than one symbol layer (such as a cased road symbol), symbol layer drawing controls how those individual symbol layers are ordered across symbol classes. You can set the symbol layer drawing order for a published feature service, web map, or web scene. The symbol layer drawing order established during authoring and publishing is preserved and respected when rendering symbols in Native Maps SDK. The example below shows a multi-layer symbol: the first image illustrates when symbol layer drawing is not enabled, while the second image demonstrates the effect when the symbol layer drawing order is defined and enabled.

Without symbol layer draw orderSymbol layer draw order applied
Symbol layer drawing not enabled Symbol layer drawing enabled

New metadata properties

Added new metadata functions on ArcGISFeatureLayerInfo:

  • isSupportsQuantizationEditMode(): indicates if the query operation supports quantization designed to be used in edit mode (highest resolution at the given spatial reference). You can use this property to make an appropriate choice for FeatureTilingMode.

  • isSupportsCoordinatesQuantization(): indicates if the query operation supports quantization or not (View or Edit mode).

  • definitionQuery(): indicates an optional SQL clause that limits the features returned by the service for the layer. A definition query can only be configured by the service administrator.

Raster

Access raster metadata

After a Raster has loaded, you can retrieve the new RasterInfo class to access source metadata such as cell size, extent, and spatial reference. This information is useful when you need to work with source resolution, for example, to calculate a map scale for zooming to native raster resolution, or to set meaningful min and max map scales.

Specify the resampling method

The RasterLayer::resamplingType() function has been added to RasterLayer, which controls how raster cell values are calculated when the layer is rendered at a different resolution than the raster's native cell size, or when the raster is transformed, for example, scaled or reprojected. The RasterResamplingType defaults to Automatic and can be set to NearestNeighbor or BilinearInterpolation. When set to Automatic, raster properties will be used to determine what type of data the raster is, and set the resampling method accordingly. For example, discrete data will use NearestNeighbor, and continuous data will use BilinearInterpolation.

Authentication

Token credential

Added a new static factory method for creating a TokenCredential for a token-secured federated resource using an existing owning system (portal) credential.

Arcade

Support for new Arcade version

The SDK now supports Arcade 1.34 and Arcade 1.35.

New data types

  • Added new Pixel type to represent a cell in an imagery layer.

New dictionary functions

The following new dictionary functions have been added:

  • Count
  • Erase
  • GetKeys
  • GetValues
  • Insert
  • TimeReceived

The following Pixel function has been added:

  • Updated DefaultValue, HasKey, and HasValue to work with the Pixel type.

Updated functions

  • IsEmpty function has been updated with an extra parameter allowing it to work with containers.

New profiles

The following profiles have been added:

  • Imagery Popup
  • Imagery Popup Element

New language feature

Localization

Extend support for select styles

Basemap Styles support a range of Open Basemap styles. These styles now support the BasemapStyleParameters::specificLanguage() parameter allowing developers to display Open Basemap styles in their language of choice.

Projection engine

Updates to coordinate systems, transformations, and projection data

  • Available coordinate systems and transformations have been updated to EPSG v12.049. ETRS89 revisions are not included in this release.
  • The anchor epoch date parameter has been added to some geographic and vertical coordinate systems with semi-dynamic datums. There is a table for them in the geographic coordinate systems PDF. Anchor epoch information from the source and target geographic coordinate reference systems is used with the new NTv2 velocity grid transformation method. Transformations using this method were added for Canada.
  • The anchor epoch date parameter is included in the list of supported geographic and vertical coordinate systems available in the geographical and coordinate systems PDF file inside a .zip file on the downloads page with semi-dynamic datums. Anchor epoch information from the source and target geographic coordinate reference systems is used with the NTv2 velocity grid transformation method and may cause the use of WKT2 when converting a coordinate system or transformation to string format. Transformations using this method have been added for Canada.
  • The documentation of supported geographic, projected, and vertical coordinate systems contains tables of deprecated coordinate systems. An explanation of why a coordinate system may be deprecated is included with each table.
  • New projected coordinate systems have been added for Montana RMTCRS, Hall County in Nebraska, several Ohio counties, Indonesia, and other regions.
  • Projection Engine Data include new geographic transformation grids for Bhutan, Canada, Greece, Japan, Latvia, and the United Kingdom, as well as new vertical transformation models for the Baltic Sea, French Antilles, Germany, Greece, Greenland, Japan, Mayotte (France), and Mexico.
  • The list of geographic and vertical coordinate systems and list of projected coordinate systems, each available in a PDF file inside a .zip file on the downloads page now contain tables of deprecated coordinate systems. An explanation of why a coordinate system may be deprecated is included with each table.

SDK enhancements

New API and enhancements

  • ENC datasets conforming to the S-63 standard (IHO Data Protection Scheme) are now supported on all supported platforms. Email ArcGISRuntimeS63@esri.com to request access to this functionality.
  • Popups now support displaying an Edit Summary, which indicates who made the most recent edit to the selected feature and when.
  • Callout is now supported in 3D. Previously, Callout was supported only in MapView.
  • Identity-Aware Proxy (IAP) is now supported in the Qt Maps SDK for accessing ArcGIS Enterprise Portal and services behind Microsoft Entra Application Proxy via Microsoft Identity Platform.
  • Various Android gestures have been improved for smoother, more responsive interaction, including pinch-to-rotate, two-finger tilt, and slow pan.
  • Network requests now use the HTTP/2 protocol.
  • Error objects can now be logged using qDebug, for example:
Use dark colors for code blocksCopy
1
2
3
4
connect(map, &Map::doneLoading, parent, [](const Error& loadError)
{
  qDebug() << loadError;
});
  • A new Error::arcGISServerErrorCode property has been added to provide service error codes when available. It is exposed as std::optional to clearly indicate whether a value exists.

Credential persistence

Credentials can now be persisted between sessions, eliminating the need to re-sign-in when restarting apps. To persist credentials to disk, call makePersistent on ArcGISCredentialStore or NetworkCredentialStore. This is a cross-platform solution and will securely store credentials on all supported platforms.

Graphic::geometryChanged signal

The Graphic.geometryChanged signal deprecation is removed. The signal will not be removed from the SDK after further consideration and user feedback.

Local Server

There are no Local Server updates with this release. ArcGIS Maps SDK for Local Server version 200.8 is the current and final release. ArcGIS Maps SDK for Qt 300.x versions are compatible with and are supported for use with ArcGIS Maps SDK for Local Server version 200.8.

Breaking API changes

  • The following instance() methods have been removed, as they no longer serve a purpose with the QFuture-based async framework. Instead, use the error handling patterns that are available with QFuture.

    • GeodatabaseSyncTask::instance()

    • MobileMapPackage::instance()

    • MobileScenePackage::instance()

  • The following APIs, meant to be deprecated in 200.8.0, were instead deprecated in 200.8.1, and are now removed in 300.0.

    • FeatureSubtype::domains(). Use the Field::domain() in FeatureSubtype::fieldOverrides() instead.

    • IndoorsLocationDataSource constructor that takes a positioning table. Use the constructor that takes an IndoorPositioningDefinition instead.

    • GeoModel::setItem(). Use Scene or Map constructors that accept an Item instead.

    • Portal::fetchHomepageFeaturedContent(). There is no replacement, as the home page has been phased out of ArcGIS Online.

  • The ArcGISRuntime::useLegacyAuthentication() and ArcGISRuntimeEnvironment::setUseLegacyAuthentication(bool useLegacyAuthentication) functions were transitional APIs to allow users to switch between authentication systems in v208.0.0. Starting with v300.0.0, there will only be one authentication pattern to follow, so these transitional APIs have no use anymore and have been removed.

  • ErrorInformationKeys has been removed because it was an empty class that only contained deprecated and removed members. Use Error::arcGISServerErrorCode instead.

Behavior changes

  • An Advanced Editing extension-license is no longer required to edit branch-versioned geodatabases that do not contain utility networks. You can now create a new version or edit features in a version, including replicas generated by sync-enabled feature services.

  • This release introduces a change to the license string option for licensing an application for production use. Licensing a version 300.0 app requires a license string that is specific to 300.x versions. License strings for versions prior to 300.0 will be considered invalid and will not authorize APIs for production use. Note that the user authentication option for licensing your applications remains unchanged.

  • The default ArcGISRuntimeEnvironment::setServiceCurveGeometryMode() is now ServiceCurveGeometryMode::TrueCurveClient. By default, curve geometries are fetched from feature services, including when taking maps and services offline on-demand, and your app indicates that it is a true curve client when editing feature services and synchronizing edits. It is your responsibility to ensure data integrity by correctly preserving any curve segments throughout your application, or to set ArcGISRuntimeEnvironment::setServiceCurveGeometryMode() to ServiceCurveGeometryMode::DensifyCurves if your app does not preserve true curves. See Known Issues for details of curve geometry support in scene views.

  • GeometryEngine method GeometryEngine::autoComplete() now supports true curves.

  • Starting with this release, a Scene in a webscene or a MobileScenePackage will no longer fail and will load successfully when the viewing mode is Local. A scene in a Local viewing mode will be in the projection that is defined in the webscene or the MobileScenePackage scenes. When a Scene is created with Local viewing mode, the SpatialReference of the Scene would be the same as the SpatialReference of the first layer within the Scene, which in most cases is the first layer in the Basemap's baselayer collection.

  • The tiling scheme of the Scene is set to Automatic when a constructor with viewingMode is used. Once the Scene has loaded, the appropriate tiling scheme would get set. However, in the case of Local viewing mode, the tiling scheme would remain Automatic.

  • A GeotriggerMonitor will now account for feature updates to fences created from a ServiceFeatureTable in FeatureFenceParameters when tiling mode is disabled (FeatureTilingMode.disabled).

  • Raster data may render differently in this release, due to the addition of the RasterLayer.resamplingType property and the automatic determination of a default resampling method. For example, a raster that previously defaulted to Bilinear Interpolation could now default to Nearest Neighbor.

  • SceneView::screenToLocation() returns an empty point instead of a Point(0, 0, 0) for a location that is above the surface.

  • Default value for RefreshTokenExchangeInterval has been changed to 24 hours.

  • The relative file paths of transformation grid files returned by GeographicTransformationStep::projectionEngineFilenames() and HorizontalVerticalTransformationStep::projectionEngineFilenames() now reflect the updated file structure for Projection Engine Data files. See the Projection Engine Data download for more information about file structures used.

  • LabelingPlacement enum was moved from ServiceTypes.h to LabelingTypes.h. If you are using this enumeration, you will need to include LabelingTypes.h.

  • Previously, feature attributes, which are returned as QVariants, incorrectly returned GUID attributes as QString. They are now returned as QUuid.

  • Keyboard GeoView rotation in 3D now matches the 2D behavior, which is that 'a' key rotates counter-clockwise, and 'd' rotates clockwise.

  • When importing the Toolkit in QML, we recommend not specifying a version number because it is typically unnecessary. You can just use import Esri.ArcGISRuntime.Toolkit. However, if you must specify a version number, note that QML versioning does not allow versions greater than 255. Therefore importing version 300.0 is not possible, and you can use version 3.0 instead, for example: import Esri.ArcGISRuntime.Toolkit 3.0.

Deprecations

OS and framework deprecations

  • Support for iOS/iPadOS 17 is deprecated. The last release to support this version of iOS/iPadOS is 300.0. A minimum of iOS/iPadOS 18 will be required at the next release.

  • Support for macOS Sonoma (version 14) is deprecated. The last release to support this version of macOS is 300.0. A minimum of macOS Sequoia (version 15) will be required at the next release.

Issues resolved

Issues addressed in this release are listed below.

  • BUG-000118443 - The KMZ file does not display image as a photo overlay.

  • BUG-000161830 - When two labels overlap, the label which loads last is displayed regardless of the layer order.

  • BUG-000164521 - The LabelDefinition class does not honor the z-index of the graphic.

  • BUG-000154800 - Vertical labels in Japanese overlap.

  • Labels disappear too far from the screen edge when panning on mobile devices.

  • CVE-2025-54874: Updated OpenJPEG third-party library to v2.5.4.

  • BUG-000179119 - Enabling the Background option of the Label style in Map Viewer causes the text to disappear when viewing the map.

  • BUG-000182489 - An extra label appears at (0,0) but disappears after panning or zooming away from (0,0) or the country polygon.

  • BUG-000175907 - ServiceFeatureTable fails to load when the renderer uses a hidden field and coded values have integer and float types.

  • BUG-000179924 - ServiceGeodatabase::applyEditsAsync() fails when more than one table references the same service layer.

  • BUG-000180102 - ServiceGeodatabase::applyEditsAsync() fails when an edit_date or edit_op field exists.

  • BUG-000182950 - GenerateGeodatabaseJob crashes when the extent contains Z or M values.

  • The network source association filter set for a UtilityAssociationsPopupElement is not applied when the web map is taken offline.

  • The default FeatureTemplates for a SubtypeFeatureLayer are not retained when the layer is created from a web map.

  • Issue reported on Esri Community - Rotation Expression: Arcade expression issue. The Renderer.RotationExpression set to a value is not honored.

  • Renderer.RotationExpression set to a numeric value is not honored.

  • IndoorsLocationDataSource incorrectly populates Location.course with the device's magnetic heading instead of the user's actual course of motion.
  • BUG-000176351 - PartCollection::part(int index) leaks.

Known issues

Known issues or limitations for this release are listed below.

  • In order to manage resources, some Android devices may abort long-running GPU-based analysis operations before they complete, causing those operations to fail. If this occurs, consider reducing the size of the analysis.
  • The ViewshedFunction is only supported with ContinuousFields in a projected coordinate system. Future releases will support geographic coordinate systems such as WGS84.

  • A FieldAnalysis can only be displayed in a MapView or SceneView if the result spatial reference matches the view.

  • Raster data with 64-bit float or integer-based pixels are not supported.

  • Raster data with u32 integer-based pixels are supported, but only if the values are within an i32 range. u32 integer-based pixels with values outside an i32 range are not supported.

  • In map view, a BlendRenderer created using a ColorRamp is supported, but only if the color ramp is constructed from a PresetColorRampType. All constructor types for ColorRamp are supported in a SceneView.

  • The maximum size of raster used to populate a ContinuousField, DiscreteField, or BooleanField is 2 GB, which equates to 23170 x 23170 pixels.

  • The maximum size of a ContinuousField, DiscreteField, or BooleanField used in a FieldAnalysis is 1 GB, which equates to 16384 x 16384 pixels.

Sample updates

New samples

Enhancements

  • Adopted Calcite styling in the Sample Viewer and all Samples. Calcite Icons are used throughout, improving icon consistency and scalability. Calcite adoption has not only improved the general user interface to be more aesthetically pleasing, it also brought in automatic support for light and dark mode. With that, all sample UIs have been updated to better utilize the applied style, rather than hardcoding colors, sizes, etc.
  • Improved the sample offline data downloading workflow by allowing a new interface for downloading or removing offline data for each individual sample.
  • Combined the ServiceFeatureTable Cache, Manual Cache, and No Cache samples into one new sample - Toggle between feature request modes
  • Combined Add Features, Update Attributes, Update Geometry, and Delete Features samples into one new sample - Manage features (feature service)
  • You can now mark samples as favorites. Favorites appear on the sample viewer launch page and persist between sessions.
  • A new data download manager has been added, allowing individual sample data to be downloaded or removed from a central location.
  • Various UI/UX improvements have been made to the search and navigation of the samples.

Toolkit updates

  • Calcite icons are now available. The Calcite repository is now included as a Toolkit submodule, making SVG icons easy to access and use in your applications. The Toolkit's Calcite demo app includes examples of how to use them.
  • Added ProgressBar to the Calcite style.
  • Added tri-state support to Checkbox in the Calcite style.
  • Resolved a bug where hover effects are shown on components using the Calcite style, even if the component is disabled.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.