| | |
| | | <div |
| | | class="changeTerrain" |
| | | @click="changeTerrainLayer" |
| | | style=" position: absolute; |
| | | bottom: 84px; |
| | | right: 46px; |
| | | height: 30px; |
| | | width: 30px; |
| | | z-index: 101; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | border: 1px solid rgba(255, 255, 255, 0.5);" |
| | | > |
| | | <div |
| | | title="地形切换" |
| | |
| | | <div |
| | | @click="changeMenulayer" |
| | | class="changeLayer" |
| | | style=" position: absolute; |
| | | bottom: 116px; |
| | | right: 46px; |
| | | height: 30px; |
| | | width: 30px; |
| | | z-index: 101; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | border: 1px solid rgba(255, 255, 255, 0.5);" |
| | | > |
| | | <div |
| | | title="底图切换" |
| | |
| | | <div |
| | | @click="changeMapType" |
| | | class="changeMapType" |
| | | style=" position: absolute; |
| | | bottom: 52px; |
| | | right: 46px; |
| | | height: 30px; |
| | | width: 30px; |
| | | z-index: 101; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | border: 1px solid rgba(255, 255, 255, 0.5);" |
| | | > |
| | | <div |
| | | title="2/3维切换" |
| | |
| | | <span>属性信息</span> |
| | | <div style="float: right; cursor: pointer"> |
| | | <el-link |
| | | v-if="$store.state.surfaceDeForm.flag && this.$store.state.surfaceDeForm.gid" |
| | | type="primary" |
| | | :underline="false" |
| | | @click="setSurfaceDeForm" |
| | | style="margin-right: 10px" |
| | | >地表形变时序图</el-link> |
| | | <el-link |
| | | v-if="$store.state.propertiesName.enName == 's_surveyworksite'" |
| | | type="primary" |
| | | :underline="false" |
| | |
| | | v-model="valueX" |
| | | ></el-slider> |
| | | <span>左右截面</span> |
| | | </div> |
| | | </div>SpatialQuery |
| | | <div class="slide-bg"> |
| | | <el-slider |
| | | class="slide" |
| | |
| | | <span>上下截面</span> |
| | | </div> |
| | | </div> |
| | | <!-- 地表形变时序图 --> |
| | | <div |
| | | class="surfaceDeFormPop" |
| | | style=" width: 800px; |
| | | height: 800px;" |
| | | v-show="surfaceDeFormFlag" |
| | | v-drag |
| | | > |
| | | <el-card class="box-card"> |
| | | <div slot="header"> |
| | | <span>地表形变时序图</span> |
| | | <div style="float: right; cursor: pointer"> |
| | | <i |
| | | class="el-icon-close" |
| | | @click="closeBufferBox(7)" |
| | | ></i> |
| | | </div> |
| | | </div> |
| | | <div |
| | | id="surfaceDeFormEchart" |
| | | class="pointInfoBoxContext" |
| | | style="height:500px;width:750px;" |
| | | > |
| | | |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | <!--附件列表弹窗--> |
| | | <el-dialog |
| | | title="附件列表" |
| | |
| | | |
| | | </div> |
| | | </el-dialog> |
| | | <!-- <div--> |
| | | <!-- @click="changeMenulayer"--> |
| | | <!-- class="center CenDiv"--> |
| | | <!-- :class="{ center1: centerFlag }"--> |
| | | <!-- >--> |
| | | <!-- <div--> |
| | | <!-- id="cenBg"--> |
| | | <!-- v-bind:class="{ active: isActive, menuLayer: isMenuLayer }"--> |
| | | <!-- ></div>--> |
| | | <!-- </div>--> |
| | | |
| | | <el-dialog |
| | | title="瓦片下载" |
| | | :append-to-body="false" |
| | |
| | | </el-form> |
| | | </el-dialog> |
| | | </div> |
| | | <model-property ref='modelProperty'></model-property> |
| | | |
| | | <surface-chart ref="surfaceChart" /> |
| | | <iframe |
| | | id="downFrame" |
| | | src="" |
| | |
| | | import $ from "jquery"; |
| | | import mapMenuTop from "./MapView/mapMenuTop.vue"; |
| | | import mapSpaceTop from "./MapView/mapSpaceTop.vue"; |
| | | import ModelProperty from '../views/Tools/ModelProperty.vue' |
| | | import ModelProperty from '../views/Tools/ModelProperty.vue'; |
| | | |
| | | import { |
| | | select_Comprehensive_ByPageAndCount, |
| | | select_Comprehensive_SelectWktById, |
| | | comprehensive_selectRoute, |
| | | dataLib_selectFiles, dataQuery_selectFields, dataQuery_selectDomains, |
| | | dataQuery_selectByPage, sign_getPublicKey, inquiry_downloadTiles, |
| | | comprehensive_selectPubById, comprehensive_selectModelByGuid |
| | | comprehensive_selectPubById, comprehensive_selectModelByGuid, dataQuery_selectByGid, |
| | | dataLib_selectByPage |
| | | } from '../api/api' |
| | | import { getToken } from '@/utils/auth' |
| | | |
| | | import * as echarts from "echarts" |
| | | export default { |
| | | name: "", |
| | | components: { |
| | | mapMenuTop, |
| | | mapSpaceTop, |
| | | ModelProperty |
| | | ModelProperty, |
| | | |
| | | |
| | | }, |
| | | data() { |
| | |
| | | title: '' |
| | | }, |
| | | loadingText: '', |
| | | loading: false |
| | | loading: false, |
| | | surfaceDeFormFlag: false, |
| | | option: null |
| | | }; |
| | | }, |
| | | mounted() { |
| | |
| | | this.$bus.$on("titleDown", res => { |
| | | this.setDownLoadTitle(res); |
| | | }); |
| | | |
| | | this.$bus.$on('annexDownload', res => { |
| | | this.setAnnexDownload(res); |
| | | }) |
| | | window.localStorage.setItem('slider_x', this.valueX); |
| | | window.localStorage.setItem('slider_y', this.valueY); |
| | | window.localStorage.setItem('slider_z', this.valueZ); |
| | | }, |
| | | methods: { |
| | | async setSurfaceDeForm() { |
| | | var gid = this.$store.state.surfaceDeForm.gid; |
| | | const data = await dataQuery_selectByGid({ gid: gid, name: 'msurfacedeformationdata' }); |
| | | if (data.code != 200) { |
| | | return this.$message.error("根据GID查询数据失败"); |
| | | } |
| | | |
| | | |
| | | this.getSurfaceDeFormData(data.result) |
| | | |
| | | }, |
| | | async getSurfaceDeFormData(result) { |
| | | var data = await dataLib_selectByPage({ |
| | | filter: "defpointno = '" + result.defpointno + "'", |
| | | name: 'msurfacedeformationdata', |
| | | pageIndex: 1, |
| | | pageSize: 100000, |
| | | }); |
| | | |
| | | const data1 = await dataLib_selectByPage({ |
| | | filter: "defpointno = '" + result.defpointno + "'", |
| | | name: 'msurfacedeformationdatadate', |
| | | pageIndex: 1, |
| | | pageSize: 100000, |
| | | }); |
| | | |
| | | if (data1.code != 200 || data.code != 200) { |
| | | return this.$message.error("地表形变数据查询失败"); |
| | | } |
| | | |
| | | this.surfaceDeFormFlag = true; |
| | | var average = data.result; |
| | | var val = data1.result |
| | | var xtitle = []; |
| | | var val1 = []; |
| | | var val2 = []; |
| | | for (var i in val) { |
| | | val1.push(average[0].seqvar); |
| | | xtitle.push(this.formDate(val[i].defdate)) |
| | | val2.push(val[i].seqvar) |
| | | } |
| | | this.showSurfaceDeFormEchart(xtitle, val1, val2); |
| | | |
| | | }, |
| | | formDate(res) { |
| | | var time = new Date(res); |
| | | var y = time.getFullYear(); |
| | | var m = time.getMonth() + 1; |
| | | var d = time.getDate(); |
| | | |
| | | return ( |
| | | y + |
| | | '-' + |
| | | this.add0(m) + |
| | | '-' + |
| | | this.add0(d) |
| | | |
| | | ); |
| | | }, |
| | | //格式化时间 |
| | | add0(m) { |
| | | return m < 10 ? '0' + m : m; |
| | | }, |
| | | showSurfaceDeFormEchart(res, res1, res2) { |
| | | |
| | | |
| | | var dom = document.getElementById('surfaceDeFormEchart'); |
| | | // var myChart = echarts.init(chartDom); |
| | | if (this.option != null) { |
| | | dom.removeAttribute("_echarts_instance_"); // 移除容器上的 _echarts_instance |
| | | } |
| | | |
| | | var myChart = echarts.init(dom, null, { |
| | | renderer: "canvas", |
| | | useDirtyRect: false, |
| | | }); |
| | | |
| | | |
| | | this.option = { |
| | | |
| | | tooltip: { |
| | | trigger: 'axis', |
| | | formatter: function (params) { |
| | | return params[0].axisValue + |
| | | '<br/>时序形变量:' + params[1].data + ' mm' + |
| | | '<br/>年形变速率:' + params[0].data + ' m/a' |
| | | }, |
| | | }, |
| | | dataZoom: [{ |
| | | type: 'inside', //1平移 缩放 |
| | | |
| | | }], |
| | | grid: { |
| | | left: '1%', |
| | | right: '1%', |
| | | bottom: '1%', |
| | | containLabel: true |
| | | }, |
| | | toolbox: { |
| | | feature: { |
| | | saveAsImage: {} |
| | | }, |
| | | |
| | | }, |
| | | |
| | | xAxis: { |
| | | type: 'category', |
| | | boundaryGap: false, |
| | | data: res.reverse() |
| | | }, |
| | | yAxis: { |
| | | type: 'value', |
| | | name: "mm", |
| | | }, |
| | | series: [ |
| | | { |
| | | name: '年形变速率', |
| | | type: 'line', |
| | | stack: 'Total', |
| | | data: res1 |
| | | }, |
| | | { |
| | | name: '时序变形量', |
| | | type: 'line', |
| | | stack: 'Total', |
| | | data: res2.reverse() |
| | | } |
| | | ] |
| | | }; |
| | | |
| | | this.option && myChart.setOption(this.option); |
| | | window.addEventListener("resize", myChart.resize); |
| | | }, |
| | | async setAnnexDownload(rs) { |
| | | |
| | | var type, eventid; |
| | | if (rs.serveType == 'TMS') { |
| | | type = 'DOM'; |
| | | eventid = 'dom_' + rs.id; |
| | | } else if (rs.serveType == 'DEM') { |
| | | type = 'DEM'; |
| | | eventid = 'dem_' + rs.id |
| | | } |
| | | |
| | | var obj = { |
| | | eventid: eventid, |
| | | tabName: type, |
| | | }; |
| | | const res = await dataLib_selectFiles(obj); |
| | | |
| | | if (res.code != 200) { |
| | | this.$message.error('附件查询失败'); |
| | | return |
| | | } |
| | | if (res.result.length <= 0) { |
| | | this.$message('暂无附件'); |
| | | return |
| | | } |
| | | |
| | | this.attachList = res.result; |
| | | this.showAttach = true; |
| | | }, |
| | | setDownLoadTitle(res) { |
| | | this.signGetPublicKey() |
| | | this.downTitleFlag = true; |
| | |
| | | licenseServer: window.sceneConfig.licenseServer, |
| | | }); |
| | | window.Viewer = window.sgworld._Viewer; |
| | | |
| | | if (is_production) { |
| | | Viewer.imageryLayers.removeAll(); |
| | | var base_ulr = window.sceneConfig.baseUrl; |
| | | if (base_ulr.indexOf('{host}') > -1) { |
| | | base_ulr = base_ulr.replace("{host}", iisHost) |
| | | } |
| | | Viewer.imageryLayers.addImageryProvider( |
| | | new Cesium.UrlTemplateImageryProvider({ |
| | | url: base_ulr, |
| | | maximumLevel: 5 |
| | | }) |
| | | ); |
| | | |
| | | } |
| | | //定位 |
| | | // sgworld.Navigate.jumpTo({ |
| | |
| | | // sgworld.Analysis.depthTestAgainstTerrain(true) |
| | | Viewer.scene.globe.depthTestAgainstTerrain = true; |
| | | if (is_production) { |
| | | |
| | | var base_ulr = window.sceneConfig.baseUrl; |
| | | if (base_ulr.indexOf('{host}') > -1) { |
| | | base_ulr = base_ulr.replace("{host}", iisHost) |
| | | } |
| | | Viewer.imageryLayers.addImageryProvider( |
| | | window.TileMapLayer = Viewer.imageryLayers.addImageryProvider( |
| | | new Cesium.UrlTemplateImageryProvider({ |
| | | url: base_ulr, |
| | | maximumLevel: 9 |
| | |
| | | case 6: |
| | | this.$store.state.propertiesFlag = null; |
| | | this.showAttribute = false; |
| | | break; |
| | | case 7: |
| | | this.surfaceDeFormFlag = false; |
| | | break; |
| | | } |
| | | }, |
| | |
| | | } |
| | | |
| | | if (!data.result.length) { |
| | | this.$message.error("未查询到勘探信息数据"); |
| | | this.$message("未查询到勘探信息数据"); |
| | | return |
| | | } |
| | | this.showAttribute = !this.showAttribute; |
| | |
| | | .propertiesPop { |
| | | width: 350px; |
| | | height: 370px; |
| | | z-index: 40; |
| | | position: absolute; |
| | | right: 8%; |
| | | bottom: 1%; |
| | | /deep/ .el-card__header { |
| | | padding: 10px 20px; |
| | | } |
| | | /deep/ .el-card__body { |
| | | padding: 10px 20px; |
| | | } |
| | | } |
| | | .surfaceDeFormPop { |
| | | z-index: 40; |
| | | position: absolute; |
| | | right: 8%; |
| | |
| | | background-repeat: no-repeat; |
| | | background-size: contain; |
| | | } |
| | | |
| | | //.changeMapType { |
| | | // position: absolute; |
| | | // bottom: 1%; |
| | |
| | | // cursor: pointer; |
| | | //} |
| | | .changeTerrain { |
| | | position: absolute; |
| | | bottom: 84px; |
| | | right: 46px; |
| | | height: 30px; |
| | | width: 30px; |
| | | z-index: 101; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | border: 1px solid rgba(255, 255, 255, 0.5); |
| | | } |
| | | .changeLayer { |
| | | position: absolute; |
| | | bottom: 116px; |
| | | right: 46px; |
| | | height: 30px; |
| | | width: 30px; |
| | | z-index: 101; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | border: 1px solid rgba(255, 255, 255, 0.5); |
| | | } |
| | | .changeMapType { |
| | | position: absolute; |
| | | bottom: 52px; |
| | | right: 46px; |
| | | height: 30px; |
| | | width: 30px; |
| | | z-index: 101; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | border: 1px solid rgba(255, 255, 255, 0.5); |
| | | } |
| | | //.changeTerrain { |
| | | // position: absolute; |