在场景中点击任意数据,使数据变色并获取数据相关信息的操作。主要包括添加(创建)、更新、删除和获取结果4种操作。
拾取效果图
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
props |
Object |
optional
包含如下属性的Object:
|
Example:
// 创建全类型拾取工具。
var allTypePickResponser = new CooSDK.AllTypePickTool({
pickType: CooSDK.EnumPickDataType.ALL,
isChangeColor: true,
pickColor: new CooSDK.ColorObj(0, 1, 0, 0.5),
callback: getResult
});
function getResult(p1, p2){
//p1 为刚拾取到的对象的类型。
//p2 为拾取结果的对象,内部根据拾取对象的不同,分为如下几类:
//"model" 对应:人工模型(ModelData)。
//"oblique" 对应:倾斜摄影模型(OsgbData)。
//"label" 对应:普通标注(LabelObj)。
//"labelEx" 对应:聚合标注(LabelExObj)。
//"vector" 对应:矢量数据(FeatureModelData)。
//"analysisLayer" 对应:空间分析(Analysis)。
//"dynamicPath" 对应:动态路径(DynamicPathProvider)。
var result = p2[p1];
}
Demo:
Members
callback : SOCallback|String
获取或者设置拾取完成时绑定的回调函数,,若取消原先绑定的函数,则赋值为"none"。参数一为拾取到的对象类型,参数二为拾取到的对象信息。
-
Default Value:
"none"
获取或者设置高亮颜色拉伸高度。
-
Default Value:
1000
获取或者设置鼠标悬停触发时间,单位:ms。
-
Default Value:
1000
获取或者设置拾取时是否变色。
-
Default Value:
true
获取或者设置鼠标是否悬停触发拾取,设置为false则为点击拾取。
-
Default Value:
false
获取或者设置是否以法线方向拾取。
-
Default Value:
false
获取或者设置是否穿透拾取。
-
Default Value:
false
获取或者设置多选返回拾取对象结果是否为单个,默认为返回所有拾取对象结果。
-
Default Value:
false
pickColor : ColorObj
获取或者设置拾取颜色。
-
Default Value:
new ColorObj(1.0,0.0,0.0,0.5)
pickType : EnumPickDataType
获取或者设置可拾取数据类型。
-
Default Value:
EnumPickDataType.ALL
获取或者设置所属窗口,默认为CooMap所拥有的主窗口。
-
Default Value:
null
Methods
从场景中销毁自身。
Returns:
null 空值。
Example:
// 销毁对象
allTypePickResponser = allTypePickResponser.destroy();
更新单个或者多个对象属性,使之立即生效。
一般用于多个属性的同时更新,避免性能开销过大。
Name | Type | Description | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
props |
Object |
optional
包含如下属性的Object:
|
Example:
allTypePickResponser.update({
pickColor: new CooSDK.ColorObj(0, 1, 0, 0.5);
});