ElementMoveAction
构件动作,复制并对构件的位置进行改变。
来源于@ksj/frontend-script;
| 接口 | 说明 |
|---|---|
| uninit | 脚本动作释放接口,当事件释放的时候,通过该接口释放响应的资源。 |
| run | 动作执行接口,脚本控制器通过该接口执行动作。 |
| init | 动作初始化,设置动作参数。 |
# 1. uninit
动作释放接口,本动作描述不存在资源释放。
public async uninit()
参数:
无。
返回:
无。
# 2. run
动作执行接口。
public run( oldTime:number, nowTime:number )
参数:
oldTime: 上一次执行动作的脚本时间,单位毫秒。
nowTime: 本次对应的脚本时间,单位毫秒。
返回:
无。
# 3. init
动作初始化。
async init( ids:string[], data: any)
参数:
ids: 要操作的构件的id的数组。
data: 时间及位置点的数组。{ time:number, pos:Point3d }
time: 对应的脚本时间,单位毫秒。
pos: 移动基准点及目标点,数组第一个点对应的为基准点,后续点为基准点对应的新位置点。
返回:
无。
示例:
var d2 = new Array();
d2.push( {time:0, pos:new Point3d( -35, -23, 319 ) } ); // 首点为移动基准点。
d2.push( {time:1000, pos:new Point3d( -15, -23, 319 ) } );
d2.push( {time:2000, pos:new Point3d( -15, -13, 319 ) } );
d2.push( {time:3000, pos:new Point3d( -15, -13, 309 ) } );
d2.push( {time:4000, pos:new Point3d( -55, -13, 339 ) } );
var action2 = new ElementMoveAction();
await action2.init( ["0x863"], d2 ); // 初始化指定 构件ID数组和时间位置数组。
ScriptControl.addAction( action2 );