Model Layer

A 3D Model for the Globe

Layer Name

type: string
The unique display name and identifier of the layer. It must be unique and contain no special characters.

URL

type: string
A file path that points to a .dae or .obj. If the path is relative, it will be relative to the mission’s directory.

Longitude

type: float
The longitude in decimal degrees at which to place the model.

Latitude

type: float
The latitude in decimal degrees at which to place the model.

Elevation

type: float
The elevation in meters at which to place the model.

Rotation X

type: float optional
An x-axis rotation in radians to orient the model.

Rotation Y

type: float optional
A y-axis rotation in radians to orient the model.

Rotation Z

type: float optional
A z-axis rotation in radians to orient the model.

Scale

type: float optional
A scaling factor to resize the model.

Initial Visibility

type: bool
Whether the layer is on initially.

Initial Opacity

type: float
A value from 0 to 1 of the layer’s initial opacity. 1 is fully opaque.

Time Enabled

type: bool
True if the layer is time enabled. URLs that contain {starttime} or {endtime} will be dynamically replaced by their set values when the layer is fetched.

Time Type

type: enum [Global, Individual]
Whether the layer should use global time values or function independently with its own time values.

Time Format

type: string optional
The string format to be used in the URL for {starttime} and {endtime}. Defaults to YYYY-MM-DDTHH:mm:ssZ.


Note: Additional vector layer stylings can be found on the Vector Styling page.


Alternatively

Do know that models can also be added via a Vector layer’s markerAttachments.model. An example to have vector points show up in the Map and their respective models to appear in both the Viewer and Globe is as follows:

Example .geojson:

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "Name": "OBJ",
        "images": [
          {
            "name": "Model Example",
            "url": "Data/models/m20a_bettys_rock_1m/m20a_bettys_rock_1m_centered.obj",
            "texture": "Data/models/m20a_bettys_rock_1m/m20a_bettys_rock.jpg",
            "type": "image",
            "isModel": true,
            "mtl": "Data/models/m20a_bettys_rock_1m/m20a_bettys_rock_1m_centered.mtl",
            "yaw": 0,
            "pitch": 0,
            "roll": 0,
            "elev": -4369.7648860680883
          }
        ]
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          137.35458264484535, -4.699610086614438, -4360.7648860680883
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "Name": "GLTF",
        "images": [
          {
            "name": "Model Example2",
            "url": "Data/models/bettys_rock_sol_467_gltf/scene.gltf",
            "type": "image",
            "isModel": true,
            "yaw": 0,
            "pitch": 0,
            "roll": 0,
            "elev": -4369.7648860680883
          }
        ]
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          137.35058264484535, -4.70610086614438, -4360.7648860680883
        ]
      }
    }
  ]
}

Vector Layer Raw Variables

{
  "useKeyAsName": "propKey || [propKey1, propKey2, ...]",
  "markerAttachments": {
    "model": {
      "pathProp": "images.0.url",
      "mtlProp": "images.0.mtl",
      "pitchProp": -90,
      "pitchUnit": "deg",
      "show": "always"
    }
  }
}