Class: ObjectSymbol3DLayer

ObjectSymbol3DLayer

new ObjectSymbol3DLayer(options)

base/symbol/symbol3DLayer/ObjectSymbol3DLayer.js, line 8

支持如下方法:
[1、通过json数据构造一个ObjectSymbol3DLayer对象]
[2、导出为JSON对象]
[3、克隆并返回一个新的ObjectSymbol3DLayer对象]

三维体对象符号图层,使用三维体符号来绘制一个点几何要素
通过设置resource的primitive属性来设置符号形状,支持如下形状:
sphere、cylinder、cube、cone、inverted-cone、diamond、tetrahedron
也可通过设置resource中的href属性,来加载gltf数据
同时通过设置material属性来设置符号的外观
示例如下:
[1、使用网络资源创建一个三维体对象符号图层对象]
[2、使用系统自带资源创建一个三维体对象符号图层对象]

Name Type Description
options Object

构造参数

Name Type Default Description
resource IconResource new IconResource() 可选

图标的资源,如果设置了href则表明使用网络gltf资源,如果设置了primitive则表明使用系统自带的资源
系统自带资源类型:'sphere'|'cylinder'|'cube'|'cone'|'inverted-cone'|'diamond'|'tetrahedron'

material ColorMaterial new ColorMaterial() 可选

符号材质,目前支持的材质有:
ColorMaterial: 纯色材质,当图标的资源是网络gltf资源时,指的是模型的覆盖物颜色,通过覆盖物颜色的透明度可以来更改图标的透明度;当图标的资源是是系统自带的图标时,指的是几何体填充颜色

height Number 10 可选

符号高度,当资源类型是gltf时,表明模型平面高度,当资源类型是系统自带类型时,表明几何体平面高度

width Number 10 可选

符号宽度,当资源类型是gltf时,表明模型宽平面度,当资源类型是系统自带类型时,表明几何体平面宽度

depth Number 10 可选

符号深度,当资源类型是gltf时,表明模型深度,当资源类型是系统自带类型时,表明几何体深度

castShadows Boolean true 可选

是否显示阴影

heading Number 0 可选

物体水平方向的旋转角度,z轴

roll Number 0 可选

物体横向垂直面方向的旋转角度,y轴

tilt Number 0 可选

物体纵向垂直面方向的旋转角度,x轴

anchor AnchorType AnchorType.center 可选

锚点,指的图标相对于原始坐标点的位置,支持"center"|"top"|"bottom"|"origin"|"relative"

anchorPosition Point new Point({coordinates: [0, 0]}) 可选

锚点相对偏移量

Examples

使用网络资源创建一个三维体对象符号图层对象

// ES5引入方式
const { Color } = zondy
const { ObjectSymbol3DLayer, IconResource, ColorMaterial } = zondy.symbol
// ES6引入方式
import { ObjectSymbol3DLayer, IconResource, ColorMaterial, Color } from "@mapgis/webclient-common"

// 创建一个三维体对象符号图层对象
const symbol = new ObjectSymbol3DLayer({
  // 网络资源
  resource: new IconResource({
    href: 'gltf网络资源'
  }),
  // 模型覆盖物颜色
  material: new ColorMaterial({
    color: new Color(255, 1, 1, 1)
  }),
  // 模型高度
  height: 1000,
  // 模型宽度
  width: 1000,
  // 模型深度
  depth: 1000
})

使用系统自带资源创建一个三维体对象符号图层对象

// ES5引入方式
const { Color } = zondy
const { ObjectSymbol3DLayer, IconResource, ColorMaterial } = zondy.symbol
// ES6引入方式
import { ObjectSymbol3DLayer, IconResource, ColorMaterial, Color } from "@mapgis/webclient-common"

// 创建一个三维体对象符号图层对象
const symbol = new ObjectSymbol3DLayer({
  // 自带资源
  resource: new IconResource({
    // 创建一个椭球
    primitive: 'sphere'
  }),
  // 覆盖物颜色
  material: new ColorMaterial({
    color: new Color(255, 1, 1, 1)
  }),
  // 椭球半径
  height: 1000,
  // 椭球半径
  width: 1000,
  // 椭球半径
  depth: 1000
})

Extends

Members

anchorAnchorType

锚点,指的图标相对于原始坐标点的位置,支持"center"|"top"|"bottom"|"origin"|"relative"

anchorPositionPoint

锚点相对偏移量

castShadowsBoolean

是否显示阴影

colorColor

颜色

depthNumber

符号深度

extensionOptionsObject

符号的额外构造参数,该构造参数是地图引擎的额外构造参数,在此设置了之后,会覆盖该符号转换好地图引擎的构造参数

Default Value:
{}

headingNumber

物体水平方向的旋转角度,z轴

heightNumber

符号高度

idString

符号id

materialObject

符号材质

resourceIconResource

图标的资源,如果没有设置图标资源,则使用系统自带的图标

rollNumber

物体横向垂直面方向的旋转角度,y轴

tiltNumber

物体纵向垂直面方向的旋转角度,x轴

类型

widthNumber

符号宽度

Methods

ObjectSymbol3DLayer.fromJSON(json){ObjectSymbol3DLayer}

base/symbol/symbol3DLayer/ObjectSymbol3DLayer.js, line 174
Name Type Description
json Object

json数据

Returns:
Type Description
ObjectSymbol3DLayer 新的ObjectSymbol3DLayer对象

clone(){ObjectSymbol3DLayer}

base/symbol/symbol3DLayer/ObjectSymbol3DLayer.js, line 204
Returns:
Type Description
ObjectSymbol3DLayer 新的ObjectSymbol3DLayer对象

toJSON(){Object}

base/symbol/symbol3DLayer/ObjectSymbol3DLayer.js, line 183

导出为JSON对象

Returns:
Type Description
Object JSON对像