当前位置: 首页 > 文档资料 > ThingJS 文档中心 >

Class: BaseLayerCollection

优质
小牛编辑
131浏览
2023-12-01

CMAP~ BaseLayerCollection

BaseLayerCollection 底图图层的集合


new BaseLayerCollection()

构造函数

Extends

  • CMAP.LayerCollection

Members


draggable :Boolean

批量设置集合中的对象是否能被拖拽

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#draggable

inheritAngles :Boolean

批量设置集合中的对象角度继承控制

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#inheritAngles

inheritPosition :Boolean

批量设置集合中的对象位置继承控制

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#inheritPosition

inheritScale :Boolean

批量设置集合中的对象缩放继承控制

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#inheritScale

inheritStyle :Boolean

批量设置集合中的对象风格继承控制

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#inheritStyle

inheritVisible :Boolean

批量设置集合中的对象可见性继承控制

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#inheritVisible

pickable :Boolean

批量设置集合中的对象是否能被拾取

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#pickable

style :THING.SelectorStyle

获取效果集合,获取后用于批量设置集合中的物体效果

Type:
Inherited From:
Overrides:
  • CMAP.LayerCollection#style
Example
// 获取所有 Thing 类型物体的对象集合var sel = app.query('.Thing');// 获取效果结合,并设置物体颜色为红色sel.style.color = '#ff0000';

visible :Boolean

批量设置集合中的对象显示/隐藏

Type:
  • Boolean
Inherited From:
Overrides:
  • CMAP.LayerCollection#visible

Methods


add(obj, index)

重写add方法,添加一个TileLayer对象实例到Selector中

Parameters:
NameTypeDescription
objCMAP.TileLayer

要添加的图层

indexNumber

添加的位置 在baseLayerCollection中,位置越靠后,图层越靠上 如果不填默认填在最后 index从0开始

Overrides:
  • CMAP.LayerCollection#add
Example
map.baseLayers.add(tileLayer);//tileLayer是一个TileLayer实例 要在地图上添加该图层到最上层

clear()

清空集合(集合中的对象本身并没有删除)

Inherited From:
Overrides:
  • CMAP.LayerCollection#clear

destroyAll()

销毁对象集合中的所有对象(物体会被删除掉)

Inherited From:
Overrides:
  • CMAP.LayerCollection#destroyAll

fadeIn(param)

淡入

Parameters:
NameTypeDescription
paramObject
Properties
NameTypeArgumentDescription
timeNumber<optional>

淡入时间(毫秒),默认 1s

completefunction<optional>

完成时的回调

Inherited From:
Overrides:
  • CMAP.LayerCollection#fadeIn
Example
var sel = app.query('.Thing');sel.fadeIn();// 设置 时间 和 回调sel.fadeIn({  time:2000,  complete:function(){    THING.Utils.log('complete')  }})

fadeOut(param)

淡出

Parameters:
NameTypeDescription
paramObject
Properties
NameTypeArgumentDescription
timeNumber<optional>

淡出时间(毫秒),默认 1s

completefunction<optional>

完成时的回调

Inherited From:
Overrides:
  • CMAP.LayerCollection#fadeOut
Example
var sel = app.query('.Thing');sel.fadeOut();// 设置 时间 和 回调sel.fadeOut({  time:2000,  complete:function(){    THING.Utils.log('complete')  }})

filter(callback) → {THING.Selector}

过滤元素

Parameters:
NameTypeDescription
callbackfunction

回调函数

Inherited From:
Overrides:
  • CMAP.LayerCollection#filter
Returns:
Type
THING.Selector

forEach(callback)

遍历对象

Parameters:
NameTypeDescription
callbackfunction

回调函数

Inherited From:
Overrides:
  • CMAP.LayerCollection#forEach
Example
// 得到所有 Thing 类型物体的对象集合var sel = app.query('.Thing');// 遍历对象sel.forEach(function(obj){  THING.Utils.log(obj.name)})

has(object) → {Boolean}

判断集合中是否拥有某物体

Parameters:
NameTypeDescription
objectTHING.BaseObject

物体

Inherited From:
Overrides:
  • CMAP.LayerCollection#has
Returns:
Type
Boolean

indexOf(object) → {Number}

获取对象集合中某物体的下标索引值 若对象集合中不包含此物体,则返回 -1

Parameters:
NameTypeDescription
objectTHING.BaseObject

物体

Inherited From:
Overrides:
  • CMAP.LayerCollection#indexOf
Returns:

下标值, -1 表示不存在

Type
Number
Example
// 获取 Thing 类型物体对象集合var sel = app.query('.Thing');// 根据 name 查询获取物体var obj = app.query('cabinetB1')[0];var index = sel.indexOf(obj);

not(param) → {THING.Selector}

从当前对象集合中排除部分对象 参数可以是 查询条件 或 物体对象 或 物体对象数组 或 其他 Selector 对象集合

Parameters:
NameTypeDescription
paramObject

参数列表

Inherited From:
Overrides:
  • CMAP.LayerCollection#not
Returns:

处理之后的对象集合

Type
THING.Selector
Example
selector.not('car01').not(obj).not([obj1, obj2]).not(sel);

off(eventType, condition, callback)

移除事件绑定

Parameters:
NameTypeDescription
eventTypeTHING.EventType | String

事件名称

conditionString

物体类型选择条件

callbackfunction | String

