1. MeasureTools
测量工具,可实现距离、高度、面积和三角测量
1.1. new MeasureTools(geomap)
Param | Type | Description |
---|---|---|
geomap | GeoMap | GeoMap对象 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
1.2. 方法
1.2.1. measureTools.drawDistance(options,[okHandler], [cancelHandler])
绘制距离
Param | Type | Description |
---|---|---|
options | Object |
包含以下参数的Object对象 |
[options.color] | Color |
线颜色 默认皇家蓝 |
[options.width] | Number |
线宽 默认1.0 |
[options.opacity] | Number |
线透明度 默认1.0 |
[options.clampToGround] | Boolean |
是否贴地 默认false |
[okHandler] | function |
绘制成功后的回调 |
[cancelHandler] | function |
选点不足2个右键取消绘制后的回调 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.drawDistance(options, okHandler);
1.2.2. measureTools.clearDistance()
清除距离绘制
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.clearDistance();
1.2.3. measureTools.drawArea(options, [okHandler], [cancelHandler])
绘制面积
Kind : instance method of MeasureTools
Param | Type | Description |
---|---|---|
options | Object |
包含以下参数的Object对象 |
[options.color] | Color |
面颜色 默认皇家蓝 |
[options.opacity] | Number |
面透明度 默认0.5 |
[okHandler] | function |
绘制成功后的回调 |
[cancelHandler] | function |
选点不足2个右键取消绘制后的回调 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.drawArea(options, okHandler, cancelHandler);
1.2.4. measureTools.clearArea()
清除面积绘制
Kind : instance method of MeasureTools
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.clearArea();
1.2.5. measureTools.drawHeight(options, [okHandler], [cancelHandler])
测高
Param | Type | Description |
---|---|---|
options | Object |
包含以下参数的Object对象 |
[options.color] | Color |
线颜色 默认皇家蓝 |
[options.opacity] | Number |
线透明度 默认1.0 |
[okHandler] | function |
绘制成功后的回调 |
[cancelHandler] | function |
选点不足2个右键取消绘制后的回调 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.drawHeight(options, okHandler);
1.2.6. measureTools.clearHeight()
清除测高绘制
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.clearHeight();
1.2.7. measureTools.drawTri(options,[okHandler], [cancelHandler])
三角测量
Param | Type | Description |
---|---|---|
options | Object |
包含以下参数的Object对象 |
[options.color] | Color |
线颜色 默认皇家蓝 |
[options.opacity] | Number |
线透明度 默认1.0 |
okHandler | function |
绘制成功后的回调 |
cancelHandler | function |
选点不足3个右键取消绘制后的回调 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.drawTri(options, okHandler);
1.2.8. measureTools.clearTri()
清除三角测量
Kind : instance method of MeasureTools
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.clearTri();
1.2.9. measureTools.clearEntityById(objId)
根据entity的ID清除绘制的Entity
Param | Type | Description |
---|---|---|
objId | Number |
entity的id |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.clearEntityById(objId);
1.2.10. measureTools.addPoint(position, options)
添加绘制点
Param | Type | Description |
---|---|---|
position | Cartesian3 |
位置坐标 |
options | Object |
属性信息 |
[options.color] | Color |
线颜色 默认皇家蓝 |
[options.opacity] | Number |
线透明度 默认1.0 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.addPoint(position, options);
1.2.11. measureTools.computeCenter(prePoint, nextPoint) ⇒ Cartesian3
计算中心点
Returns : Cartesian3
-
中心点
Param | Type | Description |
---|---|---|
prePoint | Cartesian3 |
上一个点 |
nextPoint | Cartesian3 |
下一个点 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.computeCenter(prePoint, nextPoint);
1.2.12. measureTools.calcArea() ⇒ String
计算面积
Returns : String
-
返回计算的面积大小,但面积小于1000000㎡时输出单位为㎡,否则单位为k㎡
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
let aera = measureTool.calcArea();
1.2.13. measureTools.calcAngle(p1, p2, p3) ⇒ Number
计算角度,三点按顺序连线构成的角度值
Returns : Number
-
返回角度值
Param | Type | Description |
---|---|---|
p1 | Cartesian3 |
三维笛卡尔坐标 |
p2 | Cartesian3 |
三维笛卡尔坐标 |
p3 | Cartesian3 |
三维笛卡尔坐标 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
let angle = measureTool.calcAngle(p1, p2, p3);
1.2.14. measureTools.getPrimitiveListById(objId)
根据绘制记录id获取记录图元集合包括:(line、billboard、LabelPlot)或 (line、polygon、billboard、LabelPlot)
Returns : Array<Primitive>
-
图元集合
Param | Type | Description |
---|---|---|
objId | String |
绘制记录的ID |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.drawDistance({
width: 3,
clampToGround: false //是否贴地
}, function (obj) {
let primitiveList = measureTool.getPrimitiveListById(obj.id)
}, function () {
console.log("退出距离测量")
});
1.2.15. measureTools.updateClampToGround(clampToGround,objId)
更新绘制的距离和面积记录是否贴地
Param | Type | Description |
---|---|---|
clampToGround | Boolean |
是否贴地 |
objId | String |
实例的id 未传默认为正在绘制的距离或面积实例 |
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.drawDistance({
width: 3,
clampToGround: false //是否贴地
}, function (obj) {
tool.updateClampToGround(true, obj.id)
}, function () {
console.log("退出距离测量")
});
1.2.16. measureTools.clear()
清除所有绘制记录
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
measureTool.clear();
1.2.17. measureTools.destroy()
清除所有记录,销毁绘制工具
Example
var measureTool = new BOSGeo.MeasureTools(geomap);
let res = measureTool.destroy();