Class: VideoProjection

VideoProjection

VideoProjection类,提供视频投影对象相关的操作
一般通过api.videoProjection调用其方法

VideoProjection的效果图:


<protected> new VideoProjection()

See:

Extends

Methods


add(data, fn)

添加一个或多个VideoProjection对象

Parameters:
Name Type Description
data object | array

数据结构,支持对象或数组,对于每一个对象支持以下属性:

  • id (string) 字符串类型的ID

  • groupId (string) 可选,Group分组

  • userData (string) 可选,用户自定义数据

  • videoURL (string) 视频地址,支持本地文件和网络文件,同时支持rtsp协议、http协议等实时流媒体地址

  • location (array) 位置坐标:[X,Y,Z],取值示例,数组元素类型:(number),取值范围:[任意数值]

  • rotation (array) 旋转:[Pitch,Yaw,Roll],数组元素类型:(number),取值范围:[任意数值],注意:Roll目前全局禁用,参数无效。

  • fov (number) 垂直夹角,取值范围:[0~160],单位:度

  • aspectRatio (number) 纵横比,取值范围:[0.1~10.0]

  • distance (number) 投影距离,取值范围:[0~1000000.0],单位:米

  • minDistance (number) 近裁距离,取值范围:[0~1000000.0],单位:米

  • depthCulling (boolean) 是否背面剔除,默认值:false

  • frustumVisible (boolean) 是否显示投影线框,默认值:false

  • frustumColor (Color) 投影线框颜色,支持四种格式,取值示例

  • texturePath (string) 自定义投影蒙版图片路径,可以是本地路径,也支持网络路径,资源引入说明

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


clear(fn)

删除场景中所有的VideoProjection对象

Parameters:
Name Type Description
fn function

可选的回调函数,请参考二次开发:异步接口调用方式


delete(ids, fn)

删除一个或多个VideoProjection对象

Parameters:
Name Type Description
ids string | array

要删除的VideoProjection对象的ID或者ID数组(可以删除一个或者多个)

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


focus(ids, distance, flyTime, rotation, fn)

自动定位到合适的观察距离

Parameters:
Name Type Description
ids string | array

VideoProjection对象的ID或者ID数组

distance number

可选参数,观察点距离目标点(被拍摄物体)的距离,取值范围:[0.01~任意正数],如果设置为0或者不设置,系统自动计算

flyTime number

可选参数,相机飞行的时间,取值范围:[0~任意正数],单位:秒,默认值2秒

rotation array

可选参数,相机旋转的欧拉角:[Pitch,Yaw,Roll],数组元素类型:(number),取值范围:Pitch[-90~90] Yaw[-180~180] Roll[0]

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


get(ids, fn)

根据ID获取VideoProjection的详细信息

Parameters:
Name Type Description
ids string | array

要获取的VideoProjection对象ID或者ID数组(可以获取一个或者多个)

fn function

可选的回调函数,请参考二次开发:异步接口调用方式

Example
VideoProjection的详细信息
[{
            "id":	"vp1",
            "groupId":	"",
            "videoURL":	"C:\\Users\\Administrator\\AppData\\Roaming\\Cloud\\SDK/media/video/video2.mov",
            "mediaType":	153,
            "location":	[495333.593750, 2490901.000000, 20.000000],
            "rotation":	[-49.999992, 0.000000, 0.000000],
            "fov":	90.000000,
            "aspectRatio":	1.770000,
            "distance":	100.000000,
            "depthCulling":	1,
            "frustumColor":	[0.000000, 0.000000, 1.000000, 1.000000]
        }]

hide(ids, fn)

隐藏VideoProjection

Parameters:
Name Type Description
ids string | array

VideoProjection对象的ID或者ID数组

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setAspectRatio(id, newVal, fn)

设置纵横比

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal number

新纵横比,取值范围:[0.1~10.0]

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setDepthCulling(id, newVal, fn)

设置是否背面剔除

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal boolean

是否背面剔除,默认值:false

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setDistance(id, newVal, fn)

设置距离

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal number

新距离值,取值范围:[0~1000000.0],单位:米

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setFovy(id, newVal, fn)

设置垂直夹角

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal number

新垂直夹角,取值范围:[0~160],单位:度

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setFrustumColor(id, newVal, fn)

设置投影线框颜色

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal Color

新颜色值,支持四种格式,取值示例

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setLocation(id, newVal, fn)

设置位置

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal array

新位置坐标:[X,Y,Z],取值示例,数组元素类型:(number),取值范围:[任意数值]

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setRotation(id, newVal, fn)

设置旋转值

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal array

新旋转值:[Pitch,Yaw,Roll],数组元素类型:(number),取值范围:[任意数值]

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


setVideoURL(id, newVal, fn)

设置视频地址

Parameters:
Name Type Description
id string

VideoProjection对象的ID

newVal string

新视频地址,支持本地文件和网络地址,同时支持rtsp实时视频流协议,注意:mp4文件视频只支持H264/AVC编码格式的

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


show(ids, fn)

显示VideoProjection

Parameters:
Name Type Description
ids string | array

VideoProjection对象的ID或者ID数组

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


update(data, fn)

修改一个或多个VideoProjection对象

Parameters:
Name Type Description
data object | array

数据结构,请参考add方法

fn function

可选的回调函数,请参考二次开发:异步接口调用方式


updateBegin()

用于批量多次修改对象的属性

在开始修改之前调用updateBegin,然后可以多次调用setXXX方法,最后调用updateEnd提交修改更新数据
注意:
updateBegin不是异步调用,不需要await,也没有回调函数参数

Inherited From:
Overrides:
Example
fdapi.xxx.updateBegin();
for (let i = 0; i < 1000; i++) {
     fdapi.xxx.setColor(i, Color.Yellow);
} 
fdapi.xxx.updateEnd(function () {
     log('update finished!');
});

updateEnd(fn)

用于批量多次修改对象的属性,与updateBegin配套使用
注意:
updateEnd是异步调用,可以用回调函数也可以await

Parameters:
Name Type Description
fn function

可选的回调函数,请参考二次开发:异步接口调用方式

Inherited From:
Overrides: