矢量数据图层 Base基类
参数名称 | 类型 | 描述信息 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
可选
参数对象,包括以下:
|
参考:
继承
成员(属性)
指定时间范围内显示该对象 [提示:仅部分子类实现,非所有对象都支持]
- 继承自:
使用示例:
// 普通传值方式,多个【建议】
layer.availability = [
{ start: "2017-08-25 08:00:00", stop: "2017-08-25 08:01:20", isStartIncluded: true, isStopIncluded: false },
{ start: "2017-08-25 09:00:00", duration: 10 } //支持不配置stop,直接配置duration秒数时长
]
// 也支持相对时间的 秒数 传值(相对于map.clock.startTime)
layer.availability = [
{ start: 0, stop: 10, isStartIncluded: true, isStopIncluded: false },
{ start:30, duration: 10 } //支持不配置stop,直接配置duration秒数时长
]
// 普通传值方式,单个
layer.availability = { start: "2017-08-25 08:00:00", stop: "2017-08-25 08:01:20", isStartIncluded: true, isStopIncluded: false }
// cesium原生写法, 多个
layer.availability = new Cesium.TimeIntervalCollection([
new Cesium.TimeInterval({
start: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:00")),
stop: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:20")),
isStartIncluded: true,
isStopIncluded: false
}),
])
// cesium原生写法,单个
layer.availability = new Cesium.TimeInterval({
start: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:00")),
stop: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:20")),
isStartIncluded: true,
isStopIncluded: false
})
是否可以调整透明度
- 继承自:
对象的id标识
- 继承自:
是否已添加到地图
- 继承自:
是否已经销毁了
- 继承自:
是否Mars3D内部的私有对象,如标绘拖拽点等
- 继承自:
名称
- 继承自:
透明度,取值范围:0.0-1.0
- 继承自:
对象的pid标识
- 继承自:
readonly readyPromise : Promise.<(BaseLayer|object)>
layer/BaseLayer.js 188
获取图层完成解析加载完成的Promise承诺, 等价于load事件(区别在于load事件必须在load完成前绑定才能监听)。
- 继承自:
使用示例:
tiles3dLayer.readyPromise.then(function(layer) {
console.log("load完成", layer)
})
显示隐藏状态
- 继承自:
readonly state : State
layer/BaseLayer.js 143
当前对象的状态
- 继承自:
图层中统一的url模版,比如可以将服务url前缀统一使用模板,方便修改或动态配置。
图层类型
- 继承自:
方法
对象添加到地图前创建一些对象的钩子方法, 只会调用一次
返回值:
无
addTo(map) → BaseLayer
layer/BaseLayer.js 406
添加到地图上,同 map.addThing
参数名称 | 类型 | 描述信息 |
---|---|---|
map |
Map |
地图对象 |
返回值:
当前对象本身,可以链式调用
- 继承自:
bindContextMenu(content, options) → BaseGraphicLayer
layer/BaseGraphicLayer.js 465
绑定右键菜单
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
content |
Array.<object> |
右键菜单配置数组,数组中每一项包括:
|
|||||||||||||||||||
options |
object |
{}
|
可选
控制参数
|
返回值:
当前对象本身,可以链式调用
使用示例:
//在layer上绑定右键菜单
graphicLayer.bindContextMenu([
{
text: '删除对象',
icon: 'fa fa-trash-o',
callback: function (e) {
let graphic = e.graphic
if (graphic) {
graphicLayer.removeGraphic(graphic)
}
},
},
{
text: '计算长度',
icon: 'fa fa-medium',
show: function (e) {
let graphic = e.graphic
return graphic.type === 'polyline'
},
callback: function (e) {
let graphic = e.graphic
let strDis = mars3d.MeasureUtil.formatDistance(graphic.distance)
alert('该对象的长度为:' + strDis)
},
},
])
绑定鼠标移入或单击后的 对象高亮
参数名称 | 类型 | 描述信息 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
可选
参数:
|
返回值:
无
bindPopup(content, options) → BaseGraphicLayer
layer/BaseGraphicLayer.js 253
绑定鼠标单击对象后的弹窗。
参数名称 | 类型 | 描述信息 |
---|---|---|
content |
string | function |
弹窗内容html字符串,或者回调方法。 |
options |
Popup.StyleOptions |
可选
控制参数 |
返回值:
当前对象本身,可以链式调用
bindTooltip(content, options) → BaseGraphicLayer
layer/BaseGraphicLayer.js 334
绑定鼠标移入的弹窗
参数名称 | 类型 | 描述信息 |
---|---|---|
content |
string | function |
弹窗内容html字符串,或者回调方法。 |
options |
Tooltip.StyleOptions |
可选
控制参数 |
返回值:
当前对象本身,可以链式调用
closeContextMenu() → BaseGraphicLayer
layer/BaseGraphicLayer.js 513
关闭右键菜单
返回值:
当前对象本身,可以链式调用
清除已高亮的矢量对象
返回值:
无
closePopup() → BaseGraphicLayer
layer/BaseGraphicLayer.js 298
关闭弹窗
返回值:
当前对象本身,可以链式调用
closeSmallTooltip() → BaseGraphicLayer
layer/BaseGraphicLayer.js 542
关闭小提示窗
返回值:
当前对象本身,可以链式调用
closeTooltip() → BaseGraphicLayer
layer/BaseGraphicLayer.js 383
关闭弹窗
返回值:
当前对象本身,可以链式调用
飞行定位至图层数据所在的视角
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
如果飞行成功则解析为true的承诺,如果当前未在场景中可视化目标或取消飞行,则为false的Promise
- 继承自:
获取时间范围的简单对象数组(转为相对map.clock.startTime的相对数字)
返回值:
时间对象列表
获取指定时间下的时序对应的 显示隐藏 状态
参数名称 | 类型 | 描述信息 |
---|---|---|
time |
Cesium.JulianDate |
指定时间 |
返回值:
显示隐藏 状态
获取绑定的右键菜单数组
返回值:
右键菜单数组
获取当前对象真实实际的显示状态
参数名称 | 类型 | 描述信息 |
---|---|---|
time |
Cesium.JulianDate |
当前时间 |
返回值:
真实的实时显示状态,当时序范围外,被聚合时返回的是false
是否有绑定的右键菜单
返回值:
是否有绑定
是否存在Popup绑定,判断图层及内部所有矢量数据
返回值:
是否存在Popup绑定
是否绑定了tooltip
返回值:
是否绑定
openContextMenu(position) → BaseGraphicLayer
layer/BaseGraphicLayer.js 497
打开右键菜单
参数名称 | 类型 | 描述信息 |
---|---|---|
position |
BaseGraphic | Cesium.Cartesian3 |
矢量对象 或 显示的位置 |
返回值:
当前对象本身,可以链式调用
高亮对象
参数名称 | 类型 | 描述信息 |
---|---|---|
graphic |
BaseGraphic |
高亮的矢量对,类型支持 |
event |
object |
可选
事件对象 |
返回值:
无
openPopup(position) → BaseGraphicLayer
layer/BaseGraphicLayer.js 284
打开绑定的弹窗
参数名称 | 类型 | 描述信息 |
---|---|---|
position |
BaseGraphic | LngLatPoint | Cesium.Cartesian3 |
矢量对象 或 显示的位置 |
返回值:
当前对象本身,可以链式调用
openSmallTooltip(position, message) → BaseGraphicLayer
layer/BaseGraphicLayer.js 530
显示小提示窗,一般用于鼠标操作的提示。
参数名称 | 类型 | 描述信息 |
---|---|---|
position |
Cesium.Cartesian2 | Cesium.Cartesian3 |
显示的屏幕坐标位置 或 笛卡尔坐标位置 |
message |
* |
显示的内容 |
返回值:
当前对象本身,可以链式调用
openTooltip(position) → BaseGraphicLayer
layer/BaseGraphicLayer.js 367
打开绑定的tooltip弹窗
参数名称 | 类型 | 描述信息 |
---|---|---|
position |
BaseGraphic | LngLatPoint | Cesium.Cartesian3 |
graphic矢量对象 或 显示的位置 |
返回值:
当前对象本身,可以链式调用
从地图上移除,同map.removeThing
参数名称 | 类型 | 描述信息 |
---|---|---|
destroy |
boolean |
可选
是否调用destroy释放 |
返回值:
无
- 继承自:
setOptions(options, funOptions) → BaseLayer
layer/BaseLayer.js 641
更新图层参数
参数名称 | 类型 | 描述信息 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
options |
object |
与类的构造方法参数相同 |
||||||||
funOptions |
object |
可选
方法参数
|
返回值:
当前对象本身,可以链式调用
- 继承自:
将图层转为Json简单对象,用于存储后再传参加载
返回值:
Json简单对象
- 继承自:
unbindContextMenu(bubbling) → BaseGraphicLayer
layer/BaseGraphicLayer.js 480
解除绑定的右键菜单
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
bubbling |
boolean |
false
|
可选
单击事件中是否继续冒泡查找 |
返回值:
当前对象本身,可以链式调用
解绑鼠标移入或单击后的高亮处理
返回值:
无
unbindPopup(bubbling) → BaseGraphicLayer
layer/BaseGraphicLayer.js 268
解除绑定的鼠标单击对象后的弹窗。
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
bubbling |
boolean |
false
|
可选
单击事件中是否继续冒泡查找 |
返回值:
当前对象本身,可以链式调用
unbindTooltip(bubbling) → BaseGraphicLayer
layer/BaseGraphicLayer.js 350
解除绑定的鼠标移入对象后的弹窗。
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
bubbling |
boolean |
false
|
可选
单击事件中是否继续冒泡查找 |
返回值:
当前对象本身,可以链式调用
定义的类型
图层类支持的EventType
事件类型
属性:
属性名称 | 类型 | 描述信息 |
---|---|---|
add |
string | 添加对象 |
remove |
string | 移除对象 |
show |
string | 显示了对象 |
hide |
string | 隐藏了对象 |
click |
string | 左键单击 鼠标事件 |
rightClick |
string | 右键单击 鼠标事件 |
mouseOver |
string | 鼠标移入 鼠标事件 |
mouseOut |
string | 鼠标移出 鼠标事件 |
popupOpen |
string | popup弹窗打开后 |
popupClose |
string | popup弹窗关闭 |
tooltipOpen |
string | tooltip弹窗打开后 |
tooltipClose |
string | tooltip弹窗关闭 |
使用示例:
//绑定监听事件
layer.on(mars3d.EventType.click, function (event) {
console.log('单击了矢量数据对象', event)
})