Class: BaseLayerCollection
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:
Name Type Description obj
CMAP.TileLayer 要添加的图层
index
Number 添加的位置 在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:
Name Type Description param
Object Properties
Name Type Argument Description time
Number <optional> 淡入时间(毫秒),默认 1s
complete
function <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:
Name Type Description param
Object Properties
Name Type Argument Description time
Number <optional> 淡出时间(毫秒),默认 1s
complete
function <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:
Name Type Description callback
function 回调函数
- Inherited From:
- Overrides:
- CMAP.LayerCollection#filter
Returns:
- Type
- THING.Selector
forEach(callback)
遍历对象
Parameters:
Name Type Description callback
function 回调函数
- 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:
Name Type Description object
THING.BaseObject 物体
- Inherited From:
- Overrides:
- CMAP.LayerCollection#has
Returns:
- Type
- Boolean
indexOf(object) → {Number}
获取对象集合中某物体的下标索引值 若对象集合中不包含此物体,则返回 -1
Parameters:
Name Type Description object
THING.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:
Name Type Description param
Object 参数列表
- 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:
Name Type Description eventType
THING.EventType | String 事件名称
condition
String 物体类型选择条件
callback
function | 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:
Name Type Argument Description eventType
THING.EventType | String 事件名称
condition
String <optional> 物体类型选择条件,用于筛选子物体
userData
Object <optional> 事件绑定自定义数据
cb
function 事件触发的回调函数
tag
String <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:
Name Type Argument Description eventType
THING.EventType | String 事件名称
condition
String <optional> 物体类型选择条件
userData
Object <optional> 事件绑定自定义数据
callback
function 事件触发的回调函数
tag
String <optional> 事件标签
- Inherited From:
- Overrides:
- CMAP.LayerCollection#one
pauseEvent(eventType, condition [, tag])
暂停事件响应
Parameters:
Name Type Argument Description eventType
THING.EventType | String 事件名称
condition
String 物体类型选择条件
tag
String <optional> 事件标签
- Inherited From:
- Overrides:
- CMAP.LayerCollection#pauseEvent
Example
sel.pauseEvent('click',null,'tag1');sel.pauseEvent('click','.Marker','tag2')
query(param) → {THING.Selector}
在该对象集合中查询物体
Parameters:
Name Type Description param
String 查询条件
- 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:
Name Type Description obj
CMAP.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:
Name Type Argument Description eventType
THING.EventType | String 事件名称
condition
String 物体类型选择条件
tag
String <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:
Name Type Description index
Number 起始下标值,从此位置开始移除
number
Number 删除多少个对象
- 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:
Name Type Argument Description eventType
THING.EventType | String 事件名称
ev
Object 事件信息
tag
String <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;})