Skip to content

Latest commit

 

History

History
202 lines (174 loc) · 6.25 KB

IntegratedMesh_ReadMe.md

File metadata and controls

202 lines (174 loc) · 6.25 KB

Integrated Mesh Scene Layer (1.9)

Integrated mesh scene layers are generally created for citywide 3D mapping. Integrated mesh scene layers include an entire surface and cannot be restyled. Three-dimensional mesh data are typically captured by an automated process (e.g. drone) for constructing 3D objects out of large sets of overlapping imagery. The result integrates the original input image information as a textured mesh including 3D objects, such as buildings and trees, and elevation information.

Examples:
Rancho Cucamonga Fire Station No. 3 SLPK.
Rancho Cucamonga Fire Station No. 3 service.

Example of integrated mesh scene layer

Integrated Mesh Scene Layer

Integrated Mesh Scene Layer Structure

The Integrated Mesh scene layer is structured into a tree of multiple JSON files. Integrated mesh scene layers can be represented as a scene layer package (*.slpk) or a I3S service. A Integrated Mesh scene layer contains the following:

*Shared resources are deprecated as of version 1.7 and are only included for backwards compatibility.

Integrated mesh scene layer packages can optionally contain a hash table for faster indexing.

Example of integrated mesh scene layer structure

.<host>/SceneServer/layers
	+--0 // scene layer document
	+-- nodePages
	|  +-- 0
	|  +-- (...)
	+-- nodes
	|  +--0
	|  |  +-- geometries
	|  |  |  +-- 0
	|  |  |  +-- 1
	|  |  |  +--(...)
	|  |  +-- textures
	|  |  |  +-- 0
	|  |  |  +-- 1
	|  |  |  +--(...)
	|  |  +-- 3dNodeIndexDocument*
	|  |  +-- shared* 
    |  +-- (...)

* Only required for 1.6 compatibility for older clients.

HTTP API Overview

Spec version 1.9 is backwards compatible with 1.6+. For all of our clients to be able to read 1.7+, sharedResources and the 3DNodeIndexDocument resource are included but not used in 1.7+.

The following API methods are available for integrated mesh scene layer:

Scene layer document

Type JSON
URL Template http://serviceURL/layers/{layerID}
Example http://my.server.com/IntegratedMeshSceneLayer/SceneServer/layers/0
Description This is the root document for the service containing properties common to the entire layer.
layerID: Integer. ID of the associated layer. Esri products expect this to be `0`.

3DSceneLayer

Node page

Type JSON
URL Template `http://serviceURL/layers/{layerID}/nodepages/{nodePageID}/`
Example http://my.server.com/IntegratedMeshSceneLayer/SceneServer/layers/0/nodepages/1
Description layerID: Integer. ID of the associated layer. Esri products expect this to be `0`.
nodePageID: Integer. ID of the associated node page.

nodePage

Textures

Type JPG, PNG, DDS, KTX
URL Template http://serviceURL/layers/{layerID}/nodes/{nodeID}/textures/{texture ID}
Example http://my.server.com/IntegratedMeshSceneLayer/SceneServer/layers/0/nodes/9/textures/0_0_1
Description The texture resource (image).
layerID: Integer. ID of the associated layer. Esri products expect this to be `0`.
nodeID: Integer. ID of the associated node.
textureID: String. This ID returns one of the textures available for this node. The same texture may be available in different formats.

Geometry

Type bin, draco
URL Template http://serviceURL/layers/{layerID}/nodes/{nodeID}/geometries/{geometry ID}
Example http://my.server.com/IntegratedMeshSceneLayer/SceneServer/layers/0/nodes/9/geometries/1
Description The geometry resource (mesh information).
layerID: Integer. ID of the associated layer. Esri products expect this to be `0`.
nodeID: Integer. ID of the associated node.
geometryID: Integer. This ID returns one of the geometries available for this node. The same geometry may be available in a different format.

HTTP API included for backward compatibility with 1.6

Shared resources

Type JSON
URL Template http://serviceURL/layers/{layerID}/nodes/{nodeID}/shared
Example http://my.server.com/IntegratedMeshSceneLayer/SceneServer/layers/0/nodes/9/shared
Description Legacy texture and material description. Not used in 1.7+.
layerID: Integer. ID of the associated layer. ArcGIS clients expect this to be `0`.
nodeID: Integer. ID of the associated node.

sharedResource

3D node index document

Type JSON
URL Template http://serviceURL/layers/{layerID}/nodes/{nodeID}
Example http://my.server.com/IntegratedMeshSceneLayer/SceneServer/layers/0/nodes/9
Description Description of the node. Not used in 1.7+.
layerID: Integer. ID of the associated layer. Esri clients expect this to be `0`.
nodeID: Integer. ID of the associated resource.

3DNodeIndexDocument