方法
定位到对象
调用方法:
sgworld.Navigate.flyTo(entity)
参数描述:
名称 |
类型 |
描述 |
target |
Entity
|
Array.<Entity>
|
EntityCollection
|
DataSource
|
ImageryLayer
|
Cesium3DTileset
|
TimeDynamicPointCloud
|
Promise.<(Entity|Array.<Entity>|EntityCollection|DataSource|ImageryLayer|Cesium3DTileset|TimeDynamicPointCloud)>
|
Cesium原生地图对象 |
options |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
time |
Number
|
3.0
|
可选
飞行时间 |
maxHeight |
Number
|
|
可选
飞行时的最大高度 |
heading |
Number
|
0
|
可选
水平角 |
pitch |
Number
|
-45
|
可选
俯仰角 |
range |
Number
|
|
可选
距离 |
|
定位到对象
调用方法:
sgworld.Navigate.flyToObj(sdkObject)
参数描述:
名称 |
类型 |
描述 |
obj |
SDKObject
|
sdk地图对象 |
飞向兴趣点
调用方法:
sgworld.Navigate.flyToPointsInterest({
destination: new Cesium.Cartesian3.fromDegrees(110, 32, 8000000),
orientation: {
heading: 5.872721681579488,
pitch: -0.5778040134280382,
roll: 0.0
}
})
参数描述:
名称 |
类型 |
描述 |
option |
Object
|
参数
名称 |
类型 |
描述 |
destination |
Cartesian3
|
坐标 |
orientation |
Object
|
可选
方向 |
duration |
Number
|
可选
时间 |
|
fnc |
function
|
飞行结束回调函数 |
定位到坐标
调用方法:
sgworld.Navigate.flyToPosition(120, 30, 1000)
或
sgworld.Navigate.flyToPosition(120, 30, 1000, {
heading: 0,
pitch: -90,
roll: 0,
})
参数描述:
名称 |
类型 |
描述 |
x |
Number
|
经度 |
y |
Number
|
纬度 |
z |
Number
|
高度 |
option |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
heading |
Number
|
0
|
可选
航向角 |
pitch |
Number
|
-90
|
可选
俯仰角 |
roll |
Number
|
0
|
可选
翻滚角 |
time |
Number
|
3
|
可选
飞行时间 |
|
获取相机参数
调用方法:
sgworld.Navigate.getCameraInfo(data => {
console.log(data)
})
或
data = sgworld.Navigate.getCameraInfo()
获取当前摄像机的经纬度
调用方法:
let degrees = sgworld.Navigate.getDegrees()
返回:
获取鼠标当前经纬度
调用方法:
let degrees = sgworld.Navigate.getMouseDegrees(movement);
参数描述:
名称 |
类型 |
描述 |
movement |
object
|
可选
鼠标屏幕位置 |
objectsToExclude |
Array/Object
|
可选
排除的实体对象 |
返回:
获取鼠标当前三维笛卡尔坐标
调用方法:
let position = sgworld.Navigate.getMousePosition(movement);
参数描述:
名称 |
类型 |
描述 |
movement |
object
|
可选
鼠标屏幕位置 |
objectsToExclude |
Array/Object
|
可选
排除的实体对象 |
返回:
获取当前摄像机的三维笛卡尔坐标
调用方法:
let position = sgworld.Navigate.getPosition()
返回:
绕地球旋转一周
调用方法:
sgworld.Navigate.globalRotate();
参数描述:
名称 |
类型 |
描述 |
option |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
startPosition |
Cartesian3
|
|
可选
起点 |
angle |
Number
|
3
|
可选
间隔角度 |
|
callBack |
function
|
可选
回调函数 |
这个方法用于视点跳转到一个对象/位置
调用方法:
sgworld.Navigate.jumpTo(sdkObject)
参数描述:
名称 |
类型 |
描述 |
obj |
SDKObject
|
sdk地图对象 |
跳转到坐标
调用方法:
sgworld.Navigate.jumpToPosition(120, 30, 1000)
或
sgworld.Navigate.jumpToPosition(120, 30, 1000, {
heading: 0,
pitch: -90,
roll: 0,
})
参数描述:
名称 |
类型 |
描述 |
x |
Number
|
经度 |
y |
Number
|
纬度 |
z |
Number
|
高度 |
option |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
heading |
Number
|
0
|
可选
航向角 |
pitch |
Number
|
-90
|
可选
俯仰角 |
roll |
Number
|
0
|
可选
翻滚角 |
time |
Number
|
3
|
可选
飞行时间 |
|
指北
调用方法:
sgworld.Navigate.northfinger()
围绕视图中心旋转
渲染效果:
调用方法:
sgworld.Navigate.rotateCenter(360, 5);
参数描述:
名称 |
类型 |
默认值 |
描述 |
degrees |
Number
|
360
|
可选
旋转角度,顺时针为正,逆时针为负 |
time |
Number
|
5
|
可选
旋转总用时 |
返回:
跳转到位置
调用方法:
sgworld.Navigate.setPosition(110, 30, 10)
参数描述:
名称 |
类型 |
描述 |
x |
Number
|
经度 |
y |
Number
|
纬度 |
z |
Number
|
高度 |
取消飞行
调用方法:
sgworld.Navigate.Stop()
放大视野
调用方法:
sgworld.Navigate.zoomIn()
缩小视野
调用方法:
sgworld.Navigate.zoomOut()