Joint3d-SDK Docs
  • Base
  • Map
  • Layers
  • Overlays
  • Materials
  • Effects
  • Tools
  • Analysis
  • ThirdPart
  • English
  • 简体中文
  • Base
  • Map
  • Layers
  • Overlays
  • Materials
  • Effects
  • Tools
  • Analysis
  • ThirdPart
  • English
  • 简体中文
  • Layers

    • Layer
      • properties
      • methods
      • static methods
    • Joint3d.LayerGroup
      • example
      • creation
      • properties
      • methods
    • Joint3d.VectorLayer
      • example
      • creation
    • Joint3d.DynamicLayer
      • example
      • creation
    • Joint3d.PrimitiveLayer
      • example
      • creation
    • Joint3d.GroundPrimitiveLayer
      • example
      • creation
    • Joint3d.TilesetLayer
      • example
      • creation
    • Joint3d.S3MLayer
      • example
      • creation
    • Joint3d.GeoJsonLayer
      • example
      • creation
      • methods
    • Joint3d.TopoJsonLayer
      • example
      • creation
      • methods
    • Joint3d.HtmlLayer
      • example
      • creation
    • Joint3d.CzmlLayer
      • example
      • creation
    • Joint3d.KmlLayer
      • example
      • creation
    • Joint3d.GpxLayer
      • example
      • creation
    • Joint3d.ClusterLayer
      • example
      • creation
    • Joint3d.HeatLayer
      • example
      • creation
      • methods
    • Joint3d.WindLayer
      • example
      • creation
      • methods
  • layer
2022-01-10
目录

Layers

# Layers

Categorize overlay elements with the same business logic or attributes for the same management

# Layer

The base class of the layer, its subclasses are instantiated and need to be added to the 3D scene in order to display all kinds of 3D data

注意

This basic class cannot be instantiated

# properties

  • {String} id readonly
  • {Boolean} show
  • {Object} attr:Business Properties
  • {String} state readonly
  • {String} type readonly

# methods

  • addOverlay(overlay)

    • parameters
      • {Overlay} overlay
    • returns this
  • addOverlays(overlays)

    • parameters
      • {Array<Overlay>} overlays
    • returns this
  • removeOverlay(overlay)

    • parameters
      • {Overlay} overlay
    • returns this
  • getOverlay(overlayId)

    • parameters
      • {String} overlayId
    • returns overlay
  • getOverlayById(Id)

    • parameters
      • {String} Id
    • returns overlay
  • getOverlaysByAttr(attrName, attrVal)

    • parameters
      • {String} attrName
      • {Object} attrVal
    • returns array
    overlay.attr.name = 'test'
    let arr = layer.getOverlaysByAttr('name', 'test')
    
  • getOverlays()

    • returns array
  • eachOverlay(method, context)

    • parameters
      • {Function} method:Callback function with parameters for overlay
      • {Object} context
    • returns this
    layer.eachOverlay((item) => {})
    
  • clear()

    • returns this
  • remove()

    • returns this
  • addTo(viewer)

    • parameters
      • {Viewer|World} viewer:场景
    • returns this
  • on(type, callback, context)

    Event Subscription

    • parameters
      • {Object} type
      • {Function} callback
      • {Object} context
    • returns this
  • off(type, callback, context)

    Event Unsubscribe

    • parameters
      • {Object} type
      • {Function} callback
      • {Object} context
    • returns this
  • fire(type,params)

    • parameters
      • {Object} type
      • {Object} params
    • returns this

# static methods

  • registerType(type)

    • parameters
      • {String} type
  • getLayerType()

    • returns string

# Joint3d.LayerGroup

Layer groups, grouping layers according to a certain logic to facilitate unified management

# example

let layerGroup = new Joint3d.LayerGroup('id')
viewer.addLayerGroup(layerGroup)
let layer = new Joint3d.VectorLayer('layer')
layerGroup.addLayer(layer)

# creation

  • constructor(id)

    • parameters
      • {String} id
    • returns layerGroup

# properties

  • {String} id readonly
  • {Boolean} show
  • {String} type readonly

# methods

  • addLayer(layer)

    • parameters
      • {Layer} layer
    • returns this
  • removeLayer(layer)

    • parameters
      • {Layer} layer
    • returns this
  • getLayer(id)

    • parameters
      • {String} id
    • returns layer
  • getLayers()

    • returns layer
  • remove()

    • returns this
  • addTo(viewer)

    • parameters
      • {Viewer|World} viewer:场景
    • returns this

# Joint3d.VectorLayer

Vector layer, used to add all kinds of vector data (points, lines, surfaces, etc.), grouping vector data according to a certain logic to facilitate unified management, inherited from Layer

# example

