时序任务执行管理器
参数名称 | 类型 | 描述信息 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
可选
参数对象,包括以下:
|
继承
成员(属性)
总任务数
当前在执行的任务index顺序
当前时间秒数 (相当于map.clock.startTime的秒数)
总时长 秒数
设置对象的启用和禁用状态。
- 继承自:
设置事件的启用和禁用状态
对象的id标识
- 继承自:
是否已添加到地图
- 继承自:
是否已经销毁了
- 继承自:
readonly list : Array.<Task.ItemOptions>
thing/other/Task.js 94
任务列表
readonly listRun : Array.<TaskItem>
thing/other/Task.js 108
实例化后的任务对象列表
当前类的构造参数
- 继承自:
readonly state : State
core/BaseThing.js 56
当前对象的状态
- 继承自:
类型
- 继承自:
方法
static mars3d.thing.Task.getObjectList(list, that) → Array.<TaskItem>|Array.<object>
thing/other/Task.js 242
根据配置数组获取实例化后的对象数组
参数名称 | 类型 | 描述信息 |
---|---|---|
list |
Array.<Task.ItemOptions> | Array.<object> |
配置数组 |
that |
Task | Subtitles |
可选
控制器对象 |
返回值:
实例化后的对象数组
注册单个任务对象类
参数名称 | 类型 | 描述信息 |
---|---|---|
type |
string |
类型 |
thingClass |
TaskItem | object |
任务对象类,需要是继承 |
返回值:
无
对象添加到地图上的创建钩子方法, 每次add时都会调用
返回值:
无
- 继承自:
对象从地图上移除的创建钩子方法, 每次remove时都会调用
返回值:
无
addEventParent(obj) → BaseClass
core/BaseClass.js 307
添加抛出事件到父类,它将接收传播的事件
参数名称 | 类型 | 描述信息 |
---|---|---|
obj |
object |
父类对象 |
返回值:
当前对象本身,可以链式调用
addItem(item) → TaskItem
thing/other/Task.js 150
添加单个任务
参数名称 | 类型 | 描述信息 |
---|---|---|
item |
object |
单个任务参数 |
返回值:
任务对象
addTo(map) → BaseThing
core/BaseThing.js 118
添加到地图上,同 map.addThing
参数名称 | 类型 | 描述信息 |
---|---|---|
map |
Map |
地图对象 |
返回值:
当前对象本身,可以链式调用
- 继承自:
销毁当前对象
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
noDel |
boolean |
false
|
可选
false:会自动delete释放所有属性,true:不delete绑定的变量 |
返回值:
无
- 继承自:
fire(type, data, propagate) → BaseClass
core/BaseClass.js 203
触发指定类型的事件。
参数名称 | 类型 | 描述信息 |
---|---|---|
type |
EventType | string |
事件类型 |
data |
object |
可选
传输的数据或对象,可在事件回调方法中event对象中获取进行使用 |
propagate |
BaseClass |
可选
将事件传播给父类 (用addEventParent设置) |
返回值:
当前对象本身,可以链式调用
- 继承自:
getItemById(id) → TaskItem
thing/other/Task.js 135
根据id获取任务对象
参数名称 | 类型 | 描述信息 |
---|---|---|
id |
number | string |
id值 |
返回值:
任务对象
是否绑定了抛出事件到指定父类
参数名称 | 类型 | 描述信息 |
---|---|---|
obj |
object |
父类对象 |
返回值:
是否绑定了抛出事件
是否有绑定指定的事件
参数名称 | 类型 | 描述信息 |
---|---|---|
type |
EventType | string |
事件类型 |
propagate |
BaseClass |
可选
是否判断指定的父类 (用addEventParent设置的) |
返回值:
是否存在
- 继承自:
off(types, fn, context) → BaseClass
core/BaseClass.js 95
解除绑定指定类型事件监听器
参数名称 | 类型 | 描述信息 |
---|---|---|
types |
EventType | string | Array.<EventType> |
可选
事件类型,未传值时解绑所有事件 |
fn |
function |
可选
绑定的监听器回调方法,未传值时解绑所有指定类型对应事件,特殊说明:map.on监听的Cesium相关原生事件时必须传入该参数 |
context |
object |
可选
侦听器的上下文(this关键字将指向的对象)。 |
返回值:
当前对象本身,可以链式调用
- 继承自:
on(types, fn, context) → BaseClass
core/BaseClass.js 61
绑定指定类型事件监听器, 支持在监听中调用 event.stopPropagation(); 阻止事件冒泡
参数名称 | 类型 | 描述信息 |
---|---|---|
types |
EventType | string | Array.<EventType> | Array.<string> | object |
事件类型 |
fn |
function |
绑定的监听器回调方法 |
context |
object |
可选
侦听器的上下文(this关键字将指向的对象)。 |
返回值:
当前对象本身,可以链式调用
- 继承自:
once(types, fn, context) → BaseClass
core/BaseClass.js 284
绑定一次性执行的指定类型事件监听器 与on类似,监听器只会被触发一次,然后被删除。
参数名称 | 类型 | 描述信息 |
---|---|---|
types |
EventType | string | Array.<EventType> |
事件类型 |
fn |
function |
绑定的监听器回调方法 |
context |
object |
可选
侦听器的上下文(this关键字将指向的对象)。 |
返回值:
当前对象本身,可以链式调用
- 继承自:
从地图上移除,同map.removeThing
参数名称 | 类型 | 描述信息 |
---|---|---|
destroy |
boolean |
可选
是否调用destroy释放 |
返回值:
无
- 继承自:
removeEventParent(obj) → BaseClass
core/BaseClass.js 320
移除抛出事件到父类
参数名称 | 类型 | 描述信息 |
---|---|---|
obj |
object |
父类对象 |
返回值:
当前对象本身,可以链式调用
根据id删除任务对象
参数名称 | 类型 | 描述信息 |
---|---|---|
id |
number | string |
id值 |
返回值:
是否成功删除
setOptions(options, funOptions) → BaseThing|BaseControl|object
core/BaseThing.js 246
更新图层参数
参数名称 | 类型 | 描述信息 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
options |
object |
与类的构造方法参数相同 |
||||||||
funOptions |
object |
可选
方法参数
|
返回值:
当前对象本身,可以链式调用
- 继承自:
将对象转为Json简单对象,用于存储后再传参加载
返回值:
Json简单对象
- 继承自:
updateItem(item) → TaskItem
thing/other/Task.js 161
根据id更新单个任务
参数名称 | 类型 | 描述信息 |
---|---|---|
item |
object |
单个任务参数 |
返回值:
任务对象
定义的类型
任务列表 支持的参数信息
属性:
属性名称 | 类型 | 可选 | 默认值 | 描述信息 |
---|---|---|---|---|
start |
number |
<可选> |
开始时间(相当于map.clock.startTime的秒数) |
|
stop |
number |
<可选> |
停止时间(相当于map.clock.startTime的秒数) |
|
duration |
number |
<可选> |
时长秒数,当没有配置stop时,内部自动算:stop= start + duration |
|
delay |
number |
<可选> |
1 | 延迟执行秒数,当没有配置start时,内部自动算:start=前一个的stop + delay |
id |
string | number |
<可选> |
createGuid() | 任务id标识 |
name |
string |
<可选> |
'' | 任务名称 |
enabled |
boolean |
<可选> |
true | 任务是否禁用,可以设置临时跳过这个任务 |
使用示例:
有下面几种使用场景,按需使用即可:
方式1:(start+stop)
{ type: "mapRotate", name: "地球自旋转", start: 3, stop: 9 }, //对应start:3-stop:9
方式2:(start+duration)
{ type: "mapRotate", name: "地球自旋转", start: 3, duration: 6 }, //对应start:3-stop:9
方式3:(duration+delay), 这种方式是队列式便于整体移动修改
{ type: "zoomIn", name: "放大地图", duration: 1, delay: 0 }, //对应start:0-stop:1
{ type: "mapRotate", name: "地球自旋转", duration: 6, delay: 2 }, //对应start:3-stop:9