The World Elevation services, Terrain and Terrain 3D image services, are available with most product options on Collections 1, 2, 3, 4, and 5. If you want to use the Terrain and Terrain 3D services, you need to publish the services on ArcGIS Desktop and ArcGIS Server 10.7.1 or later with ArcGIS Image Server.
Terrain
The components for setting up the Terrain image service are organized under the WorldElevation folder at \\<server-ip>\CollectionX_source_documents\data, where <server-ip> is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located: Collection1 (World Basic), Collection2 (World Standard), Collection3 (World Advanced), Collection4 (North America Standard), or Collection5 (North America Advanced).
Prepare the Terrain image service
The mosaic datasets and auxiliary files are prepared using the default path V:\WorldElevation.
Follow the preparation steps below before you publish the service:
- Map the network location \\<server-ip>\CollectionX_source_documents\data as V: drive, where <server-ip> is the network
IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located. If your system does not allow mapping the network location as V:,
perform the following steps to repair the paths for mosaic datasets
located under
\\<server-ip>\CollectionX_source_documents\data\WorldElevation\MD\:
- Click Open to open the Catalog window in ArcMap and browse to \\<server-ip>\CollectionX_source_documents\data\WorldElevation\scripts\ where <server-ip> is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- In the Catalog Tree window, expand WorldElevation.tbx and double-click the Repair mosaic dataset
paths tool.
The Repair mosaic dataset paths dialog box appears.
- In the GDB Full Path field, insert the UNC path, for example \\<server-ip>\CollectionX_source_documents\data\WorldElevation\MD\WorldElevation.gdb, where <server-ip> is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- In the Old Path field, insert V:. For the New
Path, insert the UNC path, for example, \\<server-ip>\CollectionX_source_documents\data, where <server-ip> is the network IP or server name
of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- Click OK to apply the changes.
The tool repairs paths for the S_EGM2008, D_HollandFix, R_WorldDTMHillshade and D_WorldDTM mosaic datasets.
- In a text editor, open Terrain_ElevationTintedHillshade_HollandFix.rft.xml, located under .\WorldElevation\Parameter\RasterFunctionTemplates. Find and replace all occurrences of V:\WorldElevation with the new path location, for example, \\<server-ip>\CollectionX_source_documents\data\WorldElevation, where <server-ip> is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- In a text editor, open OrthometricToEllipsoidalHeightEGM2008.rft.xml, located under .\WorldElevation\Parameter\RasterFunctionTemplates. Find and replace all occurrences of V:\WorldElevation with the new path location, for example, \\<server-ip>\CollectionX_source_documents\data\WorldElevation, where <server-ip> is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- Open the Catalog window, browse to .\WorldElevation\MD\WorldElevation.gdb and expand the geodatabase. Drag the D_WorldDTM mosaic dataset to the ArcMap window. It should draw as elevation (DTM) for the whole world.
- As a quick check, drag the R_WorldDTMHillshade mosaic dataset to ArcMap. You should see the hillshade visualization of elevation.
Publish the Terrain image service
The Terrain image service is created by publishing the JSON file to ArcGIS Server using the publishing script provided.
- Open the Catalog window and make the ArcGIS Server connection to localhost with publisher or administrator credentials.
- Make sure ArcGIS Server has read permission on the WorldElevation folder and register the V:\WorldElevation folder as Data Store.
- Open ArcGIS Server Manager and sign in.
- Click Site > GIS Server > Data Stores.
- Click the Register drop-down arrow and choose Folder.
- In the Edit Folder window, fill out the Name and Publisher Folder Path. Then uncheck the Same as publisher folder path check box and type the UNC path of the WorldElevation folder for the server folder path, for example, \\<server-ip>\CollectionX_source_documents\data\WorldElevation,
where <server-ip> is the network IP or server name of the
data appliance, and CollectionX is the collection where the Terrain image service is located.
Note:
If you repaired the paths for the mosaic datasets in step 1 of Prepare the terrain image service above, both the publisher and server folders will point to the UNC location, for example, \\<server-ip>\CollectionX_source_documents\data\WorldElevation, where <server-ip> is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- Click Save.
- In a text editor, browse to .\WorldElevation\Parameter\json and open Terrain.txt.
- Find and replace \\\\server-ip\\source_documents\\data with \\\\user-server-ip\\CollectionX_source_documents\\data where user-server-ip is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
The paths for the mosaic dataset in "path": and the raster function templates in "rasterFunctions": update to the new path.
Note:
Make sure paths contain double backslashes (\\\\).
- Save the changes.
Note:
Default paths in JSON are UNC (\\\\server-ip\\source_documents\\data), and you need to replace this path with the location to the WorldElevation folder on your server.
- Find and replace \\\\server-ip\\source_documents\\data with \\\\user-server-ip\\CollectionX_source_documents\\data where user-server-ip is the network IP or server name of the data appliance, and CollectionX is the collection where the Terrain image service is located.
- In a text editor, browse to .\WorldElevation\batchfiles, and open Publish_Services.bat.
- Syntax for publishing the script is PYTHON.EXE SCRIPTNAME HOSTNAME USERNAME PWD JSON_DEFN.TXT SERVICENAME SOURCE_MD SERVERFOLDER.
For example: C:\PYTHON27\ArcGIS10.x\python.exe V:\WorldElevation\scripts\PublishService.py localhost username password V:\WorldElevation\Parameter\json\Terrain.txt
Note:
SERVICENAME, SOURCE_MD, and SERVERFOLDER are optional parameters. Location for source mosaic dataset (SOURCE_MD) and service name (SERVICENAME) is defined using the Terrain.txt "path": and "serviceName": variables, respectively, when not provided in syntax.
- Make necessary path changes to PublishService.py and Terrain.txt. If Python is installed at a location other than C:\Python27\ArcGIS10.x\python.exe, edit the path to reflect the change.
Note:
The .bat file contains example syntax for mapped network drive and UNC path options.
- Syntax for publishing the script is PYTHON.EXE SCRIPTNAME HOSTNAME USERNAME PWD JSON_DEFN.TXT SERVICENAME SOURCE_MD SERVERFOLDER.
- Run the .bat file from the command window, and the terrain image service
will be published under the root folder.
Note:
HTTP access must be enabled on your ArcGIS Server to publish the terrain imagery service.
- Open ArcMap and click Add to add the terrain service. By default, the service will render as an elevation (DTM) raster.
- Right-click Terrain and click Properties > Processing Templates.
- From the Function drop-down list, choose one of the functions defined on the service.
- Click OK.
The Raster function will dynamically render the elevation derivative selected from the drop-down list.
- Go to the REST endpoint of the Terrain service, for example, http://localhost:6080/arcgis/rest/services/Terrain/ImageServer.
- Click ArcGIS Online Map Viewer.
The Terrain service opens in Map Viewer Classic in a browser. By default, it will render as elevation (DTM).
- Click Terrain > More Options > Image Display > Renderer to choose from the server functions defined on the service.
Publish the Terrain 3D service
Follow the steps detailed under Publish basemap and reference layer services to publish the Terrain3D service on your ArcGIS Server.