let layer = new Joint3d.VectorLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id)

    • parameters
      • {String} id
    • returns vectorLayer

# Joint3d.DynamicLayer

Dynamic layer, used to add all kinds of dynamic data (billboard、model etc.), grouping vector data according to a certain logic to facilitate unified management, inherited from Layer

# example

let layer = new Joint3d.DynamicLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id)

    • parameters
      • {String} id
    • returns vectorLayer

# Joint3d.PrimitiveLayer

The primitive layer, which is used to add all kinds of primitive data, group the primitive data in a certain logic to facilitate unified management, inherited from Layer

# example

let layer = new Joint3d.PrimitiveLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id)

    • parameters
      • {String} id
    • returns primitiveLayer

# Joint3d.GroundPrimitiveLayer

The ground primitive layer, which is used to add all kinds of ground primitive data, group the ground primitive data in a certain logic to facilitate unified management, inherited from Layer

# example

let layer = new Joint3d.GroundPrimitiveLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id)

    • parameters
      • {String} id
    • returns groundPrimitiveLayer

# Joint3d.TilesetLayer

3dTiles layer, used to add 3dTiles model data, inherits fromLayer

# example

let layer = new Joint3d.TilesetLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id)

    • parameters
      • {String} id
    • returns tilesetLayer

# Joint3d.S3MLayer

Inherited from Layer

# example

let layer = new Joint3d.S3MLayer('id','**.scp')
viewer.addLayer(layer)

# creation

  • constructor(id,url,[options])

    • parameters
      • {String} id
      • {String} url
      • {Object} options
    • returns S3MLayer
//options(optional)
{
  "maxVisibleDistance":Number.MAX_VALUE, 
  "minVisibleDistance":0,
}

# Joint3d.GeoJsonLayer

GeoJson layer, used to load GeoJson data, inherited from Layer,

# example

let layer = new Joint3d.GeoJsonLayer('id', '**/**.geojson')
layer.eachOverlay((item) => {
  // item is an entity,
  if (item.polyline) {
    //todo
    let polyline = Joint3d.Polyline.fromEntity(item)
  }
  if (item.polygon) {
    //todo
    let polygon = Joint3d.Polygon.fromEntity(item)
  }
  if (item.billboard) {
    //todo
    let point = Joint3d.Point.fromEntity(item)
    let divIcon = Joint3d.DivIcon.fromEntity(item)
    let billboard = Joint3d.Billboard.fromEntity(item)
  }
})

# creation

  • constructor(id,url,[options])

    • parameters
      • {String} id
      • {String|Object} url:A url or GeoJSON object to be loaded.
      • {Object} options
    • returns geoJsonLayer
//options(optional)
{
  "sourceUri": '../...geojson',//Overrides the url to use for resolving relative links.
  "markerSize": 3,//The default size of the map pin created for each point, in pixels.
  "markerSymbol": "?",//The default symbol of the map pin created for each point. This can be any valid Maki identifier, any single character, or blank if no symbol is to be used.
  "markerColor": Joint3d.Color.RED,//The default color of the map pin created for each point.
  "stroke": Joint3d.Color.RED,//The default color of polylines and polygon outlines.
  "strokeWidth": 3,//The default width of polylines and polygon outlines.
  "fill": Joint3d.Color.RED,//The default color for polygon interiors.
  "clampToGround": true,//true if we want the features clamped to the ground.
}

# methods

  • toVectorLayer()

    • returns vectorLayer
  • toModelLayer(modelUrl)

    • parameters
      • {String} modelUrl
    • returns vectorLayer

# Joint3d.TopoJsonLayer

TopoJson layer, used to load TopoJson data, inherited from Layer,

# example

let layer = new Joint3d.TopoJsonLayer('id', '**/**.geojson')
layer.eachOverlay((item) => {
  // item is an entity,
  if (item.polyline) {
    //todo
    let polyline = Joint3d.Polyline.fromEntity(item)
  }
  if (item.polygon) {
    //todo
    let polygon = Joint3d.Polygon.fromEntity(item)
  }
  if (item.billboard) {
    //todo
    let point = Joint3d.Point.fromEntity(item)
    let divIcon = Joint3d.DivIcon.fromEntity(item)
    let billboard = Joint3d.Billboard.fromEntity(item)
  }
})

# creation

  • constructor(id,url,[options])

    • parameters
      • {String} id
      • {String|Object} url:A url or TopoJSON object to be loaded
      • {Object} options
    • returns topoJsonLayer
