Camera

Camera

Camera 相机类,用于控制三维场景视角。
基类: OperationBase

Members

baseCenterHeight : number

中心点基准高度。缺省为0,可以指定为特定高度

baseEyeHeight : number

视点基准高度。如果指定,视点将不低于该高度

cameraAnimation : ICameraAnimation

相机动画

eyeDistance : number

视点到中心点距离

firstRoleDistance : number

设置切换第一人称和第三人称的eyeDistance距离,缺省50米

heading : number

水平方向角(度)

inertia : number

相机操作惯性系数(0-1.0),缺省0.9。如果为0, 则无自动延迟滑动等效果

isAdvanceRotateMode : boolean

是否使用鼠标右键点击即保持选择的功能,缺省true

isAllowFirstRole : boolean

是否允许近距离观察时自动切换到第一人称操作模式,缺省true

isLockCenter : boolean

是否锁定中心

maxHeading : number

最大方向角

maxPitch : number

最大俯仰角

minHeading : number

最小方向角(度)

minPitch : number

最小俯仰角(+-90度)

pitch : number

俯仰角

readonly center : Vector3

中心点

readonly coordSystem : ICoordSystem3

坐标系统

readonly eye : Vector3

视点

readonly isMoving : boolean

是否在移动

readonly isPanStarted : boolean

是否正在漫游操作

readonly renderContext : RenderContext3

绘制上下文

readonly up : Vector3

正上方向量

readonly worldCamera : IWorldCamera

世界坐标相机

readonly worldCenter : Vector3

世界坐标中心点

readonly worldEye : Vector3

世界坐标视点

speedRatio : number

相机基本移动速度乘数比例,缺省为1.0

walk : WalkSetting

控制行走模式的设置

Methods

flyRoute(points,totalMs,pitch) → Promise<Camera>

沿路径飞行
Name Type Description
points Vector3[] 路径点数组
totalMs number 总体毫秒数
pitch number optional指定固定俯仰角,如不指定则朝向飞行方向

flyTo(target,heading,pitch,baseCenterHeight,totalMs,delayMs) → Promise<Camera>

飞行到目标点或者范围,相机控制参数与setView相同
Name Type Description
target Vector3 | Vector2 | Rect 为Vector3时,x,y,z 分别是目标经度,中心点距离,目标纬度;Vector2时,xy是目标经度、纬度,使用当前eyeDistance;Rect时,缩放到目标矩形范围
heading number optional水平方向角,单位度,正北为0,顺时针为正
pitch number optional垂直方向角,单位度,垂直向下为-90
baseCenterHeight number optional中心点基准高度,通常是地形的高度。如果不指定有效值(0,null,undefine),会自动计算
totalMs number optional总体毫秒数
delayMs number optional延迟执行毫秒数

hasActiveAnimation() → boolean

是否有飞行动画

initViewport(viewportRect,fovRadian,nearPlane,farPlane)

设置视口信息,系统内部调用。
Name Type Description
viewportRect Rect
fovRadian number
nearPlane number
farPlane number

lookAround(headingRange,totalMs) → Promise<Camera>

相机在当前视点连续旋转水平视角观察
Name Type Description
headingRange number optional旋转角度,正北为0,逆时针为正,缺省-360度,即顺时针一周
totalMs number optional旋转的时间,缺省12秒

lookAt(eye,center,up)

使用视点,中心点,向上向量直接定义相机位置,坐标为地球坐标系。此函数一般用在比较高级的用户自定义相机操作。
Name Type Description
eye Vector3
center Vector3
up Vector3 optional

setNavigateRange(center,radius)

设置视点漫游的范围,如果设置此值,相机的移动被限制在此范围内
Name Type Description
center Vector3 中心点,经纬度
radius number 活动半径,米

setView(target,heading,pitch,baseCenterHeight)

使用中心点或者范围以及附加参数,设定相机视角
Name Type Description
target Vector3 | Vector2 | Rect 为Vector3时,x,y,z 分别是目标经度,中心点距离,目标纬度;Vector2时,xy是目标经度、纬度,使用当前eyeDistance;Rect时,缩放到目标矩形范围
heading number optional水平方向角,单位度,正北为0,顺时针为正
pitch number optional垂直方向角,单位度,垂直向下为-90
baseCenterHeight number optional中心点基准高度,通常是地形的高度。如果不指定,会自动计算

stopAnimation()

强制停止相机动画

zoomToLayer(layer) → Promise<Camera>

缩放到图层范围的视野
Name Type Description
layer Layer3 目标图层