cc8568a9 by 刘远

jikai commit

1 parent 1c92db51
...@@ -51,7 +51,7 @@ ...@@ -51,7 +51,7 @@
51 data:{username:'案件查处',password:'123'}, 51 data:{username:'案件查处',password:'123'},
52 success:(res) => { 52 success:(res) => {
53 // window.open(`http://10.6.144.88:10001/frontweb/index.jsp?type=${label}`) 53 // window.open(`http://10.6.144.88:10001/frontweb/index.jsp?type=${label}`)
54 window.open(`http://192.168.5.143:80/frontweb/index.jsp?type=${label}`) 54 window.open(`http://192.168.3.194:80/frontweb/index.jsp?type=${label}`)
55 }, 55 },
56 fail: () => { 56 fail: () => {
57 57
......
1 // 左侧 资源目录 组件
2 <template>
3 <div>
4 <div class="container">
5 <el-card>
6 <div slot="header" class="clearfix">
7 <span>查询列表</span>
8 <el-button type="primary" style="float:right;" size="mini" @click="createQue">新建查询</el-button>
9 </div>
10 <div id="list">
11 <div v-for="o in data" :key="o.id" class="textItem" @click="showProject(o)">
12 <p>{{o.taskname}}</p>
13 <p>
14 {{new Date(o.starttime) | time}}
15 <i class="el-icon-delete"></i>
16 <i class="el-icon-folder"></i>
17 <i class="el-icon-edit-outline"></i>
18 <i class="el-icon-success"></i>
19 </p>
20 </div>
21 </div>
22 </el-card>
23 </div>
24
25 <div class="newquery" ref="newquery">
26 <el-card style="border:none;">
27 <div slot="header" class="clearfix">
28 <span>新建查询</span>
29 <i class="el-icon-close" @click="close('newquery')"></i>
30 </div>
31 <div>
32 <p>
33 <el-button type="primary" style="margin-right:16px;">导入文件</el-button>
34 <i class="bluecls">(仅支持shp、dxf、text格式文件)</i>
35 </p>
36 <p>
37 <i class="whitecls">地块: </i>
38 <el-select v-model="value" placeholder="请选择">
39 <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
40 </el-option>
41 </el-select>
42 <el-button type="primary" style="margin-left:64px;">建设项目数据</el-button>
43 </p>
44 <p>
45 <i class="whitecls">1. </i>
46 <i class="whitecls">X : </i>
47 <el-input v-model="input"></el-input>
48 <i class="whitecls">Y : </i>
49 <el-input v-model="input"></el-input>
50 <i class="el-icon-thumb redcls"></i>
51 <i class="el-icon-delete redcls"></i>
52 </p>
53 <p>
54 <i class="whitecls">2. </i>
55 <i class="whitecls">X : </i>
56 <el-input v-model="input"></el-input>
57 <i class="whitecls">Y : </i>
58 <el-input v-model="input"></el-input>
59 <i class="el-icon-thumb redcls"></i>
60 <i class="el-icon-delete redcls"></i>
61 </p>
62 <p>
63 <i class="whitecls">3. </i>
64 <i class="whitecls">X : </i>
65 <el-input v-model="input"></el-input>
66 <i class="whitecls">Y : </i>
67 <el-input v-model="input"></el-input>
68 <i class="el-icon-thumb redcls"></i>
69 <i class="el-icon-delete redcls"></i>
70 </p>
71 <p>
72 <i class="whitecls">4. </i>
73 <i class="whitecls">X : </i>
74 <el-input v-model="input"></el-input>
75 <i class="whitecls">Y : </i>
76 <el-input v-model="input"></el-input>
77 <i class="el-icon-thumb redcls"></i>
78 <i class="el-icon-delete redcls"></i>
79 </p>
80 <p>
81 <el-button type="primary" style="margin-right:16px;">添加</el-button>
82 <el-button type="info" style="margin-right:16px;">清空</el-button>
83 </p>
84 <p>
85 <i class="bluecls">西安市坐标范围</i>
86 <i class="redcls">(国家2000坐标系)</i>
87 </p>
88 <p>
89
90 </p>
91 <p class="foot">
92 <el-button type="primary" style="margin-right:16px;">提交</el-button>
93 <el-button type="info" style="margin-right:16px;">取消</el-button>
94 </p>
95 </div>
96 </el-card>
97 </div>
98
99 <div class="project" ref="project">
100 <el-card style="border:none;">
101 <div slot="header" class="clearfix">
102 <span>项目</span>
103 <i class="el-icon-close" @click="close('project')"></i>
104 </div>
105 <p>
106 <el-button type="primary" style="margin-right:16px;">
107 <i class="el-icon-download whitecls"></i>导出WORD
108 </el-button>
109 <el-button type="primary" style="margin-right:16px;">
110 <i class="el-icon-download whitecls"></i>导出PDF
111 </el-button>
112 </p><br/>
113 <div class="flex-container">
114 <div class="flex-left">
115 <p>
116 <i class="bluecls">总面积: </i>
117 <el-input v-model="input"></el-input>
118 </p>
119 <p v-for="o in formData" :key="o.id">
120 <i class="bluecls">{{ o.layername }}: </i>
121 <el-input v-if="['textarea']" type="textarea" :value="textareaValue(o['textresult'])"></el-input>
122 <el-input v-else :value="textareaValue(o['textresult'])"></el-input>
123 </p>
124 </div>
125 <div class="flex-right">
126 <div v-for="o in formData" :key="o.id">
127 <div class="mapTitle">{{ o.layername }}</div>
128 <div v-if="!o.showpicture" class="mapImage">
129 {{ textareaValue(o['textresult']) }}
130 </div>
131 <img v-else-if="o.pictureresult" :src="'data:image/jpg;base64,' + o.pictureresult" class="mapImage">
132 </div>
133 </div>
134 </div>
135 </el-card>
136 </div>
137
138 </div>
139 </template>
140
141 <script>
142 import responseData from '../assets/js/map/responseData';
143 import graphicAnalyze from '../assets/js/json/graphicAnalyze';
144 export default {
145 name: 'leftAssert',
146 components: {
147 },
148 data() {
149 return {
150 data: [],
151 options: [{
152 value: '0',
153 label: '地块一'
154 }, {
155 value: '1',
156 label: '地块二'
157 }],
158 input: '',
159 formData: []
160 }
161 },
162 filters: {
163 time: function time(value) {
164 var now = new Date(value),
165 y = now.getFullYear(),
166 m = now.getMonth() + 1,
167 d = now.getDate();
168 return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8);
169 }
170 },
171 mounted() {
172 responseData.data ? this.data = responseData.data :
173 this.$http.get('http://192.168.3.194/XAYZT/analizeTask/getTaskListByUserId?userid='
174 + responseData.id + '&pageIndex=' + responseData.pageIndex + '&pageSize='
175 + responseData.pageSize).then(response => {
176 response.status === 200 && (this.data = responseData.data = response.data.data)
177 });
178 },
179 methods: {
180 createQue() {
181 this.$refs.newquery.style.display = 'block';
182 },
183 showProject(o) {
184 this.$http.get('http://192.168.3.194/XAYZT/analizeTask/layerAnalizeResult?taskid=b2098e7941f540f393884881113cb00f').then(response => {
185 if(response.status !== 200) return;
186 this.formData = [];
187 let data = response.data.data.analizeResultList, dataArray = [], i = 0, o;
188 for( ; o = data[i++] ; ) {
189 var layer = this.eachAnalyzeConifg('alias', o.layername);
190 this.formData.push({
191 id: o.id,
192 taskid: o.taskid,
193 textarea: !!layer.textarea,
194 textshow: true,
195 layername: o.layername,
196 textresult: o.textresult,
197 showpicture: true,
198 pictureresult: o.pictureresult
199 })
200 }
201 this.$refs.project.style.display = 'block';
202 });
203 },
204 close(a) {
205 this.$refs[a].style.display = 'none';
206 },
207 eachAnalyzeConifg: function (key, value) {
208 let layers = graphicAnalyze.layers;
209 for (var index in layers) {
210 if ( layers[index][key] == value ) {
211 return layers[index];
212 }
213 }
214 },
215 textareaValue: function (value) {
216 if (!value) return "";
217 var content = [];
218 try {
219 var valObj = JSON.parse(value);
220 var valObjKeys = Object.keys(valObj);
221 for (var key in valObj) {
222 var resultStr = this.contentJoin(key, valObj[key]);
223 if (valObjKeys.length === 1) {
224 content.push(resultStr);
225 } else {
226 content.push(key + ": " + resultStr);
227 }
228 }
229 } catch (e) {
230 console.error(e);
231 return '分析出错';
232 }
233 return content.join("\n");
234 },
235 contentJoin: function (layername, textresult) {
236 var totalArea = 0,
237 areaObject = {},
238 yongdixingzhiArray = [];
239 for (var key in textresult) {
240 var value = textresult[key];
241 if (value.status === 'error') {
242 return '分析出错';
243 }
244 // 用地性质
245 var oldyongdixingzhi = value.用地性质 + '';
246 var yongdixingzhi = oldyongdixingzhi.replace(/[^\u4E00-\u9FA5]/g,'');
247 if (yongdixingzhiArray.indexOf(yongdixingzhi) === -1) {
248 yongdixingzhiArray.push(yongdixingzhi);
249 }
250 // 用地面积
251 var area = value.area;
252 var oldArea = areaObject[yongdixingzhi];
253 areaObject[yongdixingzhi] = oldArea === undefined ? area : (area + oldArea);
254 // 总面积
255 totalArea += area;
256 }
257
258 // 平方米转换为亩
259 totalArea = this.squaremeterToAcre(totalArea);
260 for (var key in areaObject) {
261 areaObject[key] = this.squaremeterToAcre(areaObject[key]);
262 }
263
264 // 根据分析图层显示分析结果
265 var resultStr = [];
266 switch (layername) {
267 case "详细规划":
268 case "过渡期适用图层":
269 yongdixingzhiArray.forEach(function (yongdixingzh) {
270 var yongdixingzhArea = areaObject[yongdixingzh];
271 if (yongdixingzhArea > 0.001) {
272 resultStr.push(yongdixingzh + ', ' + yongdixingzhArea + '亩。');
273 }
274 });
275 if (resultStr.length == 0) {
276 resultStr.push("未占用");
277 }
278 break;
279 case "停车场规划":
280 let _array = [];
281 yongdixingzhiArray.forEach(function (yongdixingzh) {
282 var yongdixingzhArea = areaObject[yongdixingzh];
283 if (yongdixingzhArea > 0.001) {
284 _array.push(yongdixingzh);
285 }
286 });
287 if (_array.length == 0) {
288 resultStr.push("未涉及停车场规划");
289 } else {
290 resultStr.push("涉及" + _array.join("、"));
291 }
292 break;
293 case "城市快速路体系":
294 if (yongdixingzhiArray.length == 0) {
295 resultStr.push("未涉及城市快速路");
296 } else {
297 resultStr.push("涉及" + yongdixingzhiArray.join("、"));
298 }
299 break;
300 case "铁路南环线":
301 if (yongdixingzhiArray.length == 0) {
302 resultStr.push("未涉及铁路南环线控制区域");
303 } else {
304 resultStr.push("涉及铁路南环线控制区域");
305 }
306 break;
307 case "地铁控制线":
308 if (totalArea < 0.001) {
309 resultStr.push("不在地铁控制线范围内");
310 } else {
311 resultStr.push("在地铁控制线范围内");
312 }
313 break;
314 case "公交场站规划(2018-2021年)":
315 if (totalArea < 0.001) {
316 resultStr.push("不在公交场站选址范围内");
317 } else {
318 resultStr.push("在公交场站选址范围内");
319 }
320 break;
321 case "生态控制红线":
322 if (totalArea < 0.001) {
323 resultStr.push("未占用");
324 } else {
325 resultStr.push("生态控制红线," + totalArea + "亩");
326 }
327 break;
328 case "基本农田保护区":
329 if (totalArea < 0.001) {
330 resultStr.push("未占用");
331 } else {
332 resultStr.push("基本农田," + totalArea + "亩");
333 }
334 break;
335 case "城市紫线":
336 case "城市绿线":
337 if (totalArea < 0.001) {
338 resultStr.push("未占用");
339 } else {
340 resultStr.push("占用");
341 }
342 break;
343 case "城市蓝线":
344 case "道路红线":
345 case "城市黄线":
346 if (yongdixingzhiArray.length === 0) {
347 resultStr.push("未占用");
348 } else {
349 resultStr.push("占用");
350 }
351 break;
352 case "影像地图":
353 resultStr.push("/");
354 break;
355 default:
356 yongdixingzhiArray.forEach(function (yongdixingzh) {
357 var yongdixingzhArea = areaObject[yongdixingzh];
358 if (yongdixingzhArea > 0.001) {
359 resultStr.push(yongdixingzh + ', ' + yongdixingzhArea + '亩。');
360 }
361 });
362 if (resultStr.length == 0) {
363 resultStr.push("未占用");
364 }
365 break;
366 }
367 return resultStr.join("\n");
368 },
369 squaremeterToAcre: function (number, fixed) {
370 if (number === 0) return '0';
371 var change1 = number*0.0015; // 转为亩
372 var change2 = change1.toFixed(fixed === undefined ? 3 : fixed); // 取小数点后三位数字
373 var change3 = change2.replace(/0+$/g,''); // 舍去最后的零
374 return change3;
375 }
376 }
377 }
378 </script>
379
380 <style>
381 .textItem {
382 font-size: 16px;
383 color:#5792C4;
384 border-radius: 6px;
385 padding: 8px;
386 font-weight:bold;
387 margin-bottom: 8px;
388 }
389 .textItem:hover {
390 background-color: cornsilk;
391 }
392 .textItem p {
393 height: 26px;
394 }
395 .textItem p > i {
396 font-size: 22px;
397 float: right;
398 margin-right: 10px;
399 }
400 .clearfix:before,
401 .clearfix:after {
402 display: table;
403 content: "";
404 }
405 .clearfix:after {
406 clear: both
407 }
408 .clearfix i {
409 float: right;
410 font-size: 22px;
411 }
412 .container {
413 opacity: 0.6;
414 }
415 .container .el-card {
416 background-color: #010101;
417 color: #fff;
418 transition: .3s;
419 width: 440px;
420 border:none;
421 height:834px;
422 }
423 .newquery {
424 opacity: 0.6;
425 top: 0px;
426 left: 450px;
427 position: absolute;
428 z-index: 1000;
429 display: none;
430 }
431 .newquery .el-card {
432 background-color: #010101;
433 color: #fff;
434 transition: .3s;
435 width: 540px;
436 border:none;
437 height:556px;
438 }
439 .project {
440 opacity: 0.6;
441 top: 0px;
442 left: 1000px;
443 position: absolute;
444 z-index: 1000;
445 display: none;
446 }
447 .project .el-card {
448 background-color: #010101;
449 color: #fff;
450 transition: .3s;
451 width: 864px;
452 border:none;
453 height:810px;
454 }
455 .newquery p {
456 height: 48px;
457 }
458 .project p {
459 height: auto;
460 }
461 .el-card .el-card__header {
462 padding: 14px 20px;
463 border: none;
464 box-sizing: border-box;
465 font-size: 18px;
466 font-weight: bold;
467 }
468 .el-card .el-card__body {
469 padding: 12px 6px 10px 6px;
470 }
471 /* 字体样式 */
472 .bluecls {
473 color: #0086E7;
474 font-size: 16px;
475 font-weight: bold;
476 margin-right: 14px;
477 }
478 .whitecls {
479 color: #fff;
480 font-size: 16px;
481 font-weight: bold;
482 margin-right: 5px;
483 margin-left: 5px;
484 }
485 .redcls {
486 margin-left:10px;
487 font-size:18px;
488 color:red;
489 }
490 .foot {
491 float: right;
492 }
493 p .el-input {
494 position: relative;
495 font-size: 14px;
496 display: inline-block;
497 width: 165px;
498 background-color: #000;
499 }
500 .el-input .el-input__inner {
501 -webkit-appearance: none;
502 background-color: #000;
503 background-image: none;
504 border-radius: 4px;
505 border: 1px solid #DCDFE6;
506 box-sizing: border-box;
507 color: #ffffff;
508 display: inline-block;
509 font-size: inherit;
510 height: 34px;
511 line-height: 40px;
512 outline: 0;
513 padding: 0 15px;
514 transition: border-color .2s cubic-bezier(.645,.045,.355,1);
515 width: 100%;
516 }
517 p .el-textarea {
518 position: relative;
519 display: inline-block;
520 width: 240px;
521 vertical-align: top;
522 font-size: 14px;
523 }
524 .el-textarea .el-textarea__inner {
525 display: block;
526 resize: vertical;
527 padding: 5px 15px;
528 line-height: 1.5;
529 box-sizing: border-box;
530 width: 100%;
531 height: 70px;
532 font-size: inherit;
533 color: #fff;
534 background-color: #000;
535 background-image: none;
536 border: 1px solid #DCDFE6;
537 border-radius: 4px;
538 transition: border-color .2s cubic-bezier(.645,.045,.355,1);
539 }
540 .flex-container {
541 display: -webkit-flex;
542 display: flex;
543 height: 680px;
544 }
545 .flex-left {
546 margin-top: 10px;
547 width: 60%;
548 height: 100%;
549 overflow-y: scroll;
550 }
551 .flex-right {
552 width: 40%;
553 height: 100%;
554 overflow-y: scroll;
555 }
556 .flex-left .el-input {
557 position: relative;
558 font-size: 14px;
559 display: inline-block;
560 width: 240px;
561 background-color: #000;
562 }
563 .flex-left p {
564 float: right;
565 margin: 4px 16px 4px 10px;
566 }
567 .flex-left::-webkit-scrollbar {
568 width : 10px;
569 height: 1px;
570 }
571 .flex-left::-webkit-scrollbar-thumb {
572 border-radius : 10px;
573 background-color: skyblue;
574 background-image: -webkit-linear-gradient(
575 45deg,
576 rgba(255, 255, 255, 0.2) 25%,
577 transparent 25%,
578 transparent 50%,
579 rgba(255, 255, 255, 0.2) 50%,
580 rgba(255, 255, 255, 0.2) 75%,
581 transparent 75%,
582 transparent
583 );
584 }
585 .flex-right::-webkit-scrollbar {
586 width : 10px;
587 height: 1px;
588 }
589 .flex-right::-webkit-scrollbar-thumb {
590 border-radius : 10px;
591 background-color: skyblue;
592 background-image: -webkit-linear-gradient(
593 45deg,
594 rgba(255, 255, 255, 0.2) 25%,
595 transparent 25%,
596 transparent 50%,
597 rgba(255, 255, 255, 0.2) 50%,
598 rgba(255, 255, 255, 0.2) 75%,
599 transparent 75%,
600 transparent
601 );
602 }
603 #list {
604 height: 740px;
605 overflow-y: scroll;
606 }
607 #list::-webkit-scrollbar {
608 width : 10px;
609 height: 1px;
610 }
611 #list::-webkit-scrollbar-thumb {
612 border-radius : 10px;
613 background-color: skyblue;
614 background-image: -webkit-linear-gradient(
615 45deg,
616 rgba(255, 255, 255, 0.2) 25%,
617 transparent 25%,
618 transparent 50%,
619 rgba(255, 255, 255, 0.2) 50%,
620 rgba(255, 255, 255, 0.2) 75%,
621 transparent 75%,
622 transparent
623 );
624 }
625 .mapTitle {
626 color: #0086E7;
627 font-size: 16px;
628 margin-right: 16px;
629 width: 100%;
630 text-align: center;
631 }
632 .mapImage {
633 /* margin: 8px auto; */
634 width: 100%;
635 height: 186px;
636 padding: 8px;
637 }
638 </style>
...\ No newline at end of file ...\ No newline at end of file
...@@ -31,27 +31,40 @@ ...@@ -31,27 +31,40 @@
31 })); 31 }));
32 let scene = viewer.scene 32 let scene = viewer.scene
33 scene.shadowMap.darkness = 1; //设置第二重烘焙纹理的效果(明暗程度) 33 scene.shadowMap.darkness = 1; //设置第二重烘焙纹理的效果(明暗程度)
34 scene.skyAtmosphere.brightnessShift=0.4; 34 scene.skyAtmosphere.brightnessShift = 0.4;
35 scene.debugShowFramesPerSecond = true; 35 scene.debugShowFramesPerSecond = true;
36 scene.hdrEnabled = false; 36 scene.hdrEnabled = false;
37 scene.sun.show = true; 37 scene.sun.show = true;
38 scene.lightSource.ambientLightColor = new Cesium.Color(0.65, 0.65, 0.65, 1);
39
38 this.$parent.draw = new createDraw(viewer); 40 this.$parent.draw = new createDraw(viewer);
39 this.$parent.viewer = viewer; 41 // this.$parent.viewer = viewer;
42 objectManage.viewer = viewer;
40 43
41 var promise = []; 44 var promise = [];
42 promise[0] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_BUILD, { 45 promise[0] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_BUILD, { name: 'build1' });
43 name: 'build1' 46 promise[1] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_BUILD, { name: 'build2' });
44 }); 47 promise[2] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_GROUND1, { name: 'ground' });
45 promise[1] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_BUILD, { 48 promise[3] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_LAKE, { name: 'lake' });
46 name: 'build2' 49 // promise[4] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_ROAD, { name: 'road' });
47 }); 50 // promise[5] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_BRIDGE, {name: 'bridge'});
48 promise[2] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_GROUND1, { 51 promise[4] = scene.addS3MTilesLayerByScp(URL_CONFIG.SCP_CBD_TREE, { name : 'tree'});
49 name: 'ground' 52 // promise[5] = scene.addS3MTilesLayerByScp(
50 }); 53 // 'http://localhost:8090/iserver/services/3D-scene/rest/realspace/datas/dcdata@dataSource/config',
54 // { name : 'dcdata'}
55 // );
56 // promise[6] = scene.addS3MTilesLayerByScp(
57 // 'http://localhost:8090/iserver/services/3D-scene/rest/realspace/datas/dcdata1@dataSource/config',
58 // { name : 'dcdata1'}
59 // );
51 60
52 Cesium.when.all(promise, layers => { 61 Cesium.when.all(promise, layers => {
62 layers[0].shadowType = 2;
53 layers[1].shadowType = 2; 63 layers[1].shadowType = 2;
54 layers[2].shadowType = 2; 64 layers[2].shadowType = 2;
65 layers[0].selectEnabled = false;
66 layers[1].selectEnabled = false;
67 layers[2].selectEnabled = false;
55 scene.camera.setView({ 68 scene.camera.setView({
56 destination : Cesium.Cartesian3.fromDegrees(116.44621857300415, 39.899281526734555, 216.7793905027196), 69 destination : Cesium.Cartesian3.fromDegrees(116.44621857300415, 39.899281526734555, 216.7793905027196),
57 orientation : { 70 orientation : {
......
...@@ -83,11 +83,11 @@ ...@@ -83,11 +83,11 @@
83 return { 83 return {
84 step: 1, 84 step: 1,
85 num: 1, 85 num: 1,
86 direction: 1, // 方向 86 direction: 180, // 方向
87 pitch: 1, // 翻转 87 pitch: 1, // 翻转
88 distance: 1, // 距离 88 distance: 320, // 距离
89 horizontalFov: 1, // 水平视场角 89 horizontalFov: 120, // 水平视场角
90 verticalFov: 1, // 垂直视场角 90 verticalFov: 90, // 垂直视场角
91 visibleAreaColor: 'red', // 可见区域颜色 91 visibleAreaColor: 'red', // 可见区域颜色
92 hiddenAreaColor: 'rgba(255, 69, 0, 0.68)', // 不可见区域颜色 92 hiddenAreaColor: 'rgba(255, 69, 0, 0.68)', // 不可见区域颜色
93 isXmbj: true, 93 isXmbj: true,
......
...@@ -32,28 +32,20 @@ ...@@ -32,28 +32,20 @@
32 </div> 32 </div>
33 33
34 <!-- <div class="func-input"> 34 <!-- <div class="func-input">
35 <div class="btn-wrapper2" :class="[isCF?'add-bg2': '']" @click="handleIsXmbj('isCF')">
36 <span class="center">春分</span>
37 </div>
38 <div class="btn-wrapper2" :class="[isXZ?'add-bg2': '']" @click="handleIsXmbj('isXZ')">
39 <span class="center">夏至</span>
40 </div>
41 <div class="btn-wrapper2" :class="[isQF?'add-bg2': '']" @click="handleIsXmbj('isQF')">
42 <span class="center">秋分</span>
43 </div>
44 <div class="btn-wrapper2" :class="[isLD?'add-bg2': '']" @click="handleIsXmbj('isLD')">
45 <span class="center">立冬</span>
46 </div>
47 <div class="btn-wrapper2" :class="[isDZ?'add-bg2': '']" @click="handleIsXmbj('isDZ')">
48 <span class="center">冬至</span>
49 </div>
50 </div> -->
51
52 <div class="func-input">
53 <span>时间间隔 </span> 35 <span>时间间隔 </span>
54 <el-input-number v-model="timeS" controls-position="right" :min="0" :max="1000" 36 <el-input-number v-model="timeS" controls-position="right" :min="0" :max="1000"
55 style="margin:0 12px; width: 245px;"></el-input-number> 37 style="margin:0 12px; width: 245px;"></el-input-number>
56 <span>分钟</span> 38 <span>分钟</span>
39 </div> -->
40
41 <div class="func-input">
42 <span>底部高程 </span>
43 <el-input v-model="bottomHeight" style="margin:0 12px; width: 245px;"></el-input>
44 </div>
45
46 <div class="func-input">
47 <span>拉伸高度 </span>
48 <el-input v-model="extrudeHeight" style="margin:0 12px; width: 245px;"></el-input>
57 </div> 49 </div>
58 50
59 <div class="" style="padding: 18px 24px 0px 24px;"> 51 <div class="" style="padding: 18px 24px 0px 24px;">
...@@ -82,15 +74,18 @@ ...@@ -82,15 +74,18 @@
82 <script> 74 <script>
83 let maxW = 24 * 60 * 60 * 1000 - 1 * 60 * 1000 75 let maxW = 24 * 60 * 60 * 1000 - 1 * 60 * 1000
84 import shadow from "../assets/js/map/shadow"; 76 import shadow from "../assets/js/map/shadow";
77 import objectManage from '../assets/js/map/maputils';
85 export default { 78 export default {
86 name: 'yyAnslysis', 79 name: 'yyAnslysis',
87 components: {}, 80 components: {},
88 data() { 81 data() {
89 return { 82 return {
90 anslysisTime: '', 83 anslysisTime: new Date(),
91 timeS: 30, // 时间间隔 84 timeS: 30, // 时间间隔
92 time: 0 * 60 * 60 * 1000, // 滑块时间 85 time: new Date().getHours() * 60 * 60 * 1000, // 滑块时间
93 max: (24 * 60 * 60 * 1000 - 1 * 60 * 1000), 86 max: (24 * 60 * 60 * 1000 - 1 * 60 * 1000),
87 bottomHeight: 20,
88 extrudeHeight: 20,
94 marks: { 89 marks: {
95 0: '0:00', 90 0: '0:00',
96 [maxW]: '23:59', 91 [maxW]: '23:59',
...@@ -113,6 +108,12 @@ ...@@ -113,6 +108,12 @@
113 this.$emit('closePop', 'yyAnslysis') 108 this.$emit('closePop', 'yyAnslysis')
114 }, 109 },
115 startAnalysis() { 110 startAnalysis() {
111 Object.assign(this.shadow, {
112 anslysisTime: this.anslysisTime,
113 bottomHeight: Number(this.bottomHeight),
114 extrudeHeight: Number(this.extrudeHeight)
115 });
116 this.shadow.remove();
116 this.shadow.handlerPolygon.deactivate(); 117 this.shadow.handlerPolygon.deactivate();
117 this.shadow.handlerPolygon.activate(); 118 this.shadow.handlerPolygon.activate();
118 }, 119 },
...@@ -133,7 +134,8 @@ ...@@ -133,7 +134,8 @@
133 }) 134 })
134 }, 135 },
135 EtimeChange() { 136 EtimeChange() {
136 137 this.anslysisTime.setHours(Math.round(this.time / 1000 / 60 / 60));
138 objectManage.viewer.clock.currentTime = Cesium.JulianDate.fromDate(this.anslysisTime);
137 }, 139 },
138 formatTooltip(val) { 140 formatTooltip(val) {
139 let nowTime = this.commons.dateZhuan('yyyy-MM-dd 00:00:00', new Date()); 141 let nowTime = this.commons.dateZhuan('yyyy-MM-dd 00:00:00', new Date());
......