//options(optional)
{
  "sourceUri": '../...geojson',//Overrides the url to use for resolving relative links.
  "markerSize": 3,//The default size of the map pin created for each point, in pixels.
  "markerSymbol": "?",//The default symbol of the map pin created for each point. This can be any valid Maki identifier, any single character, or blank if no symbol is to be used.
  "markerColor": Joint3d.Color.RED,//The default color of the map pin created for each point.
  "stroke": Joint3d.Color.RED,//The default color of polylines and polygon outlines.
  "strokeWidth": 3,//The default width of polylines and polygon outlines.
  "fill": Joint3d.Color.RED,//The default color for polygon interiors.
  "clampToGround": true,//true if we want the features clamped to the ground.
}

# methods

  • toVectorLayer()

    • returns vectorLayer
  • toModelLayer(modelUrl)

    • parameters
      • {String} modelUrl
    • returns vectorLayer

# Joint3d.HtmlLayer

Html layer for loading DivIcon nodes, inherited from Layer,

# example

let layer = new Joint3d.HtmlLayer('dom')
viewer.addLayer(layer)

# creation

  • constructor(id)

    Joint3d.HtmlLayer 构造函数

    • parameters
      • {String} id:图层唯一标识
    • returns htmlLayer

# Joint3d.CzmlLayer

Czml layer for loading Czml data, inherited from Layer

# example

let layer = new Joint3d.CzmlLayer('id', '**/**.czml')
layer.eachOverlay((item) => {
  if (item.polyline) {
    //todo
  }
  if (item.polygon) {
    //todo
  }
  if (item.billboard) {
    //todo
  }
})

# creation

  • constructor(id,url,[options])

    • parameters
      • {String} id
      • {String} url
      • {Object} options
    • returns czmlLayer
//options(optional)
{
  "sourceUri": '../...czml',//Overrides the url to use for resolving relative links.
}

# Joint3d.KmlLayer

Kml layer for loading Kml data, inherited from Layer

# example

let layer = new Joint3d.KmlLayer('id', '**/**.kml')
layer.eachOverlay((item) => {
  if (item.polyline) {
    //todo
  }
  if (item.polygon) {
    //todo
  }
  if (item.billboard) {
    //todo
  }
})

# creation

  • constructor(id,url,[options])

    • parameters
      • {String} id
      • {String} url
      • {Object} options
    • returns kmlLayer
//options(optional)
{
  "sourceUri": '../...kml',//Overrides the url to use for resolving relative links.
}

# Joint3d.GpxLayer

Gpx layer for loading gpx data, inherited from Layer

# example

let layer = new Joint3d.GpxLayer('id', '**/**.gpx')

# creation

  • constructor(id,url,[options])

    • parameters
      • {String} id
      • {String} url
      • {Object} options
    • returns gpxLayer

# Joint3d.ClusterLayer

Inherited from Layer

# example

let layer = new Joint3d.ClusterLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id,[options])

    • parameters
      • {String} id
      • {Object} options
    • returns clusterLayer
{
  "size": 48,
  "pixelRange": 40,
  "gradient": {
    "0.0001": Joint3d.Color.DEEPSKYBLUE,
    "0.001": Joint3d.Color.GREEN,
    "0.01": Joint3d.Color.ORANGE,
    "0.1": Joint3d.Color.RED
  },
  "style": "circle", // pin,circle and clustering
  "fontSize": 12,
  "fontColor": Joint3d.Color.BLACK
}

# Joint3d.HeatLayer

Inherited from Layer

# example

let layer = new Joint3d.HeatLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id,[options])

    • parameters
      • {String} id
      • {Object} options
    • returns heatLayer
//options(optional)
{
  "gradient": {
    "0.5": "green",
    "0.6": "orange",
    "0.95": "red"
  },
  "height": 0,
  "radius": 30,
  "useGround": false,
  "classificationType": 2 // only use for "useGround" is true
}

# methods

  • setPositions(positions)

    • parameters
      • {Array<Object>} positions
    • returns heatLayer
{
  "lng": "",
  "lat": "",
  "value": 1
}
  • addPosition(position)

    • parameters
      • {Object} position
    • returns heatLayer
{
  "lng": "",
  "lat": "",
  "value": 1
}

# Joint3d.WindLayer

Inherited from Layer

# example

let layer = new Joint3d.WindLayer('id')
viewer.addLayer(layer)

# creation

  • constructor(id,[options])

    • parameters
      • {String} id
      • {Object} options
    • returns windLayer
//options(optional)
{
  "globalAlpha": 0.9,
  "lineWidth": 1,
  "colorScale": "#fff",
  "velocityScale": 1 / 25,
  "maxAge": 90,
  "paths": 800,
  "frameRate": 20,
  "useCoordsDraw": true,
  "gpet": true
}

# methods

  • setData(data,[options])

    • parameters
      • {Object} data
      • {Object} options
    • returns windLayer
  • setOptions(options)

    • parameters
      • {Object} options
    • returns windLayer
Copyright © 2021-2022 厦门集恩图造信息科技股份有限公司
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式