Class: SplineMesh

SplineMesh

SplineMesh类,提供绘制路径模型对象相关的操作
一般通过api.splineMesh调用其方法


<protected> new SplineMesh()

See:
  • DigitalTwinAPI#SplineMesh

Extends

Methods


add(data, fn)

添加一个或多个SplineMesh对象,绘制路径模型

展示效果如下动图:

Parameters:
Name Type Description
data object | array

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

  • id (string) SplineMesh对象的ID

  • groupId (string) 可选,Group分组

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

  • coordinateType (number) 可选,坐标系类型,取值:0为Projection类型,1为WGS84类型,默认值:0

  • coordinates (array) 必选,路径模型的轨迹坐标数组,取值示例:取值示例

  • style (SplineMeshStyle) 可选(二选一),路径模型内置样式枚举,取值详情参考 SplineMeshStyle

  • meshPath (string) 可选(二选一),路径模型自定义样式的打包路径,注意:若传入此路径会自动覆盖style样式

  • range (array) 可选,可视范围: [近裁距离, 远裁距离],取值范围: [任意负值, 任意正值]

  • scale (number) 可选,路径模型的整体缩放,默认值:1

  • curveType (number) 可选,路径模型绘制时曲线的插值类型,取值范围:[0,1],默认值:0

  • segment (number) 可选,路径模型的绘制时曲线的插值的分段数量,默认值:10

fn function

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


callBPFunction(data, fn)

调用splineMesh对象包含的多个蓝图函数

Parameters:
Name Type Description
data object | array

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

  • id (string) CustomObject对象的ID

  • functionName (string) 蓝图函数名

  • parameters (array) 蓝图函数包含的多个参数,可选参数,数组类型,注意:传入多参数的顺序与类型务必与蓝图函数的参数顺序及其参数类型一致以保证执行结果符合预期。多个参数结构示例:[{"paramType":BPFuncParamType.String,"paramValue":"示例值"},{"paramType":BPFuncParamType.Bool,"paramValue":false},{"paramType":BPFuncParamType.Float,"paramValue":100.8}]

fn function

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


clear(fn)

清空场景中所有的SplineMesh对象

Parameters:
Name Type Description
fn function

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


delete(ids, fn)

删除一个或多个SplineMesh对象

Parameters:
Name Type Description
ids string | array

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

fn function

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


deleteByGroupId(groupId, fn)

根据分组ID删除SplineMesh

Parameters:
Name Type Description
groupId string

创建SplineMesh对象时指定的分组ID

fn function

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


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

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

Parameters:
Name Type Description
ids string | array

SplineMesh对象的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获取SplineMesh对象的详细信息

Parameters:
Name Type Description
ids string | array

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

fn function

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

Example
splineMesh对象的详细信息
[{
            "id":"vc1",
            "groupId": "car_main_road",
            "userData": "car_info"
        }]

getBPFunction(ids, fn)

根据splineMesh对象的id查询其包含的蓝图函数信息

Parameters:
Name Type Description
ids string | array

3D标注对象ID或者ID数组

fn function

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


hide(ids, fn)

隐藏一个或多个SplineMesh对象

Parameters:
Name Type Description
ids string | array

SplineMesh对象的ID或者ID数组

fn function

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


hideAll(fn)

隐藏所有SplineMesh对象

Parameters:
Name Type Description
fn function

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


hideByGroupId(groupId, fn)

根据分组ID隐藏SplineMesh

Parameters:
Name Type Description
groupId string

创建SplineMesh对象时指定的分组ID

fn function

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


show(ids, fn)

显示一个或多个SplineMesh对象

Parameters:
Name Type Description
ids string | array

SplineMesh对象的ID或者ID数组

fn function

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


showAll(fn)

显示所有SplineMesh对象

Parameters:
Name Type Description
fn function

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


showByGroupId(groupId, fn)

根据分组ID显示SplineMesh

Parameters:
Name Type Description
groupId string

创建SplineMesh对象时指定的分组ID

fn function

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


update(data, fn)

修改一个或多个SplineMesh对象

Parameters:
Name Type Description
data object | array

SplineMesh对象或者数组,支持更新以下属性:

  • id (string) 根据SplineMesh对象的ID更新以下属性

  • groupId (string) 可选,Group分组

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

  • coordinates (array) 路径模型的轨迹坐标数组,取值示例:取值示例

  • range (array) 可视范围: [近裁距离, 远裁距离],取值范围: [任意负值, 任意正值]

  • forwardAxis (number) 路径模型的轴朝向,取值范围:[0,1,2] 分别对应X、Y、Z三个轴

  • scale (number) 路径模型轴朝向的缩放值,默认值:1

  • style (SplineMeshStyle) 路径模型样式枚举,取值详情参考 SplineMeshStyle

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: