矢量要素 🌎
ECCesium.Overlay
覆盖物基类
WARNING
该类无需实例化,既视实例化后也无法使用
properties
{String} overlayId
:唯一标识readonly
{String} id
:业务唯一标识{Boolean} show
:是否显示{Object} attr
:业务属性{Array} contextMenu
:设置右击菜单,菜单的回调函数参数为 viewer,overlay{String} state
:覆盖物状态readonly
{String} type
:覆盖物类型readonly
{Boolean} allowDrillPicking
:是否可以穿透选择,默认为 false,如果为 true 时,覆盖物为穿透选择其后面的所有覆盖物,并触发其后面的所有覆盖物的鼠标事件
methods
addTo(layer)
添加到图层
- 参数
{Layer} layer
:图层
- 返回值
this
- 参数
remove()
删除
- 返回值
this
- 返回值
setLabel(text, textStyle)
设置标签
- 参数
{String} text
:文本{String} textStyle
:文本样式,详情参考:ECCesium.Label
- 返回值
this
- 参数
WARNING
该函数仅对下列覆盖物有效:Point、Circle、Polygon、Billboard、Ellipse、Rectangle
on(type, callback, context)
事件订阅
- 参数
{Object} type
:订阅类型{Function} callback
:订阅回调{Object} context
:上下文
- 返回值
this
- 参数
off(type, callback, context)
取消事件订阅
- 参数
{Object} type
:订阅类型{Function} callback
:订阅回调{Object} context
:上下文
- 返回值
this
- 参数
fire(type,params)
触发事件
- 参数
{Object} type
:订阅类型{Object} params
:参数
- 返回值
this
- 参数
static methods
registerType(type)
注册覆盖物类型
- 参数
{String} type
:覆盖物类型
- 参数
getOverlayType(type)
获取覆盖物类型
- 参数
{String} type
:覆盖物类型
- 返回值
string
- 参数
ECCesium.Point
点位要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let point = new ECCesium.Point(position)
point.setStyle({
pixelSize: 10,
})
2
3
4
5
creation
constructor(position)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标
- 返回值
point
- 参数
properties
{Position|String|Array|Object} position
:坐标
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:PointGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"pixelSize": 1, //像素大小
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"color": ECCesium.Color.WHITE, //颜色
"outlineColor": ECCesium.Color.WHITE, //边框颜色
"outlineWidth": 0, //边框大小,
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"translucencyByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置透明度
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"disableDepthTestDistance": 0 // 深度检测距离,用于防止剪切地形,设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
point
- 参数
ECCesium.Polyline
线要素,继承于Overlay
example
let polyline = new ECCesium.Polyline('120,20;120,30')
polyline.setStyle({
width: 10,
})
2
3
4
creation
constructor(positions)
构造函数
- 参数
{String|Array<Position|Number|String|Object>} positions
:坐标串
- 返回值
polyline
- 参数
properties
{String|Array<Position|Number|String|Object>} positions
:坐标串{ECCesium.Position} center
:中心点readonly
{Number} distance
:距离,单位:米readonly
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:PolylineGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"width": 1, //线宽
"material": ECCesium.Color.WHITE, //材质
"clampToGround": false, //是否贴地
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2, //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
"zIndex": 0 //层级
}
2
3
4
5
6
7
8
9
10
11
12
13
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
polyline
- 参数
ECCesium.Polygon
面要素,继承于Overlay
example
let polygon = new ECCesium.Polygon('120,20;120,30;122,30')
polygon.setStyle({
height: 10,
})
2
3
4
creation
constructor(positions)
构造函数
- 参数
{String|Array<Position|Number|String|Object} positions
:坐标串
- 返回值
polygon
- 参数
properties
{String|Array<Position|Number|String|Object>} positions
:坐标串{String|Array<Position|Number|String|Object>} holes
:洞坐标串{ECCesium.Position} center
:中心点readonly
{Number} area
:距离,单位:平方米readonly
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:PolygonGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"height": 1, //高度
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"extrudedHeight": 0, //拉升高度
"stRotation": 0, //旋转角度
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"closeTop": true, //顶面是否闭合
"closeBottom": true, //底面是否闭合
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2, //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
"zIndex": 0 //层级
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
polygon
- 参数
ECCesium.Billboard
图标要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let billboard = new ECCesium.Billboard(position, '***/**.png')
billboard.size = [20, 20]
2
3
creation
constructor(position,icon)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String} icon
:图标地址
- 返回值
billboard
- 参数
properties
{Position|String|Array|Object} position
:坐标{String} icon
:图标地址{Array<Number>} size
:图标大小
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:BillboardGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"scale": 1, //比例
"pixelOffset": { "x": 0, "y": 0 }, //偏移像素
"rotation": 0, //旋转角度
"translucencyByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置透明度
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"disableDepthTestDistance": 0 // 深度检测距离,用于防止剪切地形,设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
billboard
- 参数
ECCesium.Label
标签要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let Label = new ECCesium.Label(position, 'test')
2
creation
constructor(position,text)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String} text
:文本
- 返回值
label
- 参数
properties
{Position} position
:坐标{String} text
:文本
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:LabelGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"font": "30px sans-serif", // CSS 字体设置
"scale": 1, //比例
"pixelOffset": { "x": 0, "y": 0 }, //偏移像素
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"showBackground": false, //是否显示背景
"backgrounECCesiumolor": ECCesium.Color.BLACK, //背景颜色
"backgroundPadding": { "x": 0, "y": 0 }, //背景间隙
"fillColor": ECCesium.Color.BLACK, //文字颜色
"outlineColor": ECCesium.Color.WHITE, //边框颜色
"outlineWidth": 0, //边框大小,
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"translucencyByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置透明度
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"disableDepthTestDistance": 0 // 深度检测距离,用于防止剪切地形,设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
fromEntity(entity,text)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物{String} text
:文本
- 返回值
label
- 参数
ECCesium.Circle
圆要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let circle = new ECCesium.Circle(position, 200)
2
creation
constructor(center, radius)
构造函数
- 参数
{Position|String|Array|Object} center
:圆心{String} radius
:半径
- 返回值
billboard
- 参数
properties
{Position} center
:圆心{String} radius
:半径
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:EllipseGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"height": 1, //高度
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"extrudedHeight": 0, //拉升高度
"rotation": 0, //顺时针旋转角度
"stRotation": 0, //逆时针旋转角度
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2, //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
"zIndex": 0 //层级
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ECCesium.Rect
矩形要素,继承于Overlay
example
let rectangle = new ECCesium.Rect('-90.0,32.0;-94.0,36.0;')
creation
constructor(positions)
构造函数
- 参数
{String|Array<Position|Number|String>} positions
:坐标串
- 返回值
rectangle
- 参数
properties
{String|Array<Position|Number|String>} positions
:坐标串
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:RectangleGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"height": 1, //高度
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"extrudedHeight": 0, //拉升高度
"rotation": 0, //顺时针旋转角度
"stRotation": 0, //逆时针旋转角度
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2, //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
"zIndex": 0 //层级
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ECCesium.Wall
墙体要素,继承于Overlay
example
let wall = new ECCesium.Wall('-90.0,32.0,1000;-94.0,36.0,1000;')
creation
constructor(positions)
构造函数
- 参数
{String|Array<Position|Number|String>} positions
:坐标串
- 返回值
wall
- 参数
properties
{String|Array<Position|Number|String>} positions
:坐标串
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:WallGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2 //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
}
2
3
4
5
6
7
8
9
10
11
12
13
14
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
wall
- 参数
ECCesium.Model
模型要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let model = new ECCesium.Model(position, '**/**.glb')
2
creation
constructor(position, modelUrl)
构造函数
- 参数
- ``{Position|String|Array|Object} position`:坐标
{String} modelUrl
:模型地址
- 返回值
model
- 参数
properties
{Position} position
:坐标{String} modelUrl
:模型地址
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:ModelGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"scale": 1, //比例
"minimumPixelSize": 0, //指定模型的最小像素大小,而不考虑缩放
"maximumScale": 0, //指定模型的最大比例
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"silhouetteColor": ECCesium.Color.RED, //轮廓颜色
"silhouetteSize": 0, //轮廓宽度
"lightColor": ECCesium.Color.RED, //模型着色时指定灯光颜色
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fromEntity(entity,modelUrl)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物{String} modelUrl
:模型地址
- 返回值
model
- 参数
ECCesium.Tileset
3Dtiles 模型要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let tileset = new ECCesium.Tileset('**/tileset.json')
tileset.setPosition(position)
2
3
creation
constructor(url,[options])
构造函数
- 参数
{String} url
:模型地址{Object} options
:参数设置,详情参考:Tileset
- 返回值
tileset
- 参数
properties
{Promise} readyPromise
:加载完成后的异步函数readonly
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:TileStyle
- 返回值
this
jslet style = new ECCesium.TilesetStyle({ color: { conditions: [ ['${Height} >= 100', 'color("purple", 0.5)'], //Height 为模型设置的属性 ['${Height} >= 50', 'color("red")'], ['true', 'color("blue")'], ], }, show: '${Height} > 0', })
1
2
3
4
5
6
7
8
9
10- 参数
setPosition(position)
设置位置
- 参数
{Position|String|Array|Object} position
:位置
- 返回值
this
- 参数
setHeadingPitchRoll(heading, pitch, roll)
设置方位角
- 参数
{Number} heading
:偏航角度,可能其他框架作 yaw,表示绕 Z 轴旋转。默认:0{Number} pitch
:俯仰角度,表示绕 Y 轴旋转。默认:0{Number} roll
:翻转角度,表示绕 X 轴旋转。默认:0
- 返回值
this
- 参数
setHeight(height,isAbsolute)
设置高度
- 参数
{Number} height
:高度{Boolean} isAbsolute
:是否为绝对高度,如果为 true,将不根据模型中心高度计算
- 返回值
this
- 参数
setScale(scale)
设置比例
- 参数
{Number} scale
:比例
- 返回值
this
- 参数
setCustomShader(customShader)
设置自定义片元着色器
- 参数
{String} customShader
:片元着色器
- 返回值
this
- 参数
setProperties(properties)
根据现有的属性添加属性
- 参数
{Array<Object>} properties
: 属性
- 返回值
this
- 参数
//属性参数
{
"key": "name", //已有属性名称
"keyValue": "1", //已有属性值
"propertyName": "highlight", //新增属性名称
"propertyValue": true //新增属性值
}
2
3
4
5
6
7
ECCesium.DivIcon
DivIcon 要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let divIcon = new ECCesium.DivIcon(position, '<div></div>')
2
creation
constructor(position, content)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String|Element} content
:内容
- 返回值
divIcon
- 参数
properties
{Position|String|Array} position
:坐标{String|Element} content
:内容writeOnly
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,
- 返回值
this
- 参数
{
"className": "test", //样式名
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
fromEntity(entity,content)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物{String|Element} content
:内容
- 返回值
divIcon
- 参数
ECCesium.Box
盒要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let box = new ECCesium.Box(position, 20, 30, 40)
2
creation
constructor(position, length, width, height)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{Number} length
:长度{Number} width
:宽度{Number} height
:高度
- 返回值
box
- 参数
properties
{Position} position
:坐标{Number} length
:长度{Number} width
:宽度{Number} height
:高度
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:BoxGraphics
- 返回值
this
- 参数
{
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
ECCesium.Corridor
走廊要素,继承于Overlay
example
let corridor = new ECCesium.Corridor('120,20;120,30')
corridor.setStyle({
width: 10,
})
2
3
4
creation
constructor(positions)
构造函数
- 参数
{String|Array<Position|Number|String|Object>} positions
:坐标串
- 返回值
corridor
- 参数
properties
{Array<Position>} positions
:坐标串
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:CorridorGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"width": 1, //线宽
"height": 0, //高度
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"cornerType": 0, //转角类别,0:圆角、1:直角、2:斜角
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2, //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
"zIndex": 0 //层级
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
corridor
- 参数
ECCesium.Cylinder
圆柱要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let cylinder = new ECCesium.Cylinder(position, 20, 30, 40)
2
creation
constructor(position, length, topRadius, bottomRadius)
构造函数
- 参数
{Position|Number|String|Object} position
:坐标{Number} length
:长度{Number} topRadius
:上半径{Number} bottomRadius
:下半径
- 返回值
cylinder
- 参数
properties
{Position} position
:坐标{Number} length
:长度{Number} topRadius
:上半径{Number} bottomRadius
:下半径
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:CylinderGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
14
ECCesium.Ellipse
椭圆要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let ellipse = new ECCesium.Ellipse(position, 20, 30)
2
creation
constructor(position, semiMajorAxis, semiMinorAxis)
构造函数
- 参数
{Position|Number|String|Object} position
:坐标{Number} semiMajorAxis
:长半轴{Number} semiMinorAxis
:短半轴
- 返回值
ellipse
- 参数
properties
{Position} position
:坐标{Number} semiMajorAxis
:长半轴{Number} semiMinorAxis
:短半轴
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:EllipseGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"height": 1, //高度
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"extrudedHeight": 0, //拉升高度
"rotation": 0, //顺时针旋转角度
"stRotation": 0, //逆时针旋转角度
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"classificationType": 2, //分类 是否影响地形,3D切片或同时影响这两者。0:地形、1:3D切片、2:两者
"zIndex": 0 //层级
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ECCesium.Ellipsoid
球体要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let ellipsoid = new ECCesium.Ellipsoid(position, { x: 30, y: 30, z: 30 })
2
creation
constructor(position, radius)
构造函数
- 参数
{Position|Number|String|Object} position
:坐标{Object} radius
:半径,格式是:{x: 30, y: 30, z: 30}
- 返回值
ellipsoid
- 参数
properties
{Position} position
:坐标{Object} radius
:半径,格式是:{x: 30, y: 30, z: 30}
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:EllipsoidGraphics
- 返回值
this
json// 样式参数(可选) { "heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。 "fill": true, //是否用提供的材料填充多边形。 "material": ECCesium.Color.WHITE, //材质 "outline": false, //是否显示边框 "outlineColor": ECCesium.Color.BLACK, //边框颜色 "outlineWidth": 0, //边框宽度 "shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受 "distanceDisplayCondition": { "near": 0, //最近距离 "far": Number.MAX_VALUE //最远距离 } //根据距离设置可见 }
1
2
3
4
5
6
7
8
9
10
11
12
13
14- 参数
ECCesium.Plane
平面要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let plane = new ECCesium.Plane(position, 20, 30, { normal: 'x' })
2
creation
constructor(position, width, height, direction)
构造函数
- 参数
{Position|Number|String|Object} position
:坐标{Number} width
:宽度{Number} height
:高度{Object} plane
:面板格式
- 返回值
plane
- 参数
// 面板参数(可选)
{
"normal": "x", // 法线,x,y,z其中一个
"distance": 0 // 距离
}
2
3
4
5
properties
{Position} position
:坐标{Number} width
:宽度{Number} height
:高度{Number} distance
:距离
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:PlaneGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
ECCesium.PolylineVolume
管道要素,继承于Overlay
example
function computeCircle(radius) {
var positions = []
for (var i = 0; i < 360; i++) {
var radians = ECCesium.Math.toRadians(i)
positions.push({
x: radius * Math.cos(radians),
y: radius * Math.sin(radians),
})
}
return positions
}
let polylineVolume = new ECCesium.PolylineVolume(
'-90.0,32.0,0.0;-90.0,36.0,100000.0;-94.0,36.0,0.0;',
computeCircle(60000)
)
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
creation
constructor(positions, shape)
构造函数
- 参数
{String|Array<Position|Number|String|Object>} positions
:坐标串{Array} shape
:形状
- 返回值
polylineVolume
- 参数
properties
{Array<Position>} positions
:坐标串{Array} shape
:形状
methods
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:PolylineVolumeGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"cornerType": 0, //转角类别,0:圆角、1:直角、2:斜角
"fill": true, //是否用提供的材料填充多边形。
"material": ECCesium.Color.WHITE, //材质
"outline": false, //是否显示边框
"outlineColor": ECCesium.Color.BLACK, //边框颜色
"outlineWidth": 0, //边框宽度
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
14
fromEntity(entity)
Entity 转换为 Overlay
- 参数
{Object} entity
:Cesium 覆盖物
- 返回值
polylineVolume
- 参数
ECCesium.DynamicBillboard
动态图标,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let billboard = new ECCesium.DynamicBillboard(position, '***/**.png')
billboard.size = [20, 20]
2
3
creation
constructor(position,icon)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String} icon
:图标地址
- 返回值
billboard
- 参数
properties
{Position} position
:坐标readonly
{String} icon
:图标地址{Array<Number>} size
:图标大小
methods
addPosition(position,interval)
添加点位
- 参数
{Position|Array|String|Object} position
:点位{Number} interval
:间隔,单位:秒
- 返回值
this
- 参数
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:BillboardGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"scale": 1, //比例
"pixelOffset": { "x": 0, "y": 0 }, //偏移像素
"rotation": 0, //旋转角度
"translucencyByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置透明度
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"disableDepthTestDistance": 0 // 深度检测距离,用于防止剪切地形,设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
ECCesium.DynamicModel
动态模型要素,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let model = new ECCesium.DynamicModel(position, '**/**.glb')
2
creation
constructor(position, modelUrl)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String} modelUrl
:模型地址
- 返回值
model
- 参数
properties
{Position} position
:坐标readonly
{String} modelUrl
:模型地址
methods
addPosition(position,interval)
添加点位
- 参数
{Position|Array|String|Object} position
:点位{Number} interval
:间隔,单位:秒
- 返回值
this
- 参数
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:ModelGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"scale": 1, //比例
"minimumPixelSize": 0, //指定模型的最小像素大小,而不考虑缩放
"maximumScale": 0, //指定模型的最大比例
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"shadows": 0, //阴影类型,0:禁用、1:启用 、2:投射、3:接受
"silhouetteColor": ECCesium.Color.RED, //轮廓颜色
"silhouetteSize": 0, //轮廓宽度
"lightColor": ECCesium.Color.RED, //模型着色时指定灯光颜色
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
} //根据距离设置可见
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ECCesium.CustomBillboard
自定义图标,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let billboard = new ECCesium.CustomBillboard(position, '***/**.png')
billboard.size = [20, 20]
2
3
creation
constructor(position,icon)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String} icon
:图标地址
- 返回值
billboard
- 参数
properties
{Position} position
:坐标{String} icon
:图标地址{Array<Number>} size
:图标大小
methods
setVLine(style)
设置垂直线
- 参数
{Object} style
:样式,详情参考:PolylineGraphics
- 返回值
this
- 参数
setBottomCircle(radius,style,rotateAmount)
设置底圆
- 参数
{Number} radius
:半径{Object} style
:样式,详情参考:EllipseGraphics{Number} rotateAmount
:旋转量
- 返回值
this
- 参数
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:BillboardGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"scale": 1, //比例
"pixelOffset": { "x": 0, "y": 0 }, //偏移像素
"rotation": 0, //旋转角度
"translucencyByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置透明度
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"disableDepthTestDistance": 0 // 深度检测距离,用于防止剪切地形,设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
ECCesium.CustomLabel
自定义文本,继承于Overlay
example
let position = new ECCesium.Position(120, 20)
let label = new ECCesium.CustomLabel(position, 'test')
2
creation
constructor(position,text)
构造函数
- 参数
{Position|String|Array|Object} position
:坐标{String} text
:文本
- 返回值
label
- 参数
properties
{Position} position
:坐标{String} text
:文本
methods
setVLine(style)
设置垂直线
- 参数
{Object} style
:样式,详情参考:PolylineGraphics
- 返回值
this
- 参数
setBottomCircle(radius,style,rotateAmount)
设置底圆
- 参数
{Number} radius
:半径{Object} style
:样式,详情参考:EllipseGraphics{Number} rotateAmount
:旋转量
- 返回值
this
- 参数
setStyle(style)
设置样式
- 参数
{Object} style
:样式,详情参考:LabelGraphics
- 返回值
this
- 参数
// 样式参数(可选)
{
"heightReference": 0, //高度参照,0:位置无参照,位置是绝对的,1:位置固定在地形上 2:位置高度是指地形上方的高度。
"scale": 1, //比例
"pixelOffset": { "x": 0, "y": 0 }, //偏移像素
"rotation": 0, //旋转角度
"translucencyByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置透明度
"scaleByDistance": {
"near": 0, //最近距离
"nearValue": 0, //最近距离值
"far": 1, //最远距离值
"farValue": 0 //最远距离值
}, //根据距离设置比例
"distanceDisplayCondition": {
"near": 0, //最近距离
"far": Number.MAX_VALUE //最远距离
}, //根据距离设置可见
"disableDepthTestDistance": 0 // 深度检测距离,用于防止剪切地形,设置为零时,将始终应用深度测试。设置为Number.POSITIVE_INFINITY时,永远不会应用深度测试。
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24