事件触发的回调函数 或 事件标签(tag)

Inherited From:
Overrides:
  • CMAP.LayerCollection#off
Example
sel.off('click',null,'tag1');sel.off('click','.Marker','tag2')

on(eventType [, condition] [, userData], cb [, tag])

绑定事件

Parameters:
NameTypeArgumentDescription
eventTypeTHING.EventType | String

事件名称

conditionString<optional>

物体类型选择条件,用于筛选子物体

userDataObject<optional>

事件绑定自定义数据

cbfunction

事件触发的回调函数

tagString<optional>

事件标签

Inherited From:
Overrides:
  • CMAP.LayerCollection#on
Example
// 获取所有 Thing 类型物体var sel = app.query('.Thing');// 绑定 Click 事件sel.on('click',function(ev){  THING.Utils.log(ev.object.name);},'给所有Thing物体绑定点击事件')// 给所有 Thing 类型物体下的 Marker 对象绑定事件sel.on('click','.Marker',function(ev){  THING.Utils.log(ev.object.name);},'给Thing下的Marker绑定事件')

one(eventType [, condition] [, userData], callback [, tag])

绑定事件(只触发一次)

Parameters:
NameTypeArgumentDescription
eventTypeTHING.EventType | String

事件名称

conditionString<optional>

物体类型选择条件

userDataObject<optional>

事件绑定自定义数据

callbackfunction

事件触发的回调函数

tagString<optional>

事件标签

Inherited From:
Overrides:
  • CMAP.LayerCollection#one

pauseEvent(eventType, condition [, tag])

暂停事件响应

Parameters:
NameTypeArgumentDescription
eventTypeTHING.EventType | String

事件名称

conditionString

物体类型选择条件

tagString<optional>

事件标签

Inherited From:
Overrides:
  • CMAP.LayerCollection#pauseEvent
Example
sel.pauseEvent('click',null,'tag1');sel.pauseEvent('click','.Marker','tag2')

query(param) → {THING.Selector}

在该对象集合中查询物体

Parameters:
NameTypeDescription
paramString

查询条件

Inherited From:
Overrides:
  • CMAP.LayerCollection#query
Returns:

查询结果

Type
THING.Selector
Example
// 在对象集合中查询 id 为 001 的物体sel.query('#001');// 在对象集合中查询名称为 car01 的物体sel.query('car01');// 在对象集合中查询类型为 Thing 的物体sel.query('.Thing');// 在对象集合中查询自定义属性 [prop=value] 的物体sel.query('["userData/power" = 60]');// 在对象集合中查询名字(name)中包含 car 的物体sel.query(/car/);// 在对象集合中查询 满足条件1 或条件2,...sel.query('.Thing|.Building');// 字符串部分参考:http://www.w3school.com.cn/jquery/jquery_ref_selectors.asp

remove(obj)

移除单个图层

Parameters:
NameTypeDescription
objCMAP.TileLayer

需要删除的图层
可以是对象(obj传TileLayer对象实例),也可以是图层在BaseLayerCollection中的index(obj传Number)

Overrides:
  • CMAP.LayerCollection#remove
Example
map.baseLayers.remove(tileLayer);//tileLayer是一个TileLayer实例 要在地图上移除该图层

removeAll() → {Void}

移除全部图层

Inherited From:
  • CMAP.LayerCollection#removeAll
Overrides:
  • CMAP.LayerCollection#removeAll
Returns:
Type
Void
Example
map.userLayers.removeAll();//userLayers移除全部图层

resumeEvent(eventType, condition [, tag])

恢复事件响应

Parameters:
NameTypeArgumentDescription
eventTypeTHING.EventType | String

事件名称

conditionString

物体类型选择条件

tagString<optional>

事件标签

Inherited From:
Overrides:
  • CMAP.LayerCollection#resumeEvent
Example
sel.resumeEvent('click',null,'tag1');sel.resumeEvent('click','.Marker','tag2')

reverse() → {THING.Selector}

反转集合中的对象顺序

Inherited From:
Overrides:
  • CMAP.LayerCollection#reverse
Returns:
Type
THING.Selector

splice(index, number)

从集合中移除对象

Parameters:
NameTypeDescription
indexNumber

起始下标值,从此位置开始移除

numberNumber

删除多少个对象

Inherited From:
Overrides:
  • CMAP.LayerCollection#splice

toArray() → {Array}

把对象集合以数组形式返回

Inherited From:
Overrides:
  • CMAP.LayerCollection#toArray
Returns:

数组

Type
Array
Example
var sel = app.query('.Thing');var arr = sel.toArray();

toJSON() → {String}

转换成 JSON 字符串

Inherited From:
Overrides:
  • CMAP.LayerCollection#toJSON
Returns:

字符串

Type
String
Example
var sel = app.query('.Thing');var jsonStr = sel.toJSON();

trigger(eventType, ev [, tag])

发送事件

Parameters:
NameTypeArgumentDescription
eventTypeTHING.EventType | String

事件名称

evObject

事件信息

tagString<optional>

事件标签

Inherited From:
Overrides:
  • CMAP.LayerCollection#trigger
Example
// 获取所有的 Thing 类型物体集合 并触发自定义的 Alarm 事件var sel = app.query('.Thing');sel.trigger('Alarm', { level: 2 })// 监听绑定自定义的 Alarm 事件sel.on('Alarm', function (ev) {  var level = ev.level;})