BuildingIntervalMeasure

new CooSDK.BuildingIntervalMeasure(props)

建筑间距测量对象,对三维空间中两建筑之间距离进行测量。


建筑间距测量效果图
Name Type Description
props Object optional

包含如下属性的Object:

Name Type Default Description
analysisTextSymbol AnalysisTextSymbol new AnalysisTextSymbol() optional

测量显示文字符号对象。

callback NNCallback | String "none" optional

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

endDistance Number 0 optional

终点立面移动距离,向外为负,向内为正。默认0。

endPos PositionObj null optional

终止点坐标。

isDepthTest Boolean false optional

是否开启深度测试。

isJoinPick Boolean true optional

是否可以被拾取。

isTextVisible Boolean true optional

是否显示文字。

isWorld Boolean false optional

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

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

线颜色。

lineWidth Number 2.0 optional

线宽度。

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

点颜色。

pointSize Number 5 optional

点大小。

polygonColor ColorObj new ColorObj(0.5,0.6,0,0.4) optional

立面颜色。

polygonHeight Number 100 optional

立面高度。

polygonLineColor ColorObj new ColorObj(0,1,0,1) optional

立面边框颜色。

polygonWidth Number 100 optional

立面宽度。

screen CooMap | ScreenObj null optional

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

startDistance Number 0 optional

起始立面移动距离,向外为负,向内为正。默认0。

startPos PositionObj null optional

起始点坐标。

textLiftUp Number 0.0 optional

文字抬高高度。

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

// 或者根据自身需求设置参数
var measureLayer = new CooSDK.BuildingIntervalMeasure({
     isWorld: false,
     // 如设置startPos及endPos参数,则通过参数创建测量,否则通过鼠标在场景点击来创建
     startPos: new CooSDK.PositionObj(120.219242353720, 30.210340553464, 55.600383758545),
     endPos: new CooSDK.PositionObj(120.219968835529, 30.210794305853, 55.600383758545),
     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"

endDistance : Number

获取或者设置终点立面移动距离,向外为负,向内为正。

Default Value: 0.0

endPos : PositionObj

获取或者设置终止点坐标。

Default Value: null

isDepthTest : Boolean

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

Default Value: false

isJoinPick : Boolean

获取或者设置是否可以被拾取。

Default Value: true

isPickPolygon : Boolean

获取或者设置开启拾取后,是否可以点击立面并调整其位置。

Default Value: false

isTextVisible : Boolean

获取或者设置是否显示文字。

Default Value: true

isWorld : Boolean

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

Default Value: false

lineColor : ColorObj

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

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

lineWidth : Number

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

Default Value: 2.0

pickColor : ColorObj

获取或者设置拾取高亮颜色(RGBA)。

Default Value: new ColorObj(1.0,1.0,0,0.5)

pointColor : ColorObj

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

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

pointSize : Number

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

Default Value: 5

polygonColor : ColorObj

获取或者设置立面颜色(RGBA)。

Default Value: new ColorObj(0.5,0.6,0,0.4)

polygonHeight : Number

获取或者设置立面高度,单位:米。

Default Value: 100

polygonLineColor : ColorObj

获取或者设置立面边框颜色(RGBA)。

Default Value: new ColorObj(0,1,0,1)

polygonWidth : Number

获取或者设置立面宽度,单位:米。

Default Value: 100

screen : CooMap|ScreenObj

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

Default Value: null

startDistance : Number

获取或者设置起始立面移动距离,向外为负,向内为正。

Default Value: 0.0

startPos : PositionObj

获取或者设置起始点坐标。

Default Value: null

textLiftUp : Number

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

Default Value: 0.0

Methods

deserialize(url)BuildingIntervalMeasure

Name Type Description
url String

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

Returns:

建筑间距测量对象。

destroy()

从场景中销毁自身。

Returns:

null 空值。

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

getResult(name, reCallback)String

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

Name Type Description
name EnumMeasureBuildingInterval

查询参数。

reCallback CBCallback optional

可传递的回调函数,返回测量查询。

Returns:

测量查询结果。

Example:
// 获取分析结果
var result = measureLayer.getResult(CooSDK.EnumMeasureBuildingInterval.STARTPOS);
console.log(result);

serialize(url)

Name Type Description
url String

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

update(props)

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

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

Name Type Description
props Object optional

包含如下属性的Object:

Name Type Description
analysisTextSymbol AnalysisTextSymbol optional

测量显示文字符号对象。

callback NNCallback | String optional

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

endDistance Number optional

终点立面移动距离,向外为负,向内为正。默认0。

endPos PositionObj optional

终止点坐标。

isDepthTest Boolean optional

是否开启深度测试。

isJoinPick Boolean optional

是否可以被拾取。

isPickPolygon Boolean optional

开启拾取后,是否可以点击立面并调整其位置。

isTextVisible Boolean optional

是否显示文字。

isWorld Boolean optional

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

lineColor ColorObj optional

线颜色。

lineWidth Number optional

线宽度。

pickColor ColorObj optional

拾取高亮颜色。

pointColor ColorObj optional

点颜色。

pointSize Number optional

点大小。

polygonColor ColorObj optional

立面颜色。

polygonHeight Number optional

立面高度。

polygonLineColor ColorObj optional

立面边框颜色。

polygonWidth Number optional

立面宽度。

startDistance Number optional

起始立面移动距离,向外为负,向内为正。默认0。

startPos PositionObj optional

起始点坐标。

textLiftUp Number optional

文字抬高高度。

Example:
// 更新测量属性
measureLayer.update({
     isPickPolygon: true,
     pickColor: new CooSDK.ColorObj(1, 0, 0, 0.4),
     analysisTextSymbol: {
         size: 200,
         fillingColor: new CooSDK.ColorObj(1, 1, 0, 1),
         isHorizontal: true,
         measureUnit: CooSDK.EnumMeasureUnit.METER,
         language: CooSDK.EnumLanguage.ENG
     }
});