new FeatureLayer(param)
Parameters:
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
param |
Object | 参数 Properties
|
Example
var pointLayer = app.create({ type: 'FeatureLayer', name: 'pointLayer', renderOrder: 1, dataSource:{ "type": "FeatureCollection", "features": [{ "type": "Feature", "properties": { "type": "rain", "value": 5 }, "geometry": { "type": "Point", "coordinates": [-73.99995803833008, 40.71805432623303] } }, { "type": "Feature", "properties": { "type": "water", "value": 7 }, "geometry": { "type": "Point", "coordinates": [-73.98167610168457, 40.726087955120704] } }] }, geometryType:'GeoPoint', renderer:{ type: 'image', url:'image/uGeo/pop.png', size:20 } }); map.userLayers.add(pointLayer);
Extends
Members
-
angles :Array.<number>
-
三轴相对角度,相对于自身坐标
Type:
- Array.<number>
- Inherited From:
- Overrides:
-
brothers :THING.Selector
-
获取物体的所有兄弟对象(排除自己),返回物体对象集合
Type:
- Inherited From:
- Overrides:
-
controls :Array.<Object>
-
获取控件列表(数组)
Type:
- Array.<Object>
- Inherited From:
- Overrides:
-
dataSource :Object
-
数据源,目前只支持geojson格式的对象 设置dataSource属性会重置featureLayer的renderer
Type:
- Object
Example
featureLayer.dataSource = { "type": "FeatureCollection", "features": [{ "type": "Feature", "properties": { "type": "rain", "value": 5 }, "geometry": { "type": "Point", "coordinates": [-73.99995803833008, 40.71805432623303] } }, { "type": "Feature", "properties": { "type": "water", "value": 7 }, "geometry": { "type": "Point", "coordinates": [-73.98167610168457, 40.726087955120704] } }] };
-
draggable :Boolean
-
设置/获取 物体是否可被拖拽
Type:
- Boolean
- Inherited From:
- Overrides:
Example
obj.draggable = true
-
dragState :THING.DragState
-
获取物体当前拖拽状态 THING.DragState.No —— 非拖拽模式、 THING.DragState.DragEnd —— 拖拽结束、 THING.DragState.Dragging —— 拖拽中、
Type:
- Inherited From:
- Overrides:
-
extrudeFactor :Number
-
高度拉伸倍数
Type:
- Number
Example
featureLayer.extrudeFactor = 2; //设置高度放大倍数
-
extrudeField :String
-
高度属性字段
Type:
- String
Example
featureLayer.extrudeField = 'height'; //设置高度属性字段,该字段可在每一个对象的userData中找到
-
extrudeHeight :Number
-
设置FeatureLayer中各对象的拔起高度
Type:
- Number
-
height :Number
-
设置FeatureLayer中各对象拔起高度
Type:
- Number
- Deprecated:
-
- Yes
-
id :String
-
设置/获取 物体 id
Type:
- String
- Inherited From:
- Overrides:
-
<readonly> infoWindow :CMAP.InfoWindow
-
图层的弹窗信息
Type:
Example
//不支持featureLayer.infoWindow = infoWindow这种修改方式 //通过这种方式来修改featureLayer中infoWindow的title属性 featureLayer.infoWindow.title = '标题';
-
inheritAngles :Boolean
-
设置/获取 物体是否跟随父物体旋转, 默认true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
inheritPickable :Boolean
-
设置/获取 物体拾取是否受父物体影响, 默认 true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
inheritPosition :Boolean
-
设置/获取 物体位置是否跟随父物体移动, 默认true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
inheritScale :Boolean
-
设置/获取 物体是否跟随父物体缩放, 默认true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
inheritStyle :Boolean
-
设置/获取 物体样式是否受父物体影响, 默认 true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
inheritTheme :Boolean
-
设置/获取 物体模板是否受父物体影响, 默认 true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
inheritVisible :Boolean
-
设置/获取 物体可见性是否受父物体影响, 默认 true.
Type:
- Boolean
- Inherited From:
- Overrides:
-
keepSize :Boolean
-
设置/获取 图标是否保持像素大小不变。默认为 false,即图标在 3D 场景中呈现“近大远小”的表现形式。
Type:
- Boolean
- Inherited From:
- Overrides:
Example
// 设置物体始终保持像素大小(不随场景缩放“近大远小”) object.keepSize = true;
-
<readonly> label :CMAP.Label
-
图层的标注信息
Type:
Example
//不支持featureLayer.label = label这种修改方式 //通过这种方式来修改featureLayer中label的fontSize属性 featureLayer.label.fontSize = 12;
-
localPosition :Array.<number>
-
设置/获取 物体在父物体坐标系下的相对位置
Type:
- Array.<number>
- Inherited From:
- Overrides:
-
name :String
-
设置/获取 物体 name
Type:
- String
- Inherited From:
- Overrides:
-
<readonly> objects :Array
-
图层中所有的对象
Type:
- Array
- Inherited From:
- Overrides:
-
offsetHeight :Number
-
离地高度 单位:米
Type:
- Number
- Inherited From:
- Overrides:
Example
featureLayer.offsetHeight = 200; //设置离地高度200米
-
offsetHeightAdded :Number
-
设置FeatureLayer中各对象的离地偏移高度
Type:
- Number
Example
featureLayer.offsetHeightAdded = 10;
-
offsetHeightFactor :Number
-
设置FeatureLayer中各对象的离地高度倍数
Type:
- Number
Example
featureLayer.offsetHeightFactor = 2;
-
offsetHeightField :Number
-
设置FeatureLayer中各对象的离地高度字段
Type:
- Number
- Overrides:
Example
featureLayer.offsetHeightField = 50; //设置离地高度字段
-
parent :THING.BaseObject
-
获取直接父物体
Type:
- Inherited From:
- Overrides:
-
parents :THING.Selector
-
获取所有父物体(祖先),返回物体对象集合,集合中的第一个对象为直接父物体,最后一个为世界根对象
Type:
- Inherited From:
- Overrides:
Example
// 获取某对象的所有父物体 var parents=obj.parents; // parents[0] 等同于 obj.parent // 遍历物体集合 parents.forEach(function (parent) { THING.Utils.log(parent.name) })
-
pickable :Boolean
-
设置/获取 物体是否能被拾取
Type:
- Boolean
- Inherited From:
- Overrides:
-
position :Array.<number>
-
设置/获取 物体在世界坐标系下的绝对位置
Type:
- Array.<number>
- Inherited From:
- Overrides:
-
quaternion :Array.<number>
-
设置四元数
Type:
- Array.<number>
- Inherited From:
- Overrides:
-
<readonly> renderer :Object
-
图层的渲染样式 目前FeatureLayer的renderer可以支持条件分类,但是如果对renderer进行修改,仅支持整体修改暂不支持分类修改
Type:
- Object
Example
//不支持featureLayer.renderer = renderer这种修改方式 //通过这种方式来修改featureLayer中renderer的color属性 这样会影响featureLayer中所有对象的颜色 //如果想单独修改某一个地理对象的样式,可以通过featureLayer.objects[0].renderer.color = [1,0,0]这种方式修改 //对于FeatureLayer来说 如果为FeatureLayer设置样式,会冲掉featureLayer中个体的样式 //调用featureLayer.dataSource = xxx;也会重新设置featureLayer的renderer featureLayer.renderer.color = 'rgb(255,0,0)';
-
renderOrder :number
-
设置/获取渲染排序值, 数值越小越先渲染,默认值为 0
Type:
- number
- Overrides:
- CMAP.Layer#renderOrder
Example
featureLayer.renderOrder = 5;//设置图层渲染顺序为5
-
scale :Array.<number>
-
物体自身缩放比例
Type:
- Array.<number>
- Inherited From:
- Overrides:
Example
// 等比例缩放 2 倍 obj.scale = [2,2,2]
-
subNodes :THING.Selector
-
获取子部件(模型的 Mesh 列表)
Type:
- Inherited From:
- Overrides:
Example
var subNodes = obj.subNodes; subNodes.forEach(function(subnode){ THING.Utils.log(subnode.name) })
-
type :String
-
设置/获取 物体类型
Type:
- String
- Inherited From:
- Overrides:
-
userData :Object
-
获取/设置用户自定义属性
Type:
- Object
- Inherited From:
- Overrides:
-
visible :boolean
-
显示为True,不显示为False
Type:
- boolean
- Overrides:
- CMAP.Layer#visible
-
visibleLevel :Array
-
设置显示级别,[最小级别,最大级别]或者是[最小级别],该图层在这个级别范围内才显示
Type:
- Array
- Inherited From:
- Overrides:
Example
layer.visibleLevel = [10,15];//限制图层在10-15层级范围内显示
Methods
-
add(obj)
-
添加对象到FeatureLayer,要添加的feature类型必须和FeatureLayer的geometryType一致 添加后dataSource属性不变
Parameters:
Name Type Description obj
Object 要添加到图层中的对象(GeoPoint,GeoLine,GeoBuilding,GeoPolygon等)
- Overrides:
-
addControl(type [, name]) → {Object}
-
添加物体控件
Parameters:
Name Type Argument Description type
Object 系统内置控件类型 或 用户自定义控件类型
name
String <optional>
控件自定义名称(用于查找)
- Inherited From:
- Overrides:
Returns:
控件
- Type
- Object
Example
obj.addControl(new THING.AxisTransformControl(obj), 'axisControl');
-
clearClipping()
-
清除物体裁剪
- Inherited From:
- Overrides:
-
distanceTo(position) → {Number}
-
获取物体到某坐标或者另一物体的绝对距离
Parameters:
Name Type Description position
Array.<number> | THING.BaseObject 世界坐标系下的位置 或 另一物体
- Inherited From:
- Overrides:
Returns:
距离
- Type
- Number
Example
// 填写世界坐标系下的位置 obj.distanceTo([0,0,0]); // 填写物体对象 obj.distanceTo(otherObj);
-
fadeIn(param)
-
淡入
Parameters:
Name Type Description param
Object 参数列表
Properties
Name Type Argument Description time
Number <optional>
淡入时间(毫秒) 默认 1s
complete
function <optional>
完成时的回调
- Inherited From:
- Overrides:
Example
obj.fadeIn(); // 设置时间和回调 obj.fadeIn({ time:2000, complete:function(ev){ 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:
Example
obj.fadeOut(); // 设置时间和回调 obj.fadeOut({ time:2000, complete:function(ev){ THING.Utils.log('complete') } })
-
getAttribute(key) → {*}
-
获取属性值
Parameters:
Name Type Description key
String 属性名,可以使用 a/b/c 的路径方式
- Inherited From:
- Overrides:
Returns:
属性值
- Type
- *
Example
obj.getAttribute("userData/power");
-
getControl(name) → {Object}
-
获取控件
Parameters:
Name Type Description name
String 控件自定义名称
- Inherited From:
- Overrides:
Returns:
控件
- Type
- Object
Example
var control = obj.getControl('axisControl');
-
getEvents(eventType) → {Array.<Object>}
-
获取绑定的事件列表,返回数组
Parameters:
Name Type Description eventType
THING.EventType | String 事件名称, 如果不传则返回所有已绑定的事件
- Inherited From:
- Overrides:
Returns:
- Type
- Array.<Object>
Example
var events=obj.getEvents(); // 返回数组,结构形如: [{"type":"enterlevel","priority":50,"userData":null,'tag':'__level_scene_operations__'}, {"type":"leavelevel","priority":50,"userData":null,'tag':'__level_scene_operations__'}, {"type":"click","priority":50,"userData":null,'tag':'我的单击事件'}]
-
getOrientedBox(onlyVisible, onlySelf) → {OrientedBoxResult}
-
获取带方向的包围盒信息
Parameters:
Name Type Default Description onlyVisible
Boolean true 是否仅获取可见物体数据
onlySelf
Boolean false 是否仅获取自身物体数据
- Inherited From:
- Overrides:
Returns:
- Type
- OrientedBoxResult
-
hasAttribute(key) → {Boolean}
-
判断属性是否存在
Parameters:
Name Type Description key
String 属性名,可以使用 a/b/c 的路径方式
- Inherited From:
- Overrides:
Returns:
- Type
- Boolean
Example
// 物体属性 obj.userData.power 是否存在 obj.hasAttribute("userData/power");
-
hasChild(object) → {Boolean}
-
检测是否拥有此子物体
Parameters:
Name Type Description object
THING.BaseObject 物体
- Inherited From:
- Overrides:
Returns:
- Type
- Boolean
-
hasControl(control) → {Boolean}
-
查询是否拥有控件
Parameters:
Name Type Description control
Object | String 控件或者控件自定义名字
- Inherited From:
- Overrides:
Returns:
- Type
- Boolean
Example
obj.hasControl('axisControl');
-
isBrotherOf(object) → {Boolean}
-
判断该物体是否为某物体的兄弟
Parameters:
Name Type Description object
THING.BaseObject 物体
- Inherited From:
- Overrides:
Returns:
- Type
- Boolean
-
isChildOf(parent) → {Boolean}
-
判断该物体是否为某物体的孩子
Parameters:
Name Type Description parent
THING.BaseObject 物体
- Inherited From:
- Overrides:
Returns:
- Type
- Boolean
-
lookAt(target, params)
-
设置物体观察朝向
Parameters:
Name Type Description target
Array.<Number> | THING.BaseObject | THING.CameraController 世界坐标下某坐标、某物体或者摄像机,设为 null 时表示取消观察
params
Array.<Number> | Object 参数列表
Properties
Name Type Argument Description angles
Array.<Number> <optional>
叠加的修正值
lockYAxis
Boolean <optional>
是否锁定 Y 轴
always
Boolean <optional>
是否一直朝向观察物体
- Inherited From:
- Overrides:
Example
//让物体面向[0,1,0],该坐标是在世界坐标下位置 obj.lookAt([0,1,0]) //让物体一直面向摄影机 obj.lookAt(app.camera) //让物体一直面向一个物体 obj.lookAt(obj2) //让物体一直面向一个物体,同时物体沿自身Y轴向再旋转90度 obj.lookAt(obj2,[0,90,0]) //取消lookAt功能 obj.lookAt(null)
-
movePath(params)
-
沿指定路径移动
Parameters:
Name Type Description params
Object Properties
Name Type Argument Description path
Array.<Number> 路径,由世界坐标系下的坐标点组成
orientToPath
Boolean <optional>
物体方向是否沿路径方向
orientToPathDegree
Number <optional>
相对于路径方向的角度旋转值
time
Number <optional>
沿路径移动的时间(毫秒)
local
Boolean <optional>
输入的坐标是否相对于父物体的位置(默认false), 否则路径为世界坐标
delayTime
Number <optional>
延时执行时间(毫秒)
lerpType
THING.LerpType <optional>
插值类型
loopType
String <optional>
循环类型,默认为 no
update
function <optional>
移动中的回调
complete
function <optional>
移动完成时的回调
- Inherited From:
- Overrides:
Example
// 世界坐标系下坐标点构成的数组 关于坐标的获取 可利用「工具」——>「拾取场景坐标」 var path = [[0, 0, 0], [20, 0, 0], [20, 0, 10], [0, 0, 10], [0, 0, 0]]; obj.movePath({ orientToPath: true, // 物体移动时沿向路径方向 path: path, // 路径坐标点数组 time: 5 * 1000, // 路径总时间 毫秒 delayTime: 1000, // 延时 1s 执行 lerpType: null, // 插值类型(默认为线性插值)此处设置为不插值 complete: function (ev) { THING.Utils.log(ev.object.name + "移动结束") } });
-
moveTo(params)
-
移动到某位置 或 某物体对象
Parameters:
Name Type Description params
Object Properties
Name Type Argument Description position
Array.<Number> | THING.BaseObject 目标位置(世界坐标系下绝对位置) 或 物体对象
orientToPath
Boolean <optional>
是否朝向目标方向
loopType
String <optional>
循环类型,默认为 no
time
Number <optional>
完成移动的时间(毫秒)
offsetPosition
Array.<Number> <optional>
相对于当前位置的移动偏移量(与 position 选填其一)
complete
function <optional>
移动完成时的回调,仅当 loopType 为 no 时才有回调
- Inherited From:
- Overrides:
Example
// 移动到世界坐标系下 [0,0,10] 处位置 obj.moveTo([0, 0, 10]); // 3s 移动到世界坐标系下原点位置 [0,0,0] obj.moveTo({ position: [0,0,0], time: 3000, orientToPath: true,// 朝向目标方向 complete:function(ev) { THING.Utils.log(ev.object.name + '移动完成'); } }); // 2s 向前移动 10m obj.moveTo({ offsetPosition: [0, 0, 10], // 相对自身 向前移动 10m time: 2 * 1000, orientToPath: true, complete: function (ev) { THING.Utils.log(ev.object.name + '移动完成'); } });
-
off(eventType, condition, callback)
-
移除事件绑定
Parameters:
Name Type Description eventType
String 事件类型名称
condition
String 物体类型选择条件
callback
function | String 事件触发的回调函数 或 事件标签(tag)
- Inherited From:
- Overrides:
Example
// 移除所有 Click 事件的绑定 obj.off('click'); // 移除对物体下 Marker 子物体的 Click 事件绑定 obj.off('click','.Marker'); // 移除标记为某个事件标签的事件绑定,如果绑定(on)时没写条件,则第二个参数需填写 null obj.off('click','.Marker','我的点击事件01') obj.off('click',null,'我的点击事件02')
-
one(eventType [, condition] [, userData], callback [, tag] [, priority])
-
绑定事件(只触发一次)
Parameters:
Name Type Argument Description eventType
String 事件类型名称
condition
String <optional>
物体类型选择信息
userData
Object <optional>
事件传递自定义数据
callback
function 事件触发的回调函数
tag
String <optional>
事件标签
priority
Number <optional>
优先级,数值越大优先级越高
- Inherited From:
- Overrides:
-
pauseEvent(eventType [, condition] [, tag])
-
暂停事件响应
Parameters:
Name Type Argument Description eventType
THING.EventType | String 事件名称
condition
String <optional>
物体类型选择条件
tag
String <optional>
事件标签
- Inherited From:
- Overrides:
-
query(param [, recursive]) → {THING.Selector}
-
在子物体中查询(不包括自己)
Parameters:
Name Type Argument Default Description param
String 查询条件
recursive
Boolean <optional>
true 是否递归查询所有子物体, 默认true
- Inherited From:
- Overrides:
Returns:
查询结果
- Type
- THING.Selector
Example
// 查询名称为 car01 的子物体 obj.query('car01'); // 查询类型为 Marker 的子物体 obj.query('.Marker'); // 查询id为 001 的子物体 obj.query('#001'); // 根据自定义属性值筛选子物体 obj.query('[userData/power=40]'); // 根据正则表达式匹配 name 中包含 'car' 的子物体 obj.query(/car/); // 上行代码等同于 // var reg = new RegExp('car'); // var cars=app.query(reg);
-
remove(obj)
-
移除Layer中指定的对象 移除后dataSource属性不变
Parameters:
Name Type Description obj
Object 图层中的对象
- Overrides:
-
removeAll()
-
移除layer下的所有对象 移除后dataSource属性不变
-
removeAllControls()
-
删除该物体的所有控件
- Inherited From:
- Overrides:
-
removeControl(control)
-
删除控件
Parameters:
Name Type Description control
Object | String 控件或控件自定义名称
- Inherited From:
- Overrides:
Example
var control = obj.removeControl('axisControl');
-
resumeEvent(eventType [, condition] [, tag])
-
恢复事件响应
Parameters:
Name Type Argument Description eventType
THING.EventType | String 事件名称
condition
String <optional>
物体类型选择信息
tag
String <optional>
事件标签
- Inherited From:
- Overrides:
-
rotate(angle, axis)
-
让物体以自身坐标系下指定坐标轴旋转(默认 Y 轴)
Parameters:
Name Type Description angle
Number 旋转角度值
axis
Array.<number> 方向轴,默认为物体 Y 轴方向
- Inherited From:
- Overrides:
Example
// 绕自身 Y 轴旋转45度,等同于 obj.rotateY(45) obj.rotate(45); // 绕自身 X 轴旋转30度,等同于 obj.rotateX(30) obj.rotate( 30, [1,0,0]) // 绕自身 Z 轴向旋转-45度,等同于 obj.rotateZ(-45) obj.rotate( -45, [0,0,1])
-
rotateAround(params)
-
绕某点或某物体旋转
Parameters:
Name Type Description params
Object 参数列表
Properties
Name Type Argument Description object
THING.BaseObject <optional>
围绕某物体
target
Array.<Number> <optional>
围绕世界坐标系下某位置点
angle
Number <optional>
水平旋转角度
time
Number <optional>
旋转时间(毫秒)
speed
Number <optional>
速度 (与 time 选填其一)
loopType
String <optional>
循环类型
complete
function <optional>
旋转结束时的回调函数,仅当 loopType 为 no 时才有回调
- Inherited From:
- Overrides:
- See:
Example
// obj2 绕着 obj1 旋转360度,2s转完 obj2.rotateAround({ object: obj1, angle:360, time:2000, loopType:THING.LoopType.No, complete:function(){ THING.Utils.log('finish') } }) // obj 绕着 世界坐标系下的原点旋转360度,2s转完 obj.rotateAround({ target: [0,0,0], angle:360, time:2000, loopType:THING.LoopType.No, complete:function(){ THING.Utils.log('finish') } })
-
rotateTo(params)
-
在一段时间内物体旋转一定角度
Parameters:
Name Type Description params
Object 参数列表
Properties
Name Type Argument Description angles
Array.<number> 旋转角度
time
Number <optional>
完成旋转的时间(毫秒)
speed
Number <optional>
旋转速度(与 time 选填其一)
loopType
String <optional>
循环类型,默认为 no
lerpType
String <optional>
旋转速度插值类型
complete
function <optional>
旋转完成时的回调函数,仅当 loopType 为 no 时有回调
- Inherited From:
- Overrides:
Example
// 物体绕 Y 轴旋转 90 度,5s 转完 obj.rotateTo({ angles: [0, 90, 0], // 旋转角度 time: 5000, // 总时间 complete: function () { THING.Utils.log('rotate complete'); // 旋转结束回调 } }) // 物体绕 Y 轴旋转 90 度,5s 变加速转完 obj.rotateTo({ angles: [0, 90, 0], time: 5000, lerpType: THING.LerpType.Quadratic.In, // 速度插值 complete: function () { THING.Utils.log('finish') } })
-
rotateX(value)
-
绕自身 X 轴旋转
Parameters:
Name Type Description value
Number 旋转角度值
- Inherited From:
- Overrides:
-
rotateY(value)
-
绕自身 Y 轴旋转
Parameters:
Name Type Description value
Number 旋转角度值
- Inherited From:
- Overrides:
-
rotateZ(value)
-
绕自身 Z 轴旋转
Parameters:
Name Type Description value
Number 旋转角度值
- Inherited From:
- Overrides:
-
scaleTo(params)
-
在一段时间内将物体缩放至某比例
Parameters:
Name Type Description params
Object Properties
Name Type Argument Description scale
Array.<number> 缩放值
time
Number <optional>
完成缩放的时间(毫秒)
speed
Number <optional>
缩放速度(与 time 选填其一)
lerpType
THING.LerpType <optional>
缩放速度插值类型
loopType
String <optional>
循环类型,默认为 no
complete
function <optional>
缩放完成时的回调
- Inherited From:
- Overrides:
Example
// 5s 物体缩放至两倍 obj.scaleTo({ scale: [2,2,2], // 等比例缩放两倍 time: 5000, complete: function () { THING.Utils.log('scale completed'); // 缩放结束回调 } }); // 缩放循环往复进行 obj.scaleTo({ scale:[2,2,2], time: 2000, loopType: THING.LoopType.PingPong // 循环类型:来回往复 })
-
selfToWorld(localPos [, ignoreScale]) → {Array.<number>}
-
将物体自身坐标系下的相对位置转换成世界坐标系下的绝对位置
Parameters:
Name Type Argument Default Description localPos
Array.<number> 物体自身坐标系下的相对位置
ignoreScale
Boolean <optional>
false 是否忽略缩放系数
- Inherited From:
- Overrides:
Returns:
世界坐标系下的绝对位置
- Type
- Array.<number>
Example
// 例如某书柜在三楼的原点(相对位置) // floor 为三楼楼层对象,返回结果为书柜在世界坐标系下的绝对位置,比如 [5,6,-15] floor.selfToWorld([0,0,0]);
-
setAttribute(key, value)
-
设置属性值
Parameters:
Name Type Description key
String 属性名,可以使用 a/b/c 的路径方式
value
* 属性值
- Inherited From:
- Overrides:
Example
obj.setAttribute("userData/price",50);
-
setAttributes(attributes [, overwrite])
-
批量设置属性值
Parameters:
Name Type Argument Default Description attributes
Object 属性列表
overwrite
Boolean <optional>
true 是否覆盖原有属性(默认覆盖),如果为 false 表示如果原属性存在,则不会更新属性值
- Inherited From:
- Overrides:
Example
obj.setAttributes({ "userData/power": 50, "userData/pirce": 60 })
-
setClipping(planes, spaceType)
-
设置物体裁剪
Parameters:
Name Type Description planes
Object | Array.<Object> 裁剪平面 { height: {Number} 裁剪平面高度, direction: {Number[]} 裁剪平面方向 }
spaceType
SpaceType 裁剪空间,默认为Self
- Inherited From:
- Overrides:
-
setVisible(value, effectChildren)
-
设置图层可见 对于图层来说,如果仅仅设置图层本身节点的visible,第二个参数传false,如果需要影响图层内各要素的visible,第二个参数传true 注:如果图层内要素visible为true 而图层本身的visible是false 这个要素是不会被显示的
Parameters:
Name Type Description value
Boolean 是否可见
effectChildren
Boolean 是否影响图层内要素
- Inherited From:
- Overrides:
-
stopMoving()
-
停止移动(针对 moveTo 、 movePath)
- Inherited From:
- Overrides:
-
stopRotating()
-
停止旋转动画(停止 rotateTo 、rotateAround )
- Inherited From:
- Overrides:
-
stopScaling()
-
停止缩放动画( scaleTo )
- Inherited From:
- Overrides:
-
translate(offset)
-
相对于自身坐标系进行移动
Parameters:
Name Type Description offset
Array.<Number> 相对于自身坐标系的偏移量
- Inherited From:
- Overrides:
Example
// 沿 X 轴移动 1m (即 左移 1m) obj.translate([1,0,0]); // 沿 Y 轴移动 1m (即 上移 1m) obj.translate([0,1,0]); // 沿 Z 轴移动 1m (即 向前移动 1m) obj.translate([0,0,1]);
-
trigger(eventType [, ev] [, tag])
-
触发事件
Parameters:
Name Type Argument Description eventType
THING.EventType | String 事件名称
ev
Object <optional>
事件信息,传递回调参数
tag
String <optional>
事件标签
- Inherited From:
- Overrides:
Example
// 触发自定义的告警事件 obj.trigger('Alarm'); obj.on('Alarm',function(ev){ THING.Utils.log(ev.object.name); }) // 传递参数 obj.trigger('Alarm',{level:2}); obj.on('Alarm',function(ev){ THING.Utils.log(ev.level) })
-
updateRenderer(renderItem)
-
设置图层渲染样式 这里是整体修改FeatureLayer的样式,如果单独修改某一项,应该使用featureLayer.renderer.xxx=xxx;的方式
Parameters:
Name Type Description renderItem
Object 图层整体的样式
Example
featureLayer.updateRenderer({ 'opacity':1, 'type':'image', 'lineType':'Plane', 'imageUrl':'uGeo/path.png', 'color':[53,77,135,0.27], 'effect':true, 'width':5, 'speed':1, });
-
worldToSelf(worldPos [, ignoreScale]) → {Array.<number>}
-
将世界坐标系下的绝对位置转换成物体自身的坐标系下的相对位置
Parameters:
Name Type Argument Default Description worldPos
Array.<number> 世界坐标系下的绝对位置
ignoreScale
Boolean <optional>
false 是否忽略缩放系数
- Inherited From:
- Overrides:
Returns:
相对坐标
- Type
- Array.<number>
Example
// 例如三楼某书柜在世界坐标系下的绝对坐标是 [5,6,-15] // floor 为三楼楼层对象,返回结果为书柜相对于该楼层的坐标,比如 [0,0,0] floor.worldToSelf([5,6,-15]);