Hi,
I'm trying to set up the elevation profile widget in Experience Builder and would like to use a custom elevation layer, however, when I insert the URL for the custom layer, it is not accepted - I get the error 'Enter the URL for a valid elevation layer service'.
I created the elevation layer service from ArcGIS Pro using 'share as web service' from my elevation surfaces ground layer and this has uploaded as a tiled elevation service on ArcGIS online.
Can anyone advise what else is required?
Thank you.
Solved! Go to Solution.
Hi @StephenKing3 , right now elevation layers without the "Elevation" cacheType property are not supported in the web map or as a custom elevation service for this widget, but they are supported in the web scene. We are investigating to see if we can support them in the web map in the future.
As a workaround, you may add the service to a web scene and use that web scene in your ExB application, or you can create a a tile package and elevation layer with the "Elevation" cacheType property by following the steps provided here, under: Create a tile package for a web elevation layer . The tiling scheme must use LERC compression.
Hi @StephenKing3 ,
I just wanted to loop back and confirm: after looking into this more, we've concluded the official guidance will be to publish the service following the guidance here Share a tile package—ArcGIS Pro | Documentation as indicated in my previous comment.
There is currently an issue with .tpkx packages where the cacheType: Elevation property is not being added to the the tile package. Due to this, the elevation layer created is missing this information in the REST endpoint.
I would recommend following the steps above, making sure to use LERC compression and the .tpk format to create your tile package and publish your tiled elevation service. Then, the service should be usable as a custom service in your web map for the Elevation Profile widget in Experience Builder.
Hi @StephenKing3 ,
To create a web elevation layer, please follow these steps: Share a web elevation layer—ArcGIS Pro | Documentation
This would create an Elevation Layer item into your organization, for example: NZ Elevation - Overview (arcgis.com). You will want to then use the service's URL for the widget, for example: https://services1.arcgisonline.co.nz/arcgis/rest/services/Elevation/New_Zealand_Elevation/ImageServe...
Notice the service ends with "ImageServer".
Hi @AlixVezina, thank you, that's what I have done. In ArcGIS Online the elevation layer is visible and it is categorized as 'Elevation Layer (hosted)'. The URL is https://tiles.arcgis.com/tiles/..../ImageServer, but it doesn't seem to work. I can add the layer in scene viewer and it allows me to generate an elevation profile from the tool in the viewer. Experience Builder does not like the URL for some reason.
@StephenKing3 please would you be able to verify that your service has a cacheType of Elevation? For example:
@AlixVezina , no, it doesn't have any reference to cacheType.
@StephenKing3 that would be the reason why the Elevation Profile cannot use that service. Let me look into this a little more and I'll get back to you.
Hi @StephenKing3 , right now elevation layers without the "Elevation" cacheType property are not supported in the web map or as a custom elevation service for this widget, but they are supported in the web scene. We are investigating to see if we can support them in the web map in the future.
As a workaround, you may add the service to a web scene and use that web scene in your ExB application, or you can create a a tile package and elevation layer with the "Elevation" cacheType property by following the steps provided here, under: Create a tile package for a web elevation layer . The tiling scheme must use LERC compression.
Hi @AlixVezina, the web scene in ExB provides a good solution for now. Many thanks.
Hi @StephenKing3 ,
I just wanted to loop back and confirm: after looking into this more, we've concluded the official guidance will be to publish the service following the guidance here Share a tile package—ArcGIS Pro | Documentation as indicated in my previous comment.
There is currently an issue with .tpkx packages where the cacheType: Elevation property is not being added to the the tile package. Due to this, the elevation layer created is missing this information in the REST endpoint.
I would recommend following the steps above, making sure to use LERC compression and the .tpk format to create your tile package and publish your tiled elevation service. Then, the service should be usable as a custom service in your web map for the Elevation Profile widget in Experience Builder.
I don't see the Elevation Profile widget in ExB. I'm using Portal for ArcGIS. Is it only available for ArcGIS Online?