|
@@ -128,6 +128,10 @@ export default {
|
|
|
power_wj_23:[]
|
|
|
}; //当前无极网格
|
|
|
let currentRealPowerLevel = null; //当前无极网格层级
|
|
|
+ let ScaleHandleCubeHeight = {
|
|
|
+ minZ:null,
|
|
|
+ maxZ:null
|
|
|
+ }
|
|
|
let popupEnabled = false;
|
|
|
onMounted(() =>{
|
|
|
bus.on('CreateMap',() =>{
|
|
@@ -219,6 +223,9 @@ export default {
|
|
|
case "ShowLayersWithScaleEvents":
|
|
|
showLayersWithScaleEvents(params);
|
|
|
break;
|
|
|
+ case "ChangeScaleEventCubeHeight":
|
|
|
+ changeScaleEventCubeHeight(params);
|
|
|
+ break;
|
|
|
case "ViewshedAnalysis":
|
|
|
viewshedAnalysis(params);
|
|
|
break;
|
|
@@ -872,9 +879,32 @@ export default {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ function checkCubeHeight(level, min,max){
|
|
|
+ if(currentRealPowerLevel != level){
|
|
|
+ ScaleHandleCubeHeight.minZ = min;
|
|
|
+ ScaleHandleCubeHeight.maxZ = max;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ function changeScaleEventCubeHeight(params){
|
|
|
+ let minZ = params.minZ;
|
|
|
+ let maxZ = params.maxZ;
|
|
|
+ showThreeCubeDetail({
|
|
|
+ "id": "power_wj" + currentRealPowerLevel,
|
|
|
+ "status": "hide",
|
|
|
+ })
|
|
|
+ ScaleHandleCubeHeight = {
|
|
|
+ minZ:minZ,
|
|
|
+ maxZ: maxZ
|
|
|
+ }
|
|
|
+ showCubeWithScaleEventsReturn(m_view.scale);
|
|
|
+ }
|
|
|
|
|
|
//不同比例尺加载网格
|
|
|
function showCubeWithScaleEventsReturn(scaleValue){
|
|
|
+ debugger
|
|
|
+ let minZ,maxZ,heightRange;
|
|
|
switch (true) {
|
|
|
case (scaleValue > 1500000): //15级以上隐藏
|
|
|
getCurrentRealPower({
|
|
@@ -894,6 +924,7 @@ export default {
|
|
|
currentRealPowerLevel = null;
|
|
|
break;
|
|
|
case (scaleValue <= 1500000 && scaleValue > 300000): //15级
|
|
|
+ checkCubeHeight(15, 0,1000);
|
|
|
currentRealPowerLevel = 15;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -901,13 +932,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 1000,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 15,
|
|
|
size:{ x: 1582.2726823222256, y: 1856.6079667204758, z: 1724.5956527210265 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 300000 && scaleValue > 150000): //16级
|
|
|
+ checkCubeHeight(16, 0,500);
|
|
|
currentRealPowerLevel = 16;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -915,13 +947,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 500,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 16,
|
|
|
size:{ x: 844.8477050379952, y: 990.1345935064928, z: 862.239544684298 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 150000 && scaleValue > 100000): //17级
|
|
|
+ checkCubeHeight(17, 0,200);
|
|
|
currentRealPowerLevel = 17;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -929,13 +962,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 200,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 17,
|
|
|
size:{ x: 424.0518521273334, y: 492.09123171765896, z: 431.1052029077298 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 100000 && scaleValue > 40000): //18级
|
|
|
+ checkCubeHeight(18, 0,100);
|
|
|
currentRealPowerLevel = 18;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -943,13 +977,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 100,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 18,
|
|
|
size:{ x: 211.66439868324142, y: 246.49964316944533, z: 215.5489592181181 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 40000 && scaleValue > 15000): //19级
|
|
|
+ checkCubeHeight(19, 0,100);
|
|
|
currentRealPowerLevel = 19;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -957,13 +992,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 100,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 19,
|
|
|
size:{ x: 105.79869494173579, y: 123.19232219036257, z: 107.77356906534683 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 15000 && scaleValue > 6000): //20级
|
|
|
+ checkCubeHeight(20, 0,50);
|
|
|
currentRealPowerLevel = 20;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -971,13 +1007,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 50,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 20,
|
|
|
size:{ x: 52.887881893650956, y: 61.627412608112536, z: 53.887012166300096 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 6000 && scaleValue > 3000): //21级
|
|
|
+ checkCubeHeight(21, 0,50);
|
|
|
currentRealPowerLevel = 21;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -985,13 +1022,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 30,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 21,
|
|
|
size:{ x: 26.44107169853396, y: 30.815525255577086, z: 26.943221541824816 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 3000 && scaleValue > 1500): //22级
|
|
|
+ checkCubeHeight(22, 0,30);
|
|
|
currentRealPowerLevel = 22;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -999,13 +1037,14 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 30,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 22,
|
|
|
size:{ x: 13.222978864358083, y: 15.406742669116284, z: 13.471596544164798 }
|
|
|
})
|
|
|
break;
|
|
|
case (scaleValue <= 1500): //23级
|
|
|
+ checkCubeHeight(23, 90,120);
|
|
|
currentRealPowerLevel = 23;
|
|
|
getCurrentRealPower({
|
|
|
status:"show",
|
|
@@ -1013,8 +1052,8 @@ export default {
|
|
|
fields:["demographics","green","river","road","collision_buffer","no_fly_zone_buffer","clear_zone_buffer"],
|
|
|
center:m_view.center,
|
|
|
radius: (m_view.extent.xmax - m_view.extent.xmin) > (m_view.extent.ymax - m_view.extent.ymin) ? (m_view.extent.xmax - m_view.extent.xmin) : (m_view.extent.ymax - m_view.extent.ymin),
|
|
|
- minZ: 0,
|
|
|
- maxZ: 30,
|
|
|
+ minZ: ScaleHandleCubeHeight.minZ,
|
|
|
+ maxZ: ScaleHandleCubeHeight.maxZ,
|
|
|
level: 23,
|
|
|
size:{ x: 6.7358, y: 7.7024, z: 6.6111 }
|
|
|
})
|