From 22b526a7ab81da32a97d866831b9177a42e34a90 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Wed, 26 Jan 2022 08:36:54 +0800
Subject: [PATCH] +定位点击后显示等待图标,
---
src/components/map/components/dimension.vue | 83 +++++++++++++++++++++++++++--------------
1 files changed, 54 insertions(+), 29 deletions(-)
diff --git a/src/components/map/components/dimension.vue b/src/components/map/components/dimension.vue
index a7c7773..3f97207 100644
--- a/src/components/map/components/dimension.vue
+++ b/src/components/map/components/dimension.vue
@@ -3,8 +3,8 @@
<el-radio-group v-model="dimensionValue"
size="medium"
@change="dimensionChange">
- <el-radio-button label="2.5维"></el-radio-button>
- <el-radio-button label="3 维"></el-radio-button>
+ <el-radio-button label="三 维"></el-radio-button>
+ <el-radio-button label="真三维"></el-radio-button>
</el-radio-group>
</div>
</template>
@@ -13,13 +13,14 @@
import axios from 'axios'
import { mapGetters } from 'vuex'
+import { getDetail } from '@/api/pc/public/arc'
export default {
name: 'dimension',
data () {
return {
DC: null,
- dimensionValue: '2.5维',
+ dimensionValue: '三 维',
// 建筑2.5D地图
newLayer: null,
baseLayer: null,
@@ -223,9 +224,7 @@
var provider = new that.DC.Namespace.Cesium.UrlTemplateImageryProvider({
url: '/wp/{z}/{x}/{y}.png',
- fileExtension: 'png',
- tileHeight: 52,
- tileWidth: 52
+ fileExtension: 'png'
// minimumLevel: 19
})
@@ -238,7 +237,7 @@
that.newLayer = that.viewer.imageryLayers.addImageryProvider(provider)
that.wallLayer = new that.DC.VectorLayer('wallLayer')
- that.viewer.addLayer(that.wallLayer)
+ // that.viewer.addLayer(that.wallLayer)
that.wallArr.forEach(item => {
item = item.join(',')
@@ -254,7 +253,7 @@
speed: 10
})
})
- that.wallLayer.addOverlay(wall)
+ // that.wallLayer.addOverlay(wall)
// that.viewer.camera.setView({
// // Cesium的坐标是以地心为原点,一向指向南美洲,一向指向亚洲,一向指向北极州
@@ -313,7 +312,7 @@
that.viewer.scene.screenSpaceCameraController.maximumZoomDistance = 1000
// 设置相机缩小时的速率
- // that.viewer.scene.screenSpaceCameraController._minimumZoomRate = 10000
+ that.viewer.scene.screenSpaceCameraController._minimumZoomRate = 10000
// 设置相机放大时的速率
that.viewer.scene.screenSpaceCameraController._maximumZoomRate = 5906376272000
// 视角平移
@@ -390,35 +389,61 @@
that.viewer.on(that.DC.MouseEventType.CLICK, e => {
if (e.overlay != undefined && e.layer.id == 'areaLayer') {
- that.viewer.scene.globe.depthTestAgainstTerrain = false
+ var rid = e.overlay.attr['楼栋号'] == '8栋' ? '9栋' : e.overlay.attr['楼栋号'] == '9栋' ? '8栋' : e.overlay.attr['楼栋号']
+ this.$store.commit('CLEAR_ALL', null)
+ getDetail({ mechanismname: '香琴湾' + rid }).then((res) => {
+ that.viewer.scene.globe.depthTestAgainstTerrain = false
+ var result = res.data.data
- that.$store.commit('CLEAR_ALL', null)
+ var imgArr = result.tpurl.split(',')
+ this.$store.commit('SET_POPUPBGURL', imgArr[0])
+ this.$store.commit('SET_POPUPQRURL', result.codeurl)
+ that.$store.commit('SET_POINTPOSITION', [Number(e.wgs84Position.lng), Number(e.wgs84Position.lat), Number(e.wgs84Position.alt), Number(0), Number(0), Number(0)])
+ this.$store.commit('SET_STATENAME', result.mechanismname)
+ this.$store.commit('SET_SITENAME', result.address)
+ this.$store.commit('SET_TELEPHONE', result.telephone)
+ this.$store.commit('SET_INTRODUCETEXT', result.introduce)
+ this.$store.commit('SET_PANORAMAURL', result.panoramaurl)
+ this.$store.commit('SET_POPUPIMGATLAS', imgArr)
+ if (result.videourl && result.videourl != '') {
+ this.$store.commit('SET_MONITORURL', result.videourl)
+ }
+ if (result.jx != undefined && result.jx != '') {
+ var tabOne = res.data.data[0].jx.split(',')
+ this.$store.commit('SET_TEACHLIST', tabOne)
+ } else {
+ this.$store.commit('SET_TEACHLIST', [])
+ }
- var imgArr = ['http://223.82.109.183:2081/zhxy/upload/20220105/3c05dd70a9eac17b7e49afbfc7b1b68e.png']
+ if (result.sh != undefined && result.sh != '') {
+ var tabTwo = res.data.data[0].sh.split(',')
+ this.$store.commit('SET_LIVELIST', tabTwo)
+ } else {
+ this.$store.commit('SET_LIVELIST', [])
+ }
- that.$store.commit('SET_POPUPBGURL', imgArr[0])
- that.$store.commit('SET_POPUPQRURL', 'http://223.82.109.183:2081/zhxy/upload/20211222/9c324adea5d9e5b50cd8f874d5f780f4.png')
- that.$store.commit('SET_POINTPOSITION', [Number(e.wgs84Position.lng), Number(e.wgs84Position.lat), Number(e.wgs84Position.alt), Number(0), Number(0), Number(0)])
- that.$store.commit('SET_STATENAME', e.overlay.attr['楼栋号'])
- that.$store.commit('SET_POPUPIMGATLAS', imgArr)
+ // 定制化窗体
+ // eslint-disable-next-line no-unused-vars
+ var popup = new that.DC.DivForms(that.viewer, {
+ domId: 'divFormsDomBox',
+ position: [
+ that.DC.Transform.transformWGS84ToCartesian(new that.DC.Position(Number(e.wgs84Position.lng), Number(e.wgs84Position.lat), Number(e.wgs84Position.alt)))
+ ]
+ })
- // 定制化窗体
- // eslint-disable-next-line no-unused-vars
- var popup = new that.DC.DivForms(that.viewer, {
- domId: 'divFormsDomBox',
- position: [
- that.DC.Transform.transformWGS84ToCartesian(new that.DC.Position(Number(e.wgs84Position.lng), Number(e.wgs84Position.lat), Number(e.wgs84Position.alt)))
- ]
+ this.$store.commit('SET_PANORAMAPOPUP', false)
+ this.$store.commit('SET_MONITORPOPUP', false)
+ this.$store.commit('SET_DETAILSPOPUP', true)
})
- this.$store.commit('SET_PANORAMAPOPUP', false)
- this.$store.commit('SET_MONITORPOPUP', false)
- this.$store.commit('SET_DETAILSPOPUP', true)
+ this.viewer.flyToPosition(
+ new this.DC.Position(Number(e.wgs84Position.lng), Number(e.wgs84Position.lat), 300, Number(0), Number(-90), Number(0))
+ )
}
})
document.querySelector('.dc-zoom-controller').children[1].onclick = function () {
- if (that.dimensionValue == '3 维') {
+ if (that.dimensionValue == '真三维') {
that.viewer.camera.setView({
// Cesium的坐标是以地心为原点,一向指向南美洲,一向指向亚洲,一向指向北极州
// fromDegrees()方法,将经纬度和高程转换为世界坐标
@@ -454,7 +479,7 @@
dimensionChange () {
var that = this
that.$store.commit('SET_TWOORTHREE', that.dimensionValue)
- if (that.dimensionValue == '3 维') {
+ if (that.dimensionValue == '真三维') {
// that.wallLayer.show = false
that.areaLayer.show = false
that.viewer.imageryLayers.remove(that.newLayer)
--
Gitblit v1.9.3