视域分析,根据提供的点位和观察角度,生成一个视野观察范围,然后分析在该观察范围内的被观察物体是否可见。分析时,范围内可见区域会绿色显示,不可见区域会红色显示。视域分析在不同的领域有着广泛的应用,如火灾监控点的设定,观察哨所的设定等等。
视域分析效果图
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
props |
Object |
optional
包含如下属性的Object:
|
Example:
// 创建视域分析对象,并绑定分析完成回调函数
var analysisLayer = new CooSDK.ViewshedAnalysis({
callback: getResult,
isTextVisible: true,
analysisTextSymbol: {
size: 140,
isHorizontal: true
}
});
function getResult(x, y) {
var result = viewshedAnalysis.getResult(CooSDK.EnumAnalysisViewshed.EYEPOS);
}
Demo:
Members
analysisTextSymbol : AnalysisTextSymbol
获取或者设置文字符号对象。
-
Default Value:
new AnalysisTextSymbol()
callback : NNCallback|String
获取或者设置视域分析完成回调事件绑定的函数,若取消原先绑定的函数,则赋值为"none"。
-
Default Value:
"none"
获取或者设置自定义信息。
-
Default Value:
""
获取或者设置预设视域起始点到目标点的距离。
-
Default Value:
null
drawLineColor : ColorObj
获取或者设置视域分析绘制线颜色。
-
Default Value:
new ColorObj(1, 1, 0, 1)
获取或者设置视域水平方向张角,范围在0度-179度。
-
Default Value:
60
获取或者设置预设视域起始点视线水平方向的旋转角度。
-
Default Value:
null
获取或者设置是否开启深度测试。
-
Default Value:
true
获取或者设置是否可以被拾取。
-
Default Value:
true
获取或者设置是否开启全景视域分析,默认为普通视域模式。
-
Default Value:
false
获取或者设置在全景视域分析情况下,是否开启视域球。
-
Default Value:
false
获取或者设置是否显示文字。
-
Default Value:
false
获取或者设置是否为世界坐标点。默认为经纬度坐标。
-
Default Value:
false
获取或者设置是否为世界坐标点。默认为经纬度坐标。
-
Default Value:
false
loadAimPoint : PositionObj
获取或者设置预设视域目标点地理坐标对象。
-
Default Value:
null
loadEyePoint : PositionObj
获取或者设置预设视域起始点地理坐标对象。
-
Default Value:
null
获取或者设置所属窗口,默认为CooMap所拥有的主窗口。
-
Default Value:
null
获取或者设置所属窗口,默认为CooMap所拥有的主窗口。
-
Default Value:
null
获取或者设置文字抬高高度。
-
Default Value:
0.0
获取或者设置视域垂直方向张角,范围在0度-179度。
-
Default Value:
60
获取或者设置预设视域起始点视线垂直方向的旋转角度。
-
Default Value:
null
Methods
deserialize(url) → ViewshedAnalysis
Name | Type | Description |
---|---|---|
url |
String |
反序列化文件保存路径,支持本地路径和网络路径。 |
Returns:
单视域分析对象。
从场景中销毁自身。
Returns:
null 空值。
Example:
// 销毁对象
viewshedAnalysis = viewshedAnalysis.destroy();
根据指定参数获取分析结果。
Name | Type | Description |
---|---|---|
name |
EnumAnalysisViewshed |
optional
查询参数。 |
reCallback |
CBCallback |
optional
可传递的回调函数,返回查询结果。 |
Returns:
查询结果。
Example:
// 获取分析结果
var result = viewshedAnalysis.getResult(CooSDK.EnumAnalysisViewshed.EYEPOS);
console.log(result);
Name | Type | Description |
---|---|---|
url |
String |
序列化文件保存路径,仅支持本地路径。 |
更新单个或者多个对象属性,使之立即生效。
一般用于多个属性的同时更新,避免逐个更新导致的性能开销过大。
Name | Type | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
props |
Object |
optional
包含如下属性的Object:
|
Example:
// 更新视域分析写法一
viewshedAnalysis.update({
// 隐藏视域分析文字
isTextVisible : false
});
// 更新视域分析写法二
viewshedAnalysis.isTextVisible = false;