HorizontalMeasure

new CooSDK.HorizontalMeasure(props)

水平距离测量对象,将三维空间中的多个关键点抬高到在同一个平面上,然后分段进行距离量算的功能。


水平距离测量效果图
Name Type Description
props Object optional

包含如下属性的Object:

Name Type Default Description
pointColor ColorObj new ColorObj(0.0,1.0,1.0,1.0) optional

点颜色。

pointSize Number 5 optional

点大小。

horizontalMeasureLineColor ColorObj new ColorObj(0.8,0.0,0.0,1.0) optional

线颜色。

lineWidth Number 2 optional

线宽度。

isTextVisible Boolean true optional

是否显示文字,默认为false。如为false,则TextLiftUp和Style配置都无效。

textLiftUp Number 0 optional

文字抬高高度。

isDepthTest Boolean false optional

是否开启深度测试。

isWorld Boolean false optional

传入的坐标是否是世界坐标。

isGuideLine Boolean false optional

是否开启辅助线。

guideLineWidth Number 2.0 optional

辅助线宽度,范围1-10之间。

guideLineColor ColorObj new ColorObj(1.0,1.0,0.0,1.0) optional

辅助线颜色。

guideLineStipple Number -1 optional

辅助线显示样式,可控制实线/虚线显示,取值范围-32768-32767之间,-1为实线。

nonIntersectArray Array.<EnumLayer> [EnumLayer.ANALYSIS] optional

测量与场景哪些类型图层数据不相交。默认为分析类,即与除分析之外所有图层数据都相交。

loadPointArray Array.<PositionObj> null optional

预设加载点集合,不设置的情况下为通过鼠标点击进行绘制。

analysisTextSymbol AnalysisTextSymbol new AnalysisTextSymbol() optional

测量显示文字符号对象。

callback NNCallback | String "none" optional

测量完成时回调绑定函数。

screen CooMap | ScreenObj null optional

所属窗口,默认为CooMap所拥有的主窗口。

Example:
// 最简单的写法
var measureLayer = new CooSDK.HorizontalMeasure();

// 或者根据自身需求设置参数
var measureLayer = new CooSDK.HorizontalMeasure({
     // 如设置loadPointArray参数,则通过参数创建测量,否则通过鼠标在场景点击来创建
     loadPointArray: [
         new CooSDK.PositionObj(120.218457622274, 30.210508347231, 90.860610589385),
         new CooSDK.PositionObj(120.219090168892, 30.210346858516, 92.299945374019)
     ],
     analysisTextSymbol: {
         size: 140,
         fillingColor: new CooSDK.ColorObj(0.0, 1.0, 1.0, 1.0),
         isHorizontal: true
     }
});
Demo:

Members

analysisTextSymbol : AnalysisTextSymbol

获取或者设置文字Symbol。

Default Value: new AnalysisTextSymbol()

callback : NNCallback|String

获取或者设置水平距离测量完成时回调事件绑定的函数,若取消原先绑定的函数,则赋值为"none"。

Default Value: "none"

guideLineColor : ColorObj

获取或者设置辅助线颜色。

Default Value: new ColorObj(1.0,1.0,0.0,1.0)

guideLineStipple : Number

获取或者设置辅助线显示样式,可控制实线/虚线显示,取值范围-32768-32767之间,-1为实线。

Default Value: -1

guideLineWidth : Number

获取或者设置辅助线宽度,范围1-10之间。

Default Value: 2.0

horizontalMeasureLineColor : ColorObj

获取或者设置水平测量线颜色(RGBA)。

Default Value: new ColorObj(0.8,0.0,0.0,1.0)

isDepthTest : Boolean

获取或者设置测量是否开启深度测试。

Default Value: false

isGuideLine : Boolean

获取或者设置是否开启辅助线。

Default Value: false

isTextVisible : Boolean

获取或者设置测量文字显示状态。

Default Value: true

isWorld : Boolean

获取或者设置传入的坐标是否是世界坐标。

Default Value: false

lineWidth : Number

获取或者设置测量线宽度。

Default Value: 2

loadPointArray : Array.<PositionObj>

获取或者设置预设点集。

Default Value: null

nonIntersectArray : Array.<EnumLayer>

获取或者设置测量与场景哪些类型图层数据不相交。默认为分析类,即与除分析之外所有图层数据都相交

Default Value: [EnumLayer.ANALYSIS]

pointColor : ColorObj

获取或者设置测量点颜色。

Default Value: new ColorObj(0.0,1.0,1.0,1.0)

pointSize : Number

获取或者设置测量点大小。

Default Value: 5

screen : CooMap|ScreenObj

获取或者设置所属窗口,默认为CooMap所拥有的主窗口。

Default Value: null

textLiftUp : Number

获取或者设置文字抬高高度。

Default Value: 0.0

Methods

deserialize(url)HorizontalMeasure

Name Type Description
url String

反序列化文件保存路径,支持本地路径和网络路径。

Returns:

水平距离测量对象。

destroy()

从场景中销毁自身。

Returns:

null 空值。

Example:
// 销毁对象
measureLayer = measureLayer.destroy();

getResult(name, reCallback)String|FDTObject

根据指定参数获取测量结果。

Name Type Description
name EnumMeasureHorizontal

查询参数。

reCallback CBCallback optional

非IE时可传入:需传递的回调函数,返回查询结果。

Returns:

查询结果。IE:String类型;非IE:FDTObject对象。

Examples:
// IE浏览器写法:
// 获取分析结果
var result = measureLayer.getResult(CooSDK.EnumMeasureHorizontal.CLICKPOS);
console.log(result);
// 非IE浏览器写法:
// 获取分析结果
measureLayer.getResult(CooSDK.EnumMeasureHorizontal.CLICKPOS, function(result){
     console.log(result);
});

serialize(url)

Name Type Description
url String

序列化文件保存路径,仅支持本地路径。

update(props)

更新单个或者多个对象属性,使之立即生效。

一般用于多个属性的同时更新,避免性能开销过大。

Name Type Description
props Object optional

包含如下属性的Object:

Name Type Description
pointColor ColorObj optional

点颜色。

pointSize Number optional

点大小。

horizontalMeasureLineColor ColorObj optional

线颜色。

lineWidth Number optional

线宽度。

isTextVisible Boolean optional

是否显示文字,默认为false。如为false,则TextLiftUp和Style配置都无效。

textLiftUp Number optional

文字抬高高度。

isDepthTest Boolean optional

是否开启深度测试。

isWorld Boolean optional

传入的坐标是否是世界坐标。

isGuideLine Boolean optional

是否开启辅助线。

guideLineWidth Number optional

辅助线宽度,范围1-10之间。

guideLineColor ColorObj optional

辅助线颜色。

guideLineStipple Number optional

辅助线显示样式,可控制实线/虚线显示,取值范围-32768-32767之间,-1为实线。

nonIntersectArray Array.<EnumLayer> optional

测量与场景哪些类型图层数据不相交。默认为分析类,即与除分析之外所有图层数据都相交。

loadPointArray Array.<PositionObj> optional

预设加载点集合,不设置的情况下为通过鼠标点击进行绘制。

analysisTextSymbol AnalysisTextSymbol optional

测量显示文字符号对象。

callback NNCallback | String optional

测量完成时回调绑定函数。

Example:
// 更新测量属性
measureLayer.update({
   isDepthTest : true
});