From aaf3a156eb08f0107db3bff99e10766575cd5ce5 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Mon, 11 Nov 2024 18:47:12 +0800
Subject: [PATCH] pages文件调整
---
src/pages/layout/components/scomponents/tool/exportScene.vue | 0
src/pages/layout/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js | 0
src/pages/first/components/mainMenu.vue | 0
src/pages/layout/components/scomponents/tool/location.vue | 0
src/router/index.js | 10 +-
src/pages/layout/components/scomponents/toolList.vue | 0
src/pages/layout/components/mainTool.vue | 0
src/pages/login.vue | 0
/dev/null | 130 -------------------------------------------
src/pages/layout/index.vue | 3
src/pages/layout/components/scomponents/layersControl.vue | 0
src/pages/first/index.vue | 0
src/pages/layout/components/scomponents/cesium/AmapMercatorTilingScheme/index.js | 0
src/pages/sub/index.vue | 0
src/pages/layout/components/scomponents/baseMap.vue | 0
src/pages/layout/components/mainSearch.vue | 0
16 files changed, 6 insertions(+), 137 deletions(-)
diff --git a/src/views/first/components/mainMenu.vue b/src/pages/first/components/mainMenu.vue
similarity index 100%
rename from src/views/first/components/mainMenu.vue
rename to src/pages/first/components/mainMenu.vue
diff --git a/src/views/first/index.vue b/src/pages/first/index.vue
similarity index 100%
rename from src/views/first/index.vue
rename to src/pages/first/index.vue
diff --git a/src/views/layout/components/mainSearch.vue b/src/pages/layout/components/mainSearch.vue
similarity index 100%
rename from src/views/layout/components/mainSearch.vue
rename to src/pages/layout/components/mainSearch.vue
diff --git a/src/views/layout/components/mainTool.vue b/src/pages/layout/components/mainTool.vue
similarity index 100%
rename from src/views/layout/components/mainTool.vue
rename to src/pages/layout/components/mainTool.vue
diff --git a/src/views/layout/components/scomponents/baseMap.vue b/src/pages/layout/components/scomponents/baseMap.vue
similarity index 100%
rename from src/views/layout/components/scomponents/baseMap.vue
rename to src/pages/layout/components/scomponents/baseMap.vue
diff --git a/src/views/layout/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js b/src/pages/layout/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js
similarity index 100%
rename from src/views/layout/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js
rename to src/pages/layout/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js
diff --git a/src/views/layout/components/scomponents/cesium/AmapMercatorTilingScheme/index.js b/src/pages/layout/components/scomponents/cesium/AmapMercatorTilingScheme/index.js
similarity index 100%
rename from src/views/layout/components/scomponents/cesium/AmapMercatorTilingScheme/index.js
rename to src/pages/layout/components/scomponents/cesium/AmapMercatorTilingScheme/index.js
diff --git a/src/views/layout/components/scomponents/layersControl.vue b/src/pages/layout/components/scomponents/layersControl.vue
similarity index 100%
rename from src/views/layout/components/scomponents/layersControl.vue
rename to src/pages/layout/components/scomponents/layersControl.vue
diff --git a/src/views/layout/components/scomponents/tool/exportScene.vue b/src/pages/layout/components/scomponents/tool/exportScene.vue
similarity index 100%
rename from src/views/layout/components/scomponents/tool/exportScene.vue
rename to src/pages/layout/components/scomponents/tool/exportScene.vue
diff --git a/src/views/layout/components/scomponents/tool/location.vue b/src/pages/layout/components/scomponents/tool/location.vue
similarity index 100%
rename from src/views/layout/components/scomponents/tool/location.vue
rename to src/pages/layout/components/scomponents/tool/location.vue
diff --git a/src/views/layout/components/scomponents/toolList.vue b/src/pages/layout/components/scomponents/toolList.vue
similarity index 100%
rename from src/views/layout/components/scomponents/toolList.vue
rename to src/pages/layout/components/scomponents/toolList.vue
diff --git a/src/views/layout/index.vue b/src/pages/layout/index.vue
similarity index 98%
rename from src/views/layout/index.vue
rename to src/pages/layout/index.vue
index 1187348..7e78678 100644
--- a/src/views/layout/index.vue
+++ b/src/pages/layout/index.vue
@@ -2,7 +2,7 @@
* @Author: shuishen 1109946754@qq.com
* @Date: 2022-08-18 16:18:24
* @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-11-10 20:38:37
+ * @LastEditTime: 2024-11-11 18:36:37
* @FilePath: \bigScreen\src\views\layout\index.vue
* @Description:
*
@@ -34,7 +34,6 @@
const loginOutBg = getAssetsFile('login.png', '/images')
import mainSearch from './components/mainSearch.vue'
import mainTool from './components/mainTool.vue'
-import mainMenu from './components/mainMenu.vue'
import { useLogin } from 'store/login'
const loginStore = useLogin()
diff --git a/src/page/login.vue b/src/pages/login.vue
similarity index 100%
rename from src/page/login.vue
rename to src/pages/login.vue
diff --git a/src/views/sub/index.vue b/src/pages/sub/index.vue
similarity index 100%
rename from src/views/sub/index.vue
rename to src/pages/sub/index.vue
diff --git a/src/router/index.js b/src/router/index.js
index b3e5316..fb0514f 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -2,16 +2,16 @@
* @Author: shuishen 1109946754@qq.com
* @Date: 2024-10-25 16:35:31
* @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-11-10 20:30:44
+ * @LastEditTime: 2024-11-11 18:38:01
* @FilePath: \bigScreen\src\router\index.js
* @Description:
*
* Copyright (c) 2024 by shuishen, All Rights Reserved.
*/
import { createRouter, createWebHistory, createWebHashHistory } from 'vue-router'
-const layout = () => import("@/views/layout/index.vue")
-const firstLayout = () => import('@/views/first/index.vue')
-const subLayout = () => import('@/views/sub/index.vue')
+const layout = () => import("@/pages/layout/index.vue")
+const firstLayout = () => import('@/pages/first/index.vue')
+const subLayout = () => import('@/pages/sub/index.vue')
const companyInfo = () => import('@/views/companyInfo/index.vue')
const routes = [
{
@@ -21,7 +21,7 @@
{
path: '/login',
name: '登录页',
- component: () => import('@/page/login.vue'),
+ component: () => import('@/pages/login.vue'),
meta: {
keepAlive: true,
isTab: false,
diff --git a/src/views/layout/components/mainMenu.vue b/src/views/layout/components/mainMenu.vue
deleted file mode 100644
index a3dec17..0000000
--- a/src/views/layout/components/mainMenu.vue
+++ /dev/null
@@ -1,120 +0,0 @@
-<template>
- <div class="page-mode">
- <div @mouseenter="item.childrenFlag = true" :class="{ active: currentUrl.indexOf(item.path) != -1 }"
- @mouseleave="item.childrenFlag = false" @click="goToPath(item)" v-for="(item, index) in menuList" :key="index">
- {{ item.menuName }}
- </div>
- </div>
-</template>
-
-<script setup>
-import { ref, reactive, watch } from 'vue'
-import { useRouter, useRoute } from 'vue-router'
-import { Search } from '@element-plus/icons-vue'
-import { getTime } from '@/utils/getTime.js'
-import { useRouterStore } from 'store/router'
-const store = useRouterStore()
-let router = useRouter()
-let currentUrl = ref('statistics')
-
-const menuList = ref(
- [
- {
- menuName: '园区概况',
- path: '/layout/first/survey'
- },
- {
- menuName: '风险源',
- path: '/layout/rs'
- },
- {
- menuName: '应急空间',
- path: '/layout/space'
- },
- {
- menuName: '应急物资',
- path: '/layout/supplies'
- },
- {
- menuName: '三级防控',
- path: '/layout/pac'
- },
- {
- menuName: '救援队伍',
- path: '/layout/rt'
- },
- {
- menuName: '污染物处理',
- path: '/layout/pd'
- },
- ]
-)
-
-const goToPath = (params) => {
- if (params.children && params.children.length > 0) return
-
- if (params.path) {
- if (router.currentRoute.value.path == params.path) return
-
- if (params.path == '/layout/supplies' || params.path == '/layout/rt') {
- store.setLoadSingle(true)
- } else {
- store.setLoadSingle(false)
- }
- router.push(params.path)
- } else {
- params.childrenFlag = !params.childrenFlag
- }
-}
-
-watch(
- () => router.currentRoute.value,
- (newValue, oldValue) => {
-
- currentUrl.value = newValue.path
-
- },
- { immediate: true }
-)
-
-const userName = ref('管理员')
-</script>
-
-<style lang="scss" scoped>
-.page-mode {
- position: absolute;
- top: auto;
- bottom: 55px;
- left: 50%;
- z-index: 99;
- transform: translateX(-50%);
- display: flex;
- pointer-events: auto;
-
- &>div {
- background-image: url(/images/mode-tab.png);
- background-size: cover;
- width: 136px;
- height: 50px;
- font-size: 16px;
- text-align: center;
- font-weight: bold;
- color: #BFD3E5;
- line-height: 32px;
- padding-top: 12px;
- margin-right: -20px;
- font-style: italic;
- cursor: pointer;
- box-sizing: border-box;
-
- &:last-child {
- margin-right: 0px;
- }
-
- &.active {
- color: #F6FCFF;
- background-image: url(/images/mode-tab-ac.png);
- }
- }
-}
-</style>
diff --git a/src/views/sub/components/mainMenu.vue b/src/views/sub/components/mainMenu.vue
deleted file mode 100644
index f3e4bbb..0000000
--- a/src/views/sub/components/mainMenu.vue
+++ /dev/null
@@ -1,108 +0,0 @@
-<template>
- <div class="page-mode">
- <div @mouseenter="item.childrenFlag = true" :class="{ active: currentUrl.indexOf(item.path) != -1 }"
- @mouseleave="item.childrenFlag = false" @click="goToPath(item)" v-for="(item, index) in menuList" :key="index">
- {{ item.menuName }}
- </div>
- </div>
-</template>
-
-<script setup>
-import { ref, reactive, watch } from 'vue'
-import { useRouter, useRoute } from 'vue-router'
-import { Search } from '@element-plus/icons-vue'
-import { getTime } from '@/utils/getTime.js'
-let router = useRouter()
-let currentUrl = ref('statistics')
-
-const menuList = ref(
- [
- {
- menuName: '园区概况',
- path: '/layout/first/survey'
- },
- {
- menuName: '固定风险源',
- path: '/layout/rs'
- },
- {
- menuName: '应急空间',
- path: '/layout/space'
- },
- {
- menuName: '应急物资',
- path: '/layout/supplies'
- },
- {
- menuName: '三级防控',
- path: '/layout/pac'
- },
- {
- menuName: '救援队伍',
- path: '/layout/rt'
- },
- ]
-)
-
-const goToPath = (params) => {
- if (params.children && params.children.length > 0) return
-
- if (params.path) {
- if (router.currentRoute.value.path == params.path) return
- router.push(params.path)
- } else {
- params.childrenFlag = !params.childrenFlag
- }
-}
-
-watch(
- () => router.currentRoute.value,
- (newValue, oldValue) => {
-
- currentUrl.value = newValue.path
-
- },
- { immediate: true }
-)
-
-const userName = ref('管理员')
-</script>
-
-<style lang="scss" scoped>
-.page-mode {
- position: absolute;
- top: auto;
- bottom: 55px;
- left: 50%;
- z-index: 99;
- transform: translateX(-50%);
- display: flex;
- pointer-events: auto;
-
- &>div {
- background-image: url(/images/mode-tab.png);
- background-size: cover;
- width: 150px;
- height: 50px;
- font-size: 16px;
- text-align: center;
- font-weight: bold;
- color: #BFD3E5;
- line-height: 32px;
- padding-top: 12px;
- margin-right: -20px;
- font-style: italic;
- cursor: pointer;
- box-sizing: border-box;
-
- &:last-child {
- margin-right: 0px;
- }
-
- &.active {
- color: #F6FCFF;
- background-image: url(/images/mode-tab-ac.png);
- }
- }
-}
-</style>
diff --git a/src/views/sub/components/mainSearch.vue b/src/views/sub/components/mainSearch.vue
deleted file mode 100644
index e8efa2c..0000000
--- a/src/views/sub/components/mainSearch.vue
+++ /dev/null
@@ -1,100 +0,0 @@
-<!--
- * @Author: shuishen 1109946754@qq.com
- * @Date: 2024-10-26 16:09:35
- * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-10-28 11:04:58
- * @FilePath: \bigScreen\src\views\layout\components\mainSearch.vue
- * @Description:
- *
- * Copyright (c) 2024 by shuishen, All Rights Reserved.
--->
-<template>
- <div class="page-search">
- <el-input size="medium" placeholder="请输入内容" :suffix-icon="Search" @input="onSearch()" v-model="searchVal"
- @focus="onFocus"></el-input>
- <div class="page-search-value-box" v-show="isShowSearchSKValBox">
- <ul>
- <li v-for="(item, index) in searchSKValList" :key="index" @click="sKValItemClick(item)">{{ item.name }}
- </li>
- </ul>
- </div>
- </div>
-</template>
-
-<script setup>
-// 搜索栏相关
-let isShowSearchSKValBox = false
-let searchVal = ''
-let searchSKValList = []
-
-const onSearch = () => {
- if (searchVal == '') {
- isShowSearchSKValBox = false
- } else {
- isShowSearchSKValBox = true
- }
-}
-
-const onFocus = () => {
- onSearch()
-}
-
-const sKValItemClick = (item) => {
- isShowSearchSKValBox = false
-}
-</script>
-
-<style lang="scss" scoped>
-.page-search {
- position: absolute;
- left: 488px;
- z-index: 99;
- top: 110px;
- pointer-events: auto;
-
- ::v-deep(.el-input) {
- height: 38px;
- width: 280px;
-
- .el-input__wrapper {
- font-size: 16px;
- font-weight: 400;
- border: 1px solid #4081CB;
- border-radius: 4px;
- background: rgba(135, 158, 199, 0.3);
- box-shadow: inset 0px 3px 7px 0px rgba(42, 138, 236, 0.95);
-
- .el-input__inner {
- color: #BFD3E5;
- }
- }
- }
-
- .page-search-value-box {
- position: absolute;
- width: 100%;
- height: 200px;
- left: 0;
- top: 40px;
- background: rgba(135, 158, 199, 0.3);
- border-radius: 2px;
- overflow-y: scroll;
-
- ul>li {
- color: #ffffff;
- cursor: pointer;
- height: 20px;
- line-height: 20px;
- padding-left: 10px;
- }
-
- ul>li:hover {
- background-color: #0e1a35;
- }
- }
-
- .page-search-value-box::-webkit-scrollbar {
- display: none
- }
-}
-</style>
\ No newline at end of file
diff --git a/src/views/sub/components/mainTool.vue b/src/views/sub/components/mainTool.vue
deleted file mode 100644
index 988500c..0000000
--- a/src/views/sub/components/mainTool.vue
+++ /dev/null
@@ -1,109 +0,0 @@
-<template>
- <div class="toolBarRight animation-slide-top no-print-view">
- <el-button v-for="item, index in btnGroup" :key="index" @click="btnClick(item)"
- class="btn btn-link toolBarRight-btn">
- <i :class="item.icon"></i>{{ item.name }}
- </el-button>
- </div>
-
- <base-map v-show="currentComponent == 'map'" @close="closeBox"></base-map>
- <layers-control v-show="currentComponent == 'layers'" @close="closeBox"></layers-control>
- <tool-list :moreToolShow="moreToolShow" @close="closeBox"></tool-list>
-</template>
-
-<script setup>
-import baseMap from './scomponents/baseMap.vue'
-import layersControl from './scomponents/layersControl.vue'
-import toolList from './scomponents/toolList.vue'
-
-const currentComponent = ref('')
-let moreToolShow = ref(false)
-
-const btnGroup = [
- {
- name: '底图',
- icon: 'fa fa-map',
- key: 'map',
- },
- {
- name: '图层',
- icon: 'fa fa-tasks',
- key: 'layers',
- },
- {
- name: '工具',
- icon: 'fa fa-cubes',
- key: 'tool',
- },
-]
-
-const btnClick = (item) => {
- if (item.key == 'tool') {
- moreToolShow.value = !moreToolShow.value
- } else {
- currentComponent.value = item.key
- }
-}
-
-const closeBox = (type) => {
- if (type == 'tool') {
- moreToolShow.value = false
- } else {
- currentComponent.value = ''
- }
-}
-</script>
-
-<style lang="scss" scoped>
-.toolBarRight {
- display: flex;
- flex-wrap: nowrap;
- position: absolute;
- right: 540px;
- z-index: 99;
- top: 110px;
-
- border: 1px solid #4081CB;
- border-radius: 4px;
- background: rgba(135, 158, 199, 0.3);
- box-shadow: inset 0px 3px 7px 0px rgba(42, 138, 236, 0.95);
- pointer-events: auto;
-
- ::v-deep(.el-button) {
- margin-left: 0;
- border: none;
- border-radius: 0;
- background: transparent;
-
- &.btn {
- padding: 4px 12px;
- font-size: 14px;
- line-height: 1.6;
- -webkit-transition: border .2s linear, color .2s linear, width .2s linear, background-color .2s linear;
- -o-transition: border .2s linear, color .2s linear, width .2s linear, background-color .2s linear;
- transition: border .2s linear, color .2s linear, width .2s linear, background-color .2s linear;
- }
-
- &.btn-link {
- font-weight: 400;
- color: #007bff;
- text-decoration: none;
- }
-
- &.toolBarRight-btn {
- list-style-type: none;
- cursor: pointer;
- border-right: solid 1px #2b2c2f;
- color: #edffff;
- }
-
- &.toolBarRight-btn:last-child {
- border-right: none;
- }
-
- i {
- margin-right: 4px;
- }
- }
-}
-</style>
\ No newline at end of file
diff --git a/src/views/sub/components/scomponents/baseMap.vue b/src/views/sub/components/scomponents/baseMap.vue
deleted file mode 100644
index 3006ffe..0000000
--- a/src/views/sub/components/scomponents/baseMap.vue
+++ /dev/null
@@ -1,355 +0,0 @@
-<!--
- * @Author: shuishen 1109946754@qq.com
- * @Date: 2024-10-28 11:44:45
- * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-11-05 18:39:20
- * @FilePath: \bigScreen\src\views\layout\components\scomponents\baseMap.vue
- * @Description:
- *
- * Copyright (c) 2024 by shuishen, All Rights Reserved.
--->
-<template>
- <public-box>
- <template #name>
- <div class="name"><i class="fa fa-map"></i> 底图</div>
- </template>
-
- <template #close>
- <div class="close" @click="$emit('close', 'map')"><i class="fa fa-close"></i></div>
- </template>
-
- <template #content>
- <div class="layers-box-content">
- <ul class="layers-box">
- <li :class="{ on: item.mode == curMode }" v-for="item, index in baseMaps" :key="index"
- @click="loadLAYER(item.mode, index)">
- <div><img :src="item.src"></div>
- <div>{{ item.name }}</div>
- </li>
- </ul>
- </div>
-
- <div class="show-terrain" style="margin-left:10px;color:#fff">
- <el-checkbox @change="terrainChange" v-model="showTerrainFlag" label="显示地形" size="large" />
- </div>
- </template>
- </public-box>
-</template>
-
-<script setup>
-import { getAssetsFile } from 'utils/utils'
-import AmapMercatorTilingScheme from './cesium/AmapMercatorTilingScheme/index'
-
-const { appContext } = getCurrentInstance()
-const global = appContext.config.globalProperties
-const Cesium = DC.getLib('Cesium')
-const cesiumToken =
- 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJkYTZlNGNlYS01NTU1LTQ1MGEtYmNlZS0yNTE2NDk5YWM2MjEiLCJpZCI6MTc5Njk2LCJpYXQiOjE3MDA1NDcwMjV9.qcl4AH2731cfFd0-I1ZLUINPXqvglLkDFD-UGR2zU5M'
-Cesium.Ion.defaultAccessToken = cesiumToken
-
-const TDT_Token = 'c6eea7dad4fa1e2d1e32ec0e7c9735db'
-// 天地图Key
-// 天地图地图
-const TDT_IMG_C = 'https://{s}.tianditu.gov.cn/img_c/wmts?service=wmts&request=GetTile&version=1.0.0' +
- '&LAYER=img&tileMatrixSet=c&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}' +
- '&style=default&format=tiles&tk=' + TDT_Token
-// 天地图注记
-const TDT_ZJ = 'https://{s}.tianditu.gov.cn/cia_c/wmts?service=wmts&request=GetTile&version=1.0.0' +
- '&LAYER=cia&tileMatrixSet=c&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}' +
- '&style=default&format=tiles&tk=' + TDT_Token
-// 标准地图注记
-const TID_STAND = 'https://{s}.tianditu.gov.cn/vec_w/wmts?service=wmts&request=GetTile&version=1.0.0' +
- '&LAYER=img&tileMatrixSet=c&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}' +
- '&style=default&format=tiles&tk=' + TDT_Token
-
-const imageryProvider_standZh = new Cesium.UrlTemplateImageryProvider({
- url: 'https://t{s}.tianditu.gov.cn/DataServer?T=cva_w&x={x}&y={y}&l={z}&tk=e45274b0235bb913eceb393aabbf9c9c',
- subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
- maximumLevel: 18,
- credit: 'stand_zj',
-})
-
-const imageryProvider_stand = new Cesium.UrlTemplateImageryProvider({
- url: 'https://t{s}.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=e45274b0235bb913eceb393aabbf9c9c',
- subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
- // format: 'image/jpeg',
- // show: true,
- maximumLevel: 18,
- credit: 'stand_tc',
-})
-
-const annotation = new Cesium.WebMapTileServiceImageryProvider({
- url: TDT_ZJ,
- layer: 'tdtZwImg_c',
- style: 'default',
- format: 'tiles',
- tileMatrixSetID: 'c',
- subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'],
- tilingScheme: new Cesium.GeographicTilingScheme(),
- tileMatrixLabels: [
- '1',
- '2',
- '3',
- '4',
- '5',
- '6',
- '7',
- '8',
- '9',
- '10',
- '11',
- '12',
- '13',
- '14',
- '15',
- '16',
- '17',
- '18',
- '19',
- ],
- maximumLevel: 50,
-})
-
-const imageryProvider_tdt = new Cesium.WebMapTileServiceImageryProvider({
- url: TDT_IMG_C,
- layer: 'tdtImg_c',
- style: 'default',
- format: 'tiles',
- tileMatrixSetID: 'c',
- subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'],
- tilingScheme: new Cesium.GeographicTilingScheme(),
- tileMatrixLabels: [
- '1',
- '2',
- '3',
- '4',
- '5',
- '6',
- '7',
- '8',
- '9',
- '10',
- '11',
- '12',
- '13',
- '14',
- '15',
- '16',
- '17',
- '18',
- '19',
- ],
- maximumLevel: 17,
-})
-
-const imageryProvider_ammapSL = new Cesium.UrlTemplateImageryProvider({
- url: 'https://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}',
- layer: 'tdtVecBasicLayer',
- style: 'default',
- format: 'image/png',
- tileMatrixSetID: 'GoogleMapsCompatible',
- subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
- maximumLevel: 18,
- tilingScheme: new AmapMercatorTilingScheme(),
- credit: 'amap_SL',
-})
-
-const imageryProvider_ammap = new Cesium.UrlTemplateImageryProvider({
- url: 'https://webst02.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}',
- layer: 'tdtVecBasicLayer',
- style: 'default',
- format: 'image/png',
- tileMatrixSetID: 'GoogleMapsCompatible',
- subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
- maximumLevel: 18,
- tilingScheme: new AmapMercatorTilingScheme(),
- credit: 'amap_stand',
-})
-
-const imageryProvider_ammapBz = new Cesium.UrlTemplateImageryProvider({
- url: 'https://webst02.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1&style=8',
- tilingScheme: new AmapMercatorTilingScheme(),
- minimumLevel: 3,
-})
-
-let mapLayers = [
- {
- src: getAssetsFile('stand.png'),
- mode: '0',
- name: '天地图矢量',
- layers: [
- { key: 'imageryProvider_standZh', layer: imageryProvider_standZh },
- { key: 'imageryProvider_stand', layer: imageryProvider_stand },
- ]
- },
- {
- src: getAssetsFile('satellite.png'),
- mode: '1',
- name: '天地图影像',
- layers: [
- { key: 'annotation', layer: annotation },
- {
- key: 'imageryProvider_tdt',
- layer: imageryProvider_tdt,
- }
- ]
- },
- {
- src: getAssetsFile('stand.png'),
- mode: '2',
- name: '高德矢量',
- layers: [
- {
- key: 'imageryProvider_ammapSL',
- layer: imageryProvider_ammapSL,
- }
- ]
- },
- {
- src: getAssetsFile('satellite.png'),
- mode: '3',
- name: '高德影像',
- layers: [
- { key: 'imageryProvider_ammap', layer: imageryProvider_ammap },
- { key: 'imageryProvider_ammapBz', layer: imageryProvider_ammapBz },
- ]
- }
-]
-
-let curMode = ref(null)
-let baseMaps = reactive([])
-
-baseMaps = mapLayers.map(item => {
- return {
- src: item.src,
- mode: item.mode,
- name: item.name,
- }
-})
-
-let globalBaseMapLayers = []
-
-const loadLAYER = (mode, ind) => {
- if (mode == curMode.value) return
-
- let curmapLayers = []
-
- globalBaseMapLayers.length &&
- globalBaseMapLayers.forEach((item) => {
- item.mapLayer.show = false
- })
-
- curmapLayers.push(
- ...mapLayers[ind].layers,
- )
-
- // 创建一个Set来快速查找array2中的id
- let keyBaseMap = new Set(globalBaseMapLayers.map((item) => item.key))
- let keyMapLayers = new Set(curmapLayers.map((item) => item.key))
-
- let keyExistBaseMap = curmapLayers.filter((item) => !keyBaseMap.has(item.key))
-
- let keyNoExistBaseMap = globalBaseMapLayers.filter((item) =>
- keyMapLayers.has(item.key),
- )
-
- keyExistBaseMap.length &&
- keyExistBaseMap.forEach((item) => {
- let curLayer = {
- key: item.key,
- mapLayer: window.$viewer?.imageryLayers.addImageryProvider(item.layer),
- }
-
- curLayer.mapLayer.show = true
- window.$viewer?.imageryLayers.lowerToBottom(curLayer.mapLayer)
-
- globalBaseMapLayers.push(curLayer)
- })
-
- keyNoExistBaseMap.length &&
- keyNoExistBaseMap.forEach((item) => {
- item.mapLayer.show = true
- window.$viewer?.imageryLayers.lowerToBottom(item.mapLayer)
- })
-
- curMode.value = mode
-}
-
-loadLAYER(1, 1)
-
-const showTerrainFlag = ref(false)
-
-const terrainChange = (e) => {
- if (e) {
- let terrain = DC.TerrainFactory.createTerrain(DC.TerrainType.XYZ, {
- url: 'https://data.marsgis.cn/terrain'
- })
- window.$viewer.setTerrain(terrain)
- } else {
- window.$viewer.setTerrain()
- }
-}
-</script>
-
-<style lang="scss" scoped>
-.close {
- cursor: pointer;
-}
-
-.layers-box-content {
- .layers-box {
- display: flex;
- justify-content: space-between;
- flex-wrap: wrap;
- width: 354px;
- padding: 0 10px;
- box-sizing: border-box;
-
- li {
- margin-top: 10px;
- cursor: pointer;
-
- &.on,
- &:hover {
- div:first-child {
- border: solid 2px #337fe5;
- }
-
- div:last-child {
- color: #337fe5;
- }
- }
-
- div:first-child {
- width: 76px;
- height: 76px;
- background: red;
- border: 2px solid white;
- box-sizing: border-box;
-
- img {
- width: 100%;
- height: 100%;
- }
- }
-
- div:last-child {
- width: 76px;
- height: 20px;
- line-height: 20px;
- color: #fff;
- font-size: 12px;
- text-align: center;
- }
- }
- }
-}
-
-.show-terrain {
- ::v-deep(.el-checkbox) {
- .el-checkbox__label {
- color: #fff;
- }
- }
-}
-</style>
\ No newline at end of file
diff --git a/src/views/sub/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js b/src/views/sub/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js
deleted file mode 100644
index 5b1b4a5..0000000
--- a/src/views/sub/components/scomponents/cesium/AmapMercatorTilingScheme/CoordTransform.js
+++ /dev/null
@@ -1,178 +0,0 @@
-// 定义一些常量
-const BD_FACTOR = (3.14159265358979324 * 3000.0) / 180.0;
-const PI = 3.1415926535897932384626;
-const RADIUS = 6378245.0;
-const EE = 0.00669342162296594323;
-
-class CoordTransform {
- /**
- * BD-09(百度坐标系) To GCJ-02(火星坐标系)
- * @param lng
- * @param lat
- * @returns {number[]}
- */
- static BD09ToGCJ02(lng, lat) {
- let x = +lng - 0.0065;
- let y = +lat - 0.006;
- let z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * BD_FACTOR);
- let theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * BD_FACTOR);
- let gg_lng = z * Math.cos(theta);
- let gg_lat = z * Math.sin(theta);
- return [gg_lng, gg_lat];
- }
-
- /**
- * GCJ-02(火星坐标系) To BD-09(百度坐标系)
- * @param lng
- * @param lat
- * @returns {number[]}
- * @constructor
- */
- static GCJ02ToBD09(lng, lat) {
- lat = +lat;
- lng = +lng;
- let z =
- Math.sqrt(lng * lng + lat * lat) +
- 0.00002 * Math.sin(lat * BD_FACTOR);
- let theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * BD_FACTOR);
- let bd_lng = z * Math.cos(theta) + 0.0065;
- let bd_lat = z * Math.sin(theta) + 0.006;
- return [bd_lng, bd_lat];
- }
-
- /**
- * WGS-84(世界大地坐标系) To GCJ-02(火星坐标系)
- * @param lng
- * @param lat
- * @returns {number[]}
- */
- static WGS84ToGCJ02(lng, lat) {
- lat = +lat;
- lng = +lng;
- if (this.out_of_china(lng, lat)) {
- return [lng, lat];
- } else {
- let d = this.delta(lng, lat);
- return [lng + d[0], lat + d[1]];
- }
- }
-
- /**
- * GCJ-02(火星坐标系) To WGS-84(世界大地坐标系)
- * @param lng
- * @param lat
- * @returns {number[]}
- * @constructor
- */
- static GCJ02ToWGS84(lng, lat) {
- lat = +lat;
- lng = +lng;
- if (this.out_of_china(lng, lat)) {
- return [lng, lat];
- } else {
- let d = this.delta(lng, lat);
- let mgLng = lng + d[0];
- let mgLat = lat + d[1];
- return [lng * 2 - mgLng, lat * 2 - mgLat];
- }
- }
-
- /**
- *
- * @param lng
- * @param lat
- * @returns {number[]}
- */
- static delta(lng, lat) {
- let dLng = this.transformLng(lng - 105, lat - 35);
- let dLat = this.transformLat(lng - 105, lat - 35);
- const radLat = (lat / 180) * PI;
- let magic = Math.sin(radLat);
- magic = 1 - EE * magic * magic;
- const sqrtMagic = Math.sqrt(magic);
- dLng = (dLng * 180) / ((RADIUS / sqrtMagic) * Math.cos(radLat) * PI);
- dLat =
- (dLat * 180) / (((RADIUS * (1 - EE)) / (magic * sqrtMagic)) * PI);
- return [dLng, dLat];
- }
-
- /**
- *
- * @param lng
- * @param lat
- * @returns {number}
- */
- static transformLng(lng, lat) {
- lat = +lat;
- lng = +lng;
- let ret =
- 300.0 +
- lng +
- 2.0 * lat +
- 0.1 * lng * lng +
- 0.1 * lng * lat +
- 0.1 * Math.sqrt(Math.abs(lng));
- ret +=
- ((20.0 * Math.sin(6.0 * lng * PI) +
- 20.0 * Math.sin(2.0 * lng * PI)) *
- 2.0) /
- 3.0;
- ret +=
- ((20.0 * Math.sin(lng * PI) + 40.0 * Math.sin((lng / 3.0) * PI)) *
- 2.0) /
- 3.0;
- ret +=
- ((150.0 * Math.sin((lng / 12.0) * PI) +
- 300.0 * Math.sin((lng / 30.0) * PI)) *
- 2.0) /
- 3.0;
- return ret;
- }
-
- /**
- *
- * @param lng
- * @param lat
- * @returns {number}
- */
- static transformLat(lng, lat) {
- lat = +lat;
- lng = +lng;
- let ret =
- -100.0 +
- 2.0 * lng +
- 3.0 * lat +
- 0.2 * lat * lat +
- 0.1 * lng * lat +
- 0.2 * Math.sqrt(Math.abs(lng));
- ret +=
- ((20.0 * Math.sin(6.0 * lng * PI) +
- 20.0 * Math.sin(2.0 * lng * PI)) *
- 2.0) /
- 3.0;
- ret +=
- ((20.0 * Math.sin(lat * PI) + 40.0 * Math.sin((lat / 3.0) * PI)) *
- 2.0) /
- 3.0;
- ret +=
- ((160.0 * Math.sin((lat / 12.0) * PI) +
- 320 * Math.sin((lat * PI) / 30.0)) *
- 2.0) /
- 3.0;
- return ret;
- }
-
- /**
- * 判断是否在国内。不在国内不做偏移
- * @param lng
- * @param lat
- * @returns {boolean}
- */
- static out_of_china(lng, lat) {
- lat = +lat;
- lng = +lng;
- return !(lng > 73.66 && lng < 135.05 && lat > 3.86 && lat < 53.55);
- }
-}
-
-export default CoordTransform;
diff --git a/src/views/sub/components/scomponents/cesium/AmapMercatorTilingScheme/index.js b/src/views/sub/components/scomponents/cesium/AmapMercatorTilingScheme/index.js
deleted file mode 100644
index 322aeb2..0000000
--- a/src/views/sub/components/scomponents/cesium/AmapMercatorTilingScheme/index.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * @Author: GuLiMmo 2820890765@qq.com
- * @Date: 2024-05-11 09:18:29
- * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-10-28 20:14:09
- * @FilePath: \bigScreen\src\views\layout\components\scomponents\cesium\AmapMercatorTilingScheme\index.js
- * @Description: 高德地图纠偏
- * Copyright (c) 2024 by GuLiMmo, All Rights Reserved.
- */
-const {
- WebMercatorProjection,
- WebMercatorTilingScheme,
- Math,
- Cartographic,
- Cartesian2,
-} = DC.__namespace.Cesium
-import CoordTransform from './CoordTransform'
-
-class AmapMercatorTilingScheme extends WebMercatorTilingScheme {
- constructor() {
- super()
-
- let projection = new WebMercatorProjection()
-
- this._projection.project = function (cartographic, result) {
- result = CoordTransform.WGS84ToGCJ02(
- Math.toDegrees(cartographic.longitude),
- Math.toDegrees(cartographic.latitude),
- )
- result = projection.project(
- new Cartographic(
- Math.toRadians(result[0]),
- Math.toRadians(result[1]),
- ),
- )
- return new Cartesian2(result.x, result.y)
- }
-
- this._projection.unproject = function (cartesian, result) {
- let cartographic = projection.unproject(cartesian)
- result = CoordTransform.GCJ02ToWGS84(
- Math.toDegrees(cartographic.longitude),
- Math.toDegrees(cartographic.latitude),
- )
- return new Cartographic(
- Math.toRadians(result[0]),
- Math.toRadians(result[1]),
- )
- }
- }
-}
-
-export default AmapMercatorTilingScheme
diff --git a/src/views/sub/components/scomponents/layersControl.vue b/src/views/sub/components/scomponents/layersControl.vue
deleted file mode 100644
index 0e2e2ca..0000000
--- a/src/views/sub/components/scomponents/layersControl.vue
+++ /dev/null
@@ -1,333 +0,0 @@
-<!--
- * @Author: shuishen 1109946754@qq.com
- * @Date: 2024-10-31 10:47:29
- * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-11-05 18:36:54
- * @FilePath: \bigScreen\src\views\layout\components\scomponents\layersControl.vue
- * @Description:
- *
- * Copyright (c) 2024 by shuishen, All Rights Reserved.
--->
-<template>
- <public-box>
- <template #name>
- <div class="name"><i class="fa fa-tasks"></i> 图层</div>
- </template>
-
- <template #close>
- <div class="close" @click="$emit('close', 'layers')"><i class="fa fa-close"></i></div>
- </template>
-
- <template #content>
- <div class="tree-content">
- <el-tree ref="treeRef" :data="data" draggable="" show-checkbox node-key="id" default-expand-all
- :default-checked-keys="['1']" :props="defaultProps" :indent="treeProps['indent']" @check="handleCheckChange">
- <template v-slot:default="{ node }">
- <element-tree-line :node="node" :showLabelLine="treeProps['showLabelLine']" :indent="treeProps['indent']">
- <!-- 自定义label的slot -->
- <template v-slot:node-label>
- <span style="font-size: 12px">
- {{ node.label }}
- <i class="el-icon-eleme"></i></span>
- </template>
- <!-- 在右边追加内容的slot -->
- <!-- <template v-slot:after-node-label>
- <span style="padding-right: 10px">
- <el-button type="primary" size="mini" @click.stop="openDrawer(node)">新增子节点</el-button>
- <el-button type="primary" size="mini" @click.stop="openDrawer(node)">修改</el-button>
- <el-button type="danger" size="mini" @click.stop="openDialog">删除</el-button></span>
- </template> -->
- </element-tree-line>
- </template>
- </el-tree>
- </div>
- </template>
- </public-box>
-</template>
-
-<script setup>
-import { getPage } from '@/api/indParkInfo'
-import { getList } from "@/api/space/space"
-import { getList as getRiskList } from "@/api/riskSource/riskSource"
-
-const { VITE_APP_BASE } = import.meta.env
-const treeRef = ref(null)
-
-const treeProps = {
- indent: 16,
- showLabelLine: true,
-}
-
-const data = [
- {
- id: '1',
- label: '化工园区',
- type: 'layer',
- subType: '3Dtile',
- url: VITE_APP_BASE + 'mx/tileset.json',
- layerName: 'hgyq'
- },
-
- {
- id: '2',
- label: '企业分布',
- type: 'layer',
- subType: 'labelPoint',
- method: getPage,
- params: {
- size: 1000
- },
- layerName: 'qyfb'
- },
-
- {
- id: '3',
- label: '应急空间',
- children: [
- {
- id: '3-1',
- label: '应急池',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 1,
- size: 1000
- },
- layerName: 'yjc'
- },
- {
- id: '3-2',
- label: '阀门',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 2,
- size: 1000
- },
- layerName: 'fm'
- },
-
- {
- id: '3-3',
- label: '公共管网',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 3,
- size: 1000
- },
- layerName: 'gggw'
- },
-
- {
- id: '3-4',
- label: '污水提升泵站',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 4,
- size: 1000
- },
- layerName: 'wstsbz'
- },
-
- {
- id: '3-5',
- label: '水库',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 5,
- size: 1000
- },
- layerName: 'sk'
- },
-
- {
- id: '3-6',
- label: '应急泵',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 6,
- size: 1000
- },
- layerName: 'yjb'
- },
-
- {
- id: '3-7',
- label: '消防沙',
- type: 'layer',
- subType: 'labelPoint',
- method: getList,
- params: {
- type: 7,
- size: 1000
- },
- layerName: 'xfs'
- }
- ]
- },
-
- {
- id: '4',
- label: '风险源',
- type: 'layer',
- subType: 'labelPoint',
- method: getRiskList,
- params: {
- size: 1000
- },
- showParams: 'category',
- layerName: 'fxy'
- },
-]
-
-const defaultProps = {
- children: 'children',
- label: 'label',
-}
-
-const checkType = (value) => {
- if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
- return 'obj'
- } else if (Array.isArray(value)) {
- return 'arr'
- }
-}
-// 用于存储收集到的节点的数组
-const collectedNodes = reactive([])
-
-// 递归函数,收集所有 flag 为 true 的子节点
-const collectNodesWithFlag = (nodes) => {
- if (checkType(nodes) == 'obj') {
- if (nodes.type == 'layer') {
- collectedNodes.value.push(nodes)
- }
- if (nodes.children && nodes.children.length > 0) {
- collectNodesWithFlag(nodes.children)
- return
- }
- }
-
- if (checkType(nodes) == 'arr') {
- nodes.forEach(item => {
- if (item.type == 'layer') {
- collectedNodes.value.push(item)
- }
-
- if (item.children && item.children.length > 0) {
- collectNodesWithFlag(item.children)
- }
- })
- }
-}
-
-let addTileLayers = {}
-let tileLayers = new DC.TilesetLayer('tileLayers')
-window.$viewer.addLayer(tileLayers)
-
-const handleCheckChange = (data, options) => {
- collectedNodes.value = []
- collectNodesWithFlag(data)
-
- collectedNodes.value.forEach(item => {
- if (options.checkedKeys.some(i => i == item.id)) {
- if (item.subType == '3Dtile') {
- if (!addTileLayers[item.layerName]) {
- addTileLayers[item.layerName] = new DC.Tileset(
- item.url,
- {
- cullWithChildrenBounds: false,
- maximumScreenSpaceError: 256,
- maximumMemoryUsage: 1024,
- skipLevelOfDetail: true,
- preferLeaves: true
- })
-
- tileLayers.addOverlay(addTileLayers[item.layerName])
- } else {
- addTileLayers[item.layerName].show = true
- }
-
- console.log(addTileLayers[item.layerName], 11111111)
-
- window.$viewer.flyTo(addTileLayers[item.layerName])
- } else if (item.subType == 'labelPoint') {
- if (!addTileLayers[item.layerName]) {
- addTileLayers[item.layerName] = new DC.HtmlLayer(addTileLayers[item.layerName])
- window.$viewer.addLayer(addTileLayers[item.layerName])
- }
-
- item.method(item.params).then(res => {
- let data = res.data.data.records
-
- data.filter(i => i.lng && i.lng != '' && i.lat && i.lat != '').forEach(i => {
- let divIcon = new DC.DivIcon(
- new DC.Position(i.lng, i.lat, 0),
- `<div class="public-map-popup">
- <div class="marsBlueGradientPnl">
- <div>${i[item.showParams] || i.name}</div>
- </div>
- </div>`
- )
-
- addTileLayers[item.layerName].addOverlay(divIcon)
- })
- })
- }
- } else {
- if (addTileLayers[item.layerName]) {
- if (item.subType == '3Dtile') {
- addTileLayers[item.layerName].show = false
- } else if (item.subType == 'labelPoint') {
- window.$viewer.removeLayer(addTileLayers[item.layerName])
- }
-
- delete addTileLayers[item.layerName]
- }
- }
- })
-}
-
-onMounted(() => {
- handleCheckChange(data.filter(i => i.id == '1'), {
- checkedKeys: ['1']
- })
-})
-</script>
-
-<style lang="scss" scoped>
-.tree-content {
- min-width: 200px;
- padding: 10px;
-
- ::v-deep(.el-tree) {
- color: #fff;
- background: transparent;
-
- /* 鼠标浮动过的背景颜色 */
- .el-tree-node__content:hover {
- background: #0074b7;
- }
-
- /* 鼠标点击时节点的背景颜色 */
- .el-tree-node:focus>.el-tree-node__content {
- background-color: #0074b7 !important;
- color: rgb(255, 255, 255);
- }
-
- /* 鼠标失去焦点时节点背景的颜色 */
- .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
- background: rgb(0, 129, 204);
- }
- }
-}
-</style>
\ No newline at end of file
diff --git a/src/views/sub/components/scomponents/tool/exportScene.vue b/src/views/sub/components/scomponents/tool/exportScene.vue
deleted file mode 100644
index f139255..0000000
--- a/src/views/sub/components/scomponents/tool/exportScene.vue
+++ /dev/null
@@ -1,10 +0,0 @@
-<template>
-</template>
-
-<script setup>
-window.$viewer.exportScene()
-const emit = defineEmits(['closeChild'])
-emit('closeChild')
-</script>
-
-<style lang="scss" scoped></style>
\ No newline at end of file
diff --git a/src/views/sub/components/scomponents/tool/location.vue b/src/views/sub/components/scomponents/tool/location.vue
deleted file mode 100644
index a531121..0000000
--- a/src/views/sub/components/scomponents/tool/location.vue
+++ /dev/null
@@ -1,89 +0,0 @@
-<!--
- * @Author: shuishen 1109946754@qq.com
- * @Date: 2024-10-29 15:48:36
- * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-10-29 19:53:49
- * @FilePath: \bigScreen\src\views\layout\components\scomponents\tool\location.vue
- * @Description:
- *
- * Copyright (c) 2024 by shuishen, All Rights Reserved.
--->
-<template>
- <public-box style="z-index: 100;">
- <template #name>
- <div class="name"><i class="fa fa-map-pin"></i> 底图</div>
- </template>
-
- <template #close>
- <div class="close cursor-p" @click="$emit('closeChild')"><i class="fa fa-close"></i></div>
- </template>
-
- <template #content>
- <div class="cur-content">
- <div>
- <span>经度:</span>
- <el-input v-model="longitude" size="small" placeholder="请输入经度" />
- </div>
- <div>
- <span>纬度:</span>
- <el-input v-model="latitude" size="small" placeholder="请输入纬度" />
- </div>
- <div>
- <span>高度:</span>
- <el-input v-model="height" size="small" placeholder="请输入高度" />
- </div>
- </div>
-
- <div class="cur-btn">
- <el-button color="rgba(13,100,167,.8)" @click="flyTo" type="primary" size="small">坐标定位</el-button>
- </div>
- </template>
- </public-box>
-</template>
-
-<script setup>
-const longitude = ref(0)
-const latitude = ref(0)
-const height = ref(0)
-
-const flyTo = () => {
- window.$viewer.flyToPosition(new DC.Position(longitude.value, latitude.value, height.value, 0, -90, 0), () => { }, 3)
-}
-</script>
-
-<style lang="scss" scoped>
-.cur-content {
- &>div {
- margin-top: 10px;
- padding: 0 10px;
- display: flex;
- justify-content: space-between;
- align-items: center;
-
- span {
- width: 54px;
- }
-
- ::v-deep(.el-input) {
- border: none !important;
-
- .el-input__wrapper {
- background: rgba(63, 72, 84, .7) !important;
- border: none !important;
- box-shadow: none;
-
- input {
- color: #fff;
- }
- }
- }
- }
-}
-
-.cur-btn {
- margin: 10px 0;
- display: flex;
- justify-content: center;
- align-items: center;
-}
-</style>
\ No newline at end of file
diff --git a/src/views/sub/components/scomponents/toolList.vue b/src/views/sub/components/scomponents/toolList.vue
deleted file mode 100644
index 82496ad..0000000
--- a/src/views/sub/components/scomponents/toolList.vue
+++ /dev/null
@@ -1,130 +0,0 @@
-<!--
- * @Author: shuishen 1109946754@qq.com
- * @Date: 2024-10-29 14:20:49
- * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-10-29 17:21:51
- * @FilePath: \bigScreen\src\views\layout\components\scomponents\toolList.vue
- * @Description:
- *
- * Copyright (c) 2024 by shuishen, All Rights Reserved.
--->
-<template>
- <ul v-show="moreToolShow" class="tool-list-box">
- <li @click="showComponent(item.component)" v-for="item, index in components" :key="index">
- <i :class="item.icon"></i> {{ item.title }}
- </li>
- </ul>
-
- <component :is="currentComponent" v-if="currentComponent" @closeChild="closeComponent" />
-</template>
-
-<script setup>
-const { moreToolShow } = defineProps({
- moreToolShow: {
- type: Boolean, //参数类型
- default: false, //默认值
- required: true, //是否必须传递
- }
-})
-import location from './tool/location.vue'
-import exportScene from './tool/exportScene.vue'
-import component from 'element-plus/es/components/tree-select/src/tree-select-option.mjs'
-const emit = defineEmits(['close'])
-
-let currentComponent = shallowRef(null)
-const components = [
- {
- icon: 'fa fa-calculator',
- title: '图上量算',
- },
- {
- icon: 'fa fa-bar-chart',
- title: '空间分析',
- },
- {
- name: 'location',
- icon: 'fa fa-map-pin',
- title: '坐标定位',
- component: location
- },
- {
- icon: 'fa fa-paper-plane',
- title: '地区导航',
- },
- {
- icon: 'fa fa-edit',
- title: '我的标记',
- },
- {
- icon: 'fa fa-tags',
- title: '视角书签',
- },
- {
- name: 'exportScene',
- icon: 'fa fa-download',
- title: '场景导出',
- component: exportScene
- },
- {
- icon: 'fa fa-object-group',
- title: '图上标绘',
- },
- {
- icon: 'fa fa-helicopter',
- title: '飞行漫游',
- },
- {
- icon: 'fa fa-level-up',
- title: '路线导航',
- },
- {
- icon: 'fa fa-columns',
- title: '卷帘对比',
- },
- {
- icon: 'fa fa-window-restore',
- title: '分屏对比',
- },
-]
-
-const showComponent = (component) => {
- currentComponent.value = component
- emit('close', 'tool')
-}
-
-const closeComponent = () => {
- currentComponent.value = null
-}
-</script>
-
-<style lang="scss" scoped>
-.tool-list-box {
- position: absolute;
- right: 540px;
- z-index: 101;
- top: 152px;
- background: rgba(63, 72, 84, .7);
- pointer-events: auto;
-
- li {
- padding: 6px 10px;
- display: flex;
- justify-content: space-between;
- align-items: center;
- color: #fff;
- cursor: pointer;
-
- i {
- margin-right: 5px;
- }
- }
-
- li:hover {
- background: #4db3ff;
- }
-
- li:first-child {
- margin-top: 0;
- }
-}
-</style>
\ No newline at end of file
--
Gitblit v1.9.3