Class: View

csview~ View


new View(options)

视图,负责地图的初始化、调度、管理等功能,是地图的最核心部分。
Parameters:
Name Type Description
options Object
Properties
Name Type Argument Default Description
target HTMLElement | string 视图所在的容器
name string <optional>
'三维视图' 视图名称
layers Array.<module:csview.Layer> <optional>
初始视图的时候,需要加载的图层
terrainUrl string <optional>
地图高程数据
Fires:
  • event:Loaded
Example
var csView = new sg.csview.View({
    target: 'map3d',
    layer: new sg.csimage.GeoqTileLayer({
         name: 'google地图影像',
         url: 'https://mt0.google.cn/vt/lyrs=s&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}'
    })
});

Extends

Methods


getName()

获取视图名称

setName(value)

设置视图名称
Parameters:
Name Type Description
value string 视图名称

getViewer()

获取cesium的viewer

getCamera()

获取视图的相机
See:
Example
var camera = csView.getCamera();
camera.goToXYZ(110,30,1000,0,30,10000,5);

getTerrainUrl()

获取三维地图的高程地址

setTerrainUrl(terrainUrl)

设置三维地图的高程
Parameters:
Name Type Description
terrainUrl string 高程地址

getRootLayer()

获取视图的根图层(组)

addLayer(layer)

添加图层
Parameters:
Name Type Description
layer module:csview.Layer 图层对象,有各种影像图层,矢量图层,态势符号图层、动目标图层等

removeLayer(layer)

移除图层
Parameters:
Name Type Description
layer module:csview.Layer 图层对象

removeLayers()

移除所有图层

getLayers()

获取所有图层

getLayerByName(value)

根据图层名称获取图层对象
Parameters:
Name Type Description
value String 图层名称

removeLayerByName(value)

根据图层名称移除图层对象
Parameters:
Name Type Description
value String 图层名称

moveLayer(layer, newIndex)

将指定图层对象移动到新的位置
Parameters:
Name Type Description
layer module:csview.Layer 图层对象
newIndex Number 索引号

getLayerIndex(layer)

根据图层对象获取该图层所在索引号
Parameters:
Name Type Description
layer module:csview.Layer 图层对象

createPopup(position, content)

创建标牌
Parameters:
Name Type Description
position Cartesian3 ECEF坐标
content string 标牌内容,支持html格式和样式
Example
var position = Cesium.Cartesian3.fromDegrees(114,30);
var popup = csView.createPopup(position, '这是一个标牌');

createPopupDetailed(options)

创建标牌
Parameters:
Name Type Description
options Object
Properties
Name Type Argument Default Description
position Cartesian3 ECEF坐标
content string <optional>
'标牌' 标牌内容,支持html格式和样式
offset Array.<number> <optional>
[20, 0] 标牌偏移位置
element HTMLElement <optional>
标牌内容的容器
leadlineColor string <optional>
'cyan' 标牌牵引线的颜色
leadlineWidth number <optional>
2.0 标牌牵引线的宽度
leadlineDash Cesium.Cartesian2 <optional>
new Cesium.Cartesian2(2.0, 8.0) 标牌牵引线的虚线样式
lock boolean <optional>
false 是否锁定标牌,锁定的标牌不能通过鼠标移动
Example
var position = Cesium.Cartesian3.fromDegrees(114,30);
var content = '这是一个标牌';
var offset = [0, -40];
var element = document.createElement('div');
var leadlineColor = 'yellow';
var lock = true;
var options = {
    position,
    content,
    offset,
    element,
    leadlineColor,
    lock
}
var popup = csView.createPopupDetailed(options);

removePopup(popup)

移除标牌
Parameters:
Name Type Description
popup module:csview.Popup

removePopups()

移除所有标牌

addHandler(handler)

添加处理器
Parameters:
Name Type Description
handler module:csview.Handler

removeHandler(handler)

移除处理器
Parameters:
Name Type Description
handler module:csview.Handler

removeHandlers()

移除所有的处理器

getHandlers()

获取所有的处理器

setHandlers(handlers)

设置当前处理器或者处理器数组,每次设置会移除已有的处理器
Parameters:
Name Type Description
handlers module:csview.Handler | Array.<module:csview.Handler>

pick(pixel [, hitTolerance])

