diff --git a/src/assets/images/land/底部框架.png b/src/assets/images/basic/footerBG.png
similarity index 100%
rename from src/assets/images/land/底部框架.png
rename to src/assets/images/basic/footerBG.png
diff --git a/src/assets/images/land/图层 2.png b/src/assets/images/land/countCircleBG.png
similarity index 100%
rename from src/assets/images/land/图层 2.png
rename to src/assets/images/land/countCircleBG.png
diff --git a/src/assets/images/land/组 84.png b/src/assets/images/land/countTextBG.png
similarity index 100%
rename from src/assets/images/land/组 84.png
rename to src/assets/images/land/countTextBG.png
diff --git a/src/assets/images/land/副标题 - 副本.png b/src/assets/images/land/副标题 - 副本.png
deleted file mode 100644
index 0c7e113..0000000
Binary files a/src/assets/images/land/副标题 - 副本.png and /dev/null differ
diff --git a/src/components/centerMap.vue b/src/components/centerMap.vue
index 01ee33b..830228c 100644
--- a/src/components/centerMap.vue
+++ b/src/components/centerMap.vue
@@ -10,15 +10,15 @@
import { isEmpty, getAssetsFile } from '@/utils';
import { ref, reactive, onMounted } from 'vue';
import { useRoute } from 'vue-router';
-
+import geoJsonData from '../components/530926geo.json'; // 根据实际情况调整路径
const route = useRoute();
var aspectScale = 0.8807505292367753;
// var iconUrl = 'http://localhost:9529/sub-government-screen-service/src/assets/images/vsualized/home/partbg.png';
// var iconUrl = getAssetsFile('images/vsualized/gmmap.png').href;
var iconUrl = getAssetsFile('images/vsualized/gmmap2.png').href;
+
const isShow = ref(false);
-import geoJsonData from '../components/530926geo.json'; // 根据实际情况调整路径
let geoData = geoJsonData;
let mapName = ref('ZJ' + route.name);
const chartsData = reactive({
@@ -50,11 +50,12 @@ const chartsData = reactive({
geo3D: {
map: mapName.value,
roam: true,
- zoom: 1.2,
+ zoom: 1,
+ left: '30px',
show: true,
zlevel: -1, // 必须设置,
viewControl: {
- distance: 110,
+ distance: 115,
alpha: 60,
beta: 0,
minBeta: -360,
@@ -97,7 +98,54 @@ const chartsData = reactive({
},
},
series: [
- // 闪烁散点图系列
+ {
+ type: 'map3D',
+ map: mapName.value,
+ zoom: 1,
+ left: '30px',
+ viewControl: {
+ distance: 115,
+ alpha: 60,
+ beta: 0,
+ minBeta: -360,
+ maxBeta: 720,
+ // 限制视角,使不能旋转缩放平移
+ // rotateSensitivity: 0,
+ // zoomSensitivity: 0,
+ // panSensitivity: 0,
+ },
+ itemStyle: {
+ // 三维地理坐标系组件 中三维图形的视觉属性,包括颜色,透明度,描边等。
+ color: 'rgba(75,255,180,0.2)', // 地图板块的颜色
+ opacity: 1, // 图形的不透明度 [ default: 1 ]
+ borderWidth: 1.5, // (地图板块间的分隔线)图形描边的宽度。加上描边后可以更清晰的区分每个区域 [ default: 0 ]
+ borderColor: '#4bffb4', // 图形描边的颜色。[ default: #333 ]
+ },
+ label: {
+ show: true,
+ distance: 0,
+ color: '#000',
+ padding: [6, 4, 2, 4],
+ borderRadius: 4,
+ backgroundColor: 'rgba(255,255,255,0.2)',
+ textStyle: {
+ fontSize: 12,
+ color: '#E87813', // 地图初始化区域字体颜色
+ borderWidth: 0,
+ borderColor: '#000',
+ },
+ },
+ emphasis: {
+ //高亮状态的效果
+ label: {
+ show: true,
+ color: '#fff',
+ },
+ itemStyle: {
+ color: 'rgba(75,255,180,0.3)', // 地图板块的颜色
+ },
+ },
+ },
],
},
});
@@ -106,12 +154,9 @@ const mapClick = (data) => {
isShow.value = true;
console.info('mapClick', data);
};
-
-const infoHide = () => {
- isShow.value = false;
-};
-
-onMounted(() => {});
+onMounted(() => {
+ console.info('iconUrl', iconUrl);
+});
diff --git a/src/components/custom-scroll-title/index.vue b/src/components/custom-scroll-title/index.vue
index 13accac..6472b01 100644
--- a/src/components/custom-scroll-title/index.vue
+++ b/src/components/custom-scroll-title/index.vue
@@ -38,6 +38,7 @@ import { useRouter } from 'vue-router';
const router = useRouter();
onMounted(() => {
handleWidth();
+ activeTitle.value = router.currentRoute.value.name;
});
// const emit = defineEmits(['changeTitle']);
const props = defineProps({
@@ -91,12 +92,14 @@ watch(
);
function handleWidth() {
let ld = document.querySelector('.left_titles_container');
- let w = ld.clientWidth;
- itemW.value = (w - 2 * gap.value) / 3;
- titleContentW.value = itemW.value * leftTitles.value.length + leftTitles.value.length * gap.value;
- if (props.titles.length > 3 && props.titles.length < 6) {
- let l = 3 - (props.titles.length - 3);
- right.value = l * itemW.value + (l - 1) * gap.value;
+ if (ld) {
+ let w = ld.clientWidth;
+ itemW.value = (w - 2 * gap.value) / 3;
+ titleContentW.value = itemW.value * leftTitles.value.length + leftTitles.value.length * gap.value;
+ if (props.titles.length > 3 && props.titles.length < 6) {
+ let l = 3 - (props.titles.length - 3);
+ right.value = l * itemW.value + (l - 1) * gap.value;
+ }
}
}
function handleTitleBtn(t = -1) {
@@ -165,7 +168,7 @@ function handleTitleClick(val) {
width: 30%;
height: 100%;
overflow: hidden;
- line-height: 60px;
+ line-height: 90px;
.title_content {
position: absolute;
top: 10px;
diff --git a/src/components/subTop.vue b/src/components/subTop.vue
index 8a4707e..715becb 100644
--- a/src/components/subTop.vue
+++ b/src/components/subTop.vue
@@ -7,7 +7,7 @@
}"
class="title-top-bg"
>
- {{ topTitle || '--' }}
+ {{ topTitle || '--' }}
+
+
diff --git a/src/views/land/index.vue b/src/views/land/index.vue
index 33dc092..4182329 100644
--- a/src/views/land/index.vue
+++ b/src/views/land/index.vue
@@ -1,5 +1,5 @@
-
+
@@ -28,9 +28,9 @@
-
+
-
+
@@ -59,9 +59,12 @@ import landareaCharts from './components/landareaCharts.vue';
import landCirculation from './components/landCirculation.vue';
import landPlan from './components/landPlan.vue';
import landPatrol from './components/landPatrol.vue';
+import LandAera from './components/LandAera.vue';