- Author:
-
Example:
function callBack(measureResult){
}
var measureAreaTool = new Cesium.MeasureAreaTool(viewer,
{
callBack:callBack,
isTerrain:true,
xPaneNum:32,
yPaneNum:32,
scaleByDistance: function(height) {
if (height < 30) {
return new NearFarScalar(30, 3, 180, 0);
} else if (height < 60) {
return new NearFarScalar(60, 3, 360, 0);
} else if (height < 120) {
return new NearFarScalar(120, 3, 720, 0);
} else if (height < 240) {
return new NearFarScalar(240, 2, 1200, 0);
} else if (height < 480) {
return new NearFarScalar(480, 2, 2400, 0);
} else if (height < 960) {
return new NearFarScalar(960, 2, 4800, 0);
} else if (height < 1920) {
return new NearFarScalar(1920, 2, 9600, 0);
} else if (height < 3840) {
return new NearFarScalar(3840, 2, 19200, 0);
} else if (height < 7680) {
return new NearFarScalar(7680, 2, 38400, 0);
} else if (height < 15360) {
return new NearFarScalar(15360, 2, 76800, 0);
} else if (height < 30720) {
return new NearFarScalar(30720, 2, 153600, 0);
} else if (height < 61440) {
return new NearFarScalar(61440, 2, 307200, 0);
} else if (height < 122880) {
return new NearFarScalar(122880, 2, 614400, 0);
} else if (height < 245760) {
return new NearFarScalar(245760, 2, 1228800, 0);
} else if (height < 491520) {
return new NearFarScalar(491520, 2, 2457600, 0);
} else if (height < 983040) {
return new NearFarScalar(983040, 2, 4915200, 0);
} else if (height < 1966080) {
return new NearFarScalar(1966080, 2, 9830400, 0);
} else if (height < 3932160) {
return new NearFarScalar(3932160, 1, 19660800, 0);
} else if (height < 7864320) {
return new NearFarScalar(7864320, 1, 39321600, 0);
} else if (height < 15728640) {
return new NearFarScalar(15728640, 1, 78643200, 0);
}
return new NearFarScalar(15728640, 1, 78643200, 0);
}
});
measureAreaTool.startTool(); //开始测量
//measureAreaTool.stopTool(); //结束测量