根据屏幕位置获取在该屏幕位置的最顶层的对象
Parameters:
Name Type Argument Default Description
pixel Pixel 屏幕坐标[x, y],比如 [200,100]
hitTolerance Number <optional>
10 像素容差,点选时候的像素容差
Returns:
对象
Type
Object

drillPick(pixel [, hitTolerance])

根据屏幕位置获取在该屏幕位置的所有对象
Parameters:
Name Type Argument Default Description
pixel Pixel 屏幕坐标[x, y],比如 [200,100]
hitTolerance Number <optional>
10 像素容差,点选时候的像素容差
Returns:
对象数组
Type
Array.<Object>

pickPosition(pixel)

根据屏幕位置获取在该屏幕位置的ECEF坐标,如果当前位置有模型或者其他图形,会返回该图形上的坐标, 如果想要获取地表坐标,请参考 module:csview.View#pickGlobePosition
Parameters:
Name Type Description
pixel Pixel 屏幕坐标[x, y],比如 [200,100]
Returns:
Type
Cartesian3

pickGlobePosition(pixel)

根据屏幕位置获取在该屏幕位置的ECEF坐标,只会返回地表上的坐标, 如果想要获取图形上的坐标,请参考 module:csview.View#pickPosition
Parameters:
Name Type Description
pixel Pixel 屏幕坐标[x, y],比如 [200,100]
Returns:
Type
Cartesian3

getGlobeDepthTest()

获取当前三维地图是否开启地形深度检测

setGlobeDepthTest(flag)

设置三维地图是否开启地形深度检测
Parameters:
Name Type Description
flag boolean 是否开启地形深度检测

getLogDepthBuffer()

获取三维地图是否开启对数深度

setLogDepthBuffer(flag)

设置三维地图是否开启对数深度
Parameters:
Name Type Description
flag boolean 是否开启对数深度

toJson()

导出为json字符串

<static> fromJson(jsonObject, options)

从json对象中构造视图
Parameters:
Name Type Description
jsonObject Object json对象,保存的是视图对象
options Object
Properties
Name Type Argument Description
target HTMLElement | String 视图所在的容器
loadedCallback callback | function <optional>
视图初始化后的回调函数
Returns:
Type
module:csview.View

<static> copy(object, newOptions)

拷贝视图对象,构造新的视图
Parameters:
Name Type Description
object module:csview.View 视图对象
newOptions Object
Properties
Name Type Argument Description
target HTMLElement | String 视图所在的容器
loadedCallback callback | function <optional>
视图初始化后的回调函数
Returns:
Type
module:csview.View

destroy()

销毁视图
Overrides:

dispatchEvent(event)

发送事件消息,每个事件消息都有类型(type),所有监听此对象对应类型事件的监听者都会接收到相应的事件消息
Parameters:
Name Type Description
event string | module:events.Event 事件对象
Inherited From:
Overrides:

on(type, listener [, opt_this])

指定监听器监听指定类型的事件
Parameters:
Name Type Argument Default Description
type string 事件类型
listener callback | function 监听器
opt_this Object <optional>
target 在监听器中的`this`所指示的对象,默认是`target`自身
Inherited From:
Overrides:
Returns:
监听器的唯一标识.
Type
Object

once(type, listener [, opt_this])

指定监听器只监听一次指定类型的事件
Parameters:
Name Type Argument Default Description
type string 事件类型
listener callback | function 监听器
opt_this Object <optional>
target 在监听器中的`this`所指示的对象,默认是`target`自身
Inherited From:
Overrides:
Returns:
监听器的唯一标识.
Type
Object

un(type, listener [, opt_this])

取消指定监听器监听指定类型的事件
Parameters:
Name Type Argument Default Description
type string 事件类型
listener callback | function 监听器
opt_this Object <optional>
target 在监听器中的`this`所指示的对象,默认是`target`自身
Inherited From:
Overrides:

unByKey(key)

根据监听器的唯一标识取消指定监听器监听事件,监听器的唯一标识通过`on()`或者`once()`返回得到
Parameters:
Name Type Description
key Object | Array.<Object> 监听器的唯一标识,通过`on()`或者`once()`返回得到,可以是多个监听器的唯一标识数组
Inherited From:
Overrides: