Camera
Ploy3D • Docs
Ploy3D / Camera
Class: Camera
相机组件实例。
Extends
Constructors
new Camera()
new Camera(
impl,ptr,id):Camera
构造函数。
Parameters
• impl: Camera_kernel
内核实现。
• ptr: never
内核实例指针。
• id: number
实例ID。
Returns
Overrides
Accessors
cullingFilter
getcullingFilter():number
裁剪过滤,被标记的层不会被视锥裁剪。
setcullingFilter(value):void
Parameters
• value: number
Returns
number
depth
getdepth():number
相机渲染排序(数值越高越优先渲染,最大值视为主相机)。
setdepth(value):void
Parameters
• value: number
Returns
number
distance
getdistance():number
相机距观察目标距离(用于脱离变换组件控制相机姿态)。
setdistance(value):void
Parameters
• value: number
Returns
number
enabled
getenabled():boolean
是否启用组件。
setenabled(value):void
Parameters
• value: boolean
Returns
boolean
farZ
getfarZ():number
远平面距离(用于计算相机投影矩阵)。
setfarZ(value):void
Parameters
• value: number
Returns
number
fov
getfov():number
垂直视角(弧度,用于计算相机投影矩阵)。
setfov(value):void
Parameters
• value: number
Returns
number
height
getheight():number
画布高度(用于计算相机投影矩阵)。
setheight(value):void
Parameters
• value: number
Returns
number
id
getid():number
实例ID。
Returns
number
Inherited from
internalPtr
getinternalPtr():never
内核实例指针。
Returns
never
Inherited from
nearZ
getnearZ():number
近平面距离(用于计算相机投影矩阵)。
setnearZ(value):void
Parameters
• value: number
Returns
number
pitch
getpitch():number
相机俯角(角度,用于脱离变换组件控制相机姿态)。
setpitch(value):void
Parameters
• value: number
Returns
number
readTS
getreadTS():number
相机参数应用时间戳(传递到GPU的时间戳)。
setreadTS(value):void
Parameters
• value: number
Returns
number
roll
getroll():number
相机翻滚角(角度,用于脱离变换组件控制相机姿态)。
setroll(value):void
Parameters
• value: number
Returns
number
target
gettarget():Float32Array
观察目标世界空间坐标(用于脱离变换组件控制相机姿态)。
settarget(value):void
Parameters
• value: ArrayLike<number>
Returns
Float32Array
transformCtrl
gettransformCtrl():boolean
是否由所依附对象变换组件控制相机姿态。
settransformCtrl(value):void
Parameters
• value: boolean
Returns
boolean
type
gettype():number
相机类型(0-透视投影相机、1-正交投影相机)。
Returns
number
updated
getupdated():boolean
相机参数是否有更新。
setupdated(value):void
Parameters
• value: boolean
Returns
boolean
wdirection
getwdirection():Vector3
世界空间观察向量。
Returns
width
getwidth():number
画布宽度(用于计算相机投影矩阵)。
setwidth(value):void
Parameters
• value: number
Returns
number
wposition
getwposition():Vector3
世界空间坐标。
Returns
writeTS
getwriteTS():number
相机参数更新时间戳(计算各个变换矩阵的时间戳)。
setwriteTS(value):void
Parameters
• value: number
Returns
number
yaw
getyaw():number
相机偏航角(角度,用于脱离变换组件控制相机姿态)。
setyaw(value):void
Parameters
• value: number
Returns
number
Methods
Fit()
Fit(
bounding,pitch?,yaw?):void
使相机姿态适应观察内容范围。
Parameters
• bounding
观察内容范围。
• bounding.center: number[]
• bounding.extents?: number[]
• pitch?: number
• yaw?: number
Returns
void
GetMatrix()
GetMatrix(
key):Matrix4x4
获取相机相关变换矩阵。
Parameters
• key: "vfgMat" | "gfvMat" | "cfvMat" | "vfcMat" | "cfgMat" | "gfcMat" | "gfwMat" | "wfgMat" | "uvfvMat" | "last_uvfvMat" | "lastcfwMat" | "cullingMat"
变换矩阵名称。
Returns
返回矩阵数据。
Move()
Move(
offsetX,offsetY,width,height):void
相机平移控制方法。
Parameters
• offsetX: number
光标横向平移像素数。
• offsetY: number
光标纵向平移像素数。
• width: number
事件源元素宽度。
• height: number
事件源元素高度。
Returns
void
Reset()
Reset():
void
重置相机基本状态。
Returns
void
Rotate()
Rotate(
offsetX,offsetY,width,height):void
相机旋转控制方法。
Parameters
• offsetX: number
光标横向平移像素数。
• offsetY: number
光标纵向平移像素数。
• width: number
事件源元素宽度。
• height: number
事件源元素高度。
Returns
void
Scale()
Scale(
delta,width,height):void
相机推拉控制方法。
Parameters
• delta: number
滚轮方向。
• width: number
事件源元素宽度。
• height: number
事件源元素高度。
Returns
void
ScreenPointToRay()
ScreenPointToRay(
x,y):object
屏幕空间坐标[0, 1]转世界空间射线。
Parameters
• x: number
屏幕空间坐标X[0,1]。
• y: number
屏幕空间坐标Y[0,1]。
Returns
object
返回世界空间射线起点和方向。
dir
dir:
Vector3
origin
origin:
Vector3
Set3D()
Set3D(
target?,distance?,pitch?,yaw?):void
设置相机姿态。
Parameters
• target?: ArrayLike<number>
观察目标坐标(世界空间)。
• distance?: number
距观察目标距离。
• pitch?: number
相机俯角。
• yaw?: number
相机偏航角。
Returns
void
WorldToScreen()
WorldToScreen(
wpos):number[]
世界坐标转相机屏幕坐标。
Parameters
• wpos: number[]
世界坐标
Returns
number[]
返回屏幕坐标。