面积测量对象,可支持三维面积、水平面积、地表面积测量功能。
面积测量效果图
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
props |
Object |
optional
包含如下属性的Object:
|
Example:
// 最简单的写法
var measureLayer = new CooSDK.AreaMeasure();
// 或者根据自身需求设置参数
var measureLayer = new CooSDK.AreaMeasure({
callback: getResult,
areaMeasureType: CooSDK.EnumMeasureAreaType.C3D,
// 如设置loadPointArray参数,则通过参数创建测量,否则通过鼠标在场景点击来创建
loadPointArray: [
"120.218740486900, 30.209983093457, 28.227263780311",
"120.220240556350, 30.210589361155, 28.778096618131",
"120.219764918559, 30.209994939204, 14.799938811921"
],
analysisTextSymbol: {
size: 140,
fillingColor: new CooSDK.ColorObj(0.0, 1.0, 1.0, 1.0),
isHorizontal: true
}
});
// 实现绑定的回调函数
function getResult(x, y){
var result = measureLayer.getResult(CooSDK.EnumMeasureArea.CLICKPOS);
}
Demo:
Members
analysisTextSymbol : AnalysisTextSymbol
获取或者设置文字Symbol。
-
Default Value:
new AnalysisTextSymbol()
areaMeasureLineColor : ColorObj
获取或者设置面积测量线颜色(RGBA)。
-
Default Value:
new ColorObj(0.8,0.0,0.0,1.0)
areaMeasureType : EnumMeasureAreaType
获取或者设置面积测量类型。
-
Default Value:
EnumMeasureAreaType.C3D
callback : NNCallback|String
获取或者设置面积测量完成时回调事件绑定的函数,若取消原先绑定的函数,则赋值为"none"。
-
Default Value:
"none"
gridLineColor : ColorObj
获取或者设置地表测量网格线颜色。
-
Default Value:
new ColorObj(1.0,1.0,0.0,1.0)
guideLineColor : ColorObj
获取或者设置辅助线颜色。
-
Default Value:
new ColorObj(1.0,1.0,0.0,1.0)
获取或者设置辅助线显示样式,可控制实线/虚线显示,取值范围-32768-32767之间,-1为实线。
-
Default Value:
-1
获取或者设置辅助线宽度,范围1-10之间。
-
Default Value:
2.0
获取或者设置测量是否开启深度测试。
-
Default Value:
false
获取或者设置是否开启辅助线。
-
Default Value:
false
获取或者设置是否可以被拾取。
-
Default Value:
true
获取或者设置测量文字显示状态。
-
Default Value:
true
获取或者设置传入的坐标是否是世界坐标。
-
Default Value:
false
loadPointArray : Array.<(PositionObj|String)>
获取或者设置预设点集,支持字符串类型数组传入方式:"经度,纬度,高度"。
-
Default Value:
null
nonIntersectArray : Array.<EnumLayer>
获取或者设置测量与场景哪些类型图层数据不相交。默认为分析类,即与除分析之外所有图层数据都相交。
-
Default Value:
[EnumLayer.ANALYSIS]
获取或者设置地表测量地形调度层级。
-
Default Value:
16
pointColor : ColorObj
获取或者设置测量点颜色。
-
Default Value:
new ColorObj(0.0,1.0,1.0,1.0)
获取或者设置测量点大小。
-
Default Value:
5
polygonColor : ColorObj
获取或者设置测量面颜色。
-
Default Value:
new ColorObj(0, 0.7, 0.4, 0.5)
polygonMode : EnumPolygonMode
获取或者设置地表测量封闭区域显示方式。
-
Default Value:
EnumPolygonMode.GRID
获取或者设置所属窗口,默认为CooMap所拥有的主窗口。
-
Default Value:
null
获取或者设置文字抬高高度。
-
Default Value:
0.0
Methods
deserialize(url) → AreaMeasure
Name | Type | Description |
---|---|---|
url |
String |
反序列化文件保存路径,支持本地路径和网络路径。 |
Returns:
三维面积测量对象。
从场景中销毁自身。
Name | Type | Default | Description |
---|---|---|---|
reFunc |
NNCallback |
null
|
optional
销毁地图成功后可传入的回调函数。 |
Returns:
null 空值。
Example:
// 销毁对象
measureLayer = measureLayer.destroy();
根据指定参数获取测量结果。
Name | Type | Description |
---|---|---|
name |
EnumMeasureArea |
查询参数。 |
reCallback |
CBCallback |
optional
可传递的回调函数,返回测量查询结果。 |
Returns:
测量查询结果。
Example:
// 获取分析结果
var result = measureLayer.getResult(CooSDK.EnumMeasureArea.CLICKPOS);
console.log(result);
Name | Type | Description |
---|---|---|
url |
String |
序列化文件保存路径,仅支持本地路径。 |
更新单个或者多个对象属性,使之立即生效。
一般用于多个属性的同时更新,避免性能开销过大。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
props |
Object |
optional
包含如下属性的Object:
|
Example:
// 更新测量属性
measureLayer.update({
isDepthTest : true,
pointSize : 10
});