|  | @@ -8,80 +8,30 @@
 | 
	
		
			
				|  |  |        <Rightmoudle />
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -  <!-- 地图容器 -->
 | 
	
		
			
				|  |  | -  <div id="map-container" class="map-container"></div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +  <Cesium />  
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script setup>
 | 
	
		
			
				|  |  | -import { ref, onMounted, onUnmounted } from 'vue'
 | 
	
		
			
				|  |  | -import AMapLoader from '@amap/amap-jsapi-loader'
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  import Header from './header.vue'
 | 
	
		
			
				|  |  |  import Gradientoverlay from './gradient-overlay.vue'
 | 
	
		
			
				|  |  |  import Leftmoudle from './leftmodul.vue'
 | 
	
		
			
				|  |  |  import Rightmoudle from './rightmodul.vue'
 | 
	
		
			
				|  |  |  import Middlemoudle from './middlemodul.vue'
 | 
	
		
			
				|  |  | +import Cesium from './Cesium.vue'
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// 地图实例
 | 
	
		
			
				|  |  | -const map = ref(null)
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// 地图配置
 | 
	
		
			
				|  |  | -const mapConfig = {
 | 
	
		
			
				|  |  | -  viewMode: '3D',
 | 
	
		
			
				|  |  | -  zoom: 13,
 | 
	
		
			
				|  |  | -  center: [120.21937542, 31.568152],
 | 
	
		
			
				|  |  | -  pitch: 45,
 | 
	
		
			
				|  |  | -  features: ['bg', 'road', 'building'],
 | 
	
		
			
				|  |  | -  buildingAnimation: true,
 | 
	
		
			
				|  |  | -  showLabel: false
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// 初始化地图
 | 
	
		
			
				|  |  | -const initMap = async () => {
 | 
	
		
			
				|  |  | -  try {
 | 
	
		
			
				|  |  | -    window._AMapSecurityConfig = {
 | 
	
		
			
				|  |  | -      securityJsCode: 'b87476c68ed625e2d337f160d0ba6122'
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    const AMap = await AMapLoader.load({
 | 
	
		
			
				|  |  | -      key: '694aba7c51008bf8c08afc94aa566fc1',
 | 
	
		
			
				|  |  | -      version: '2.0',
 | 
	
		
			
				|  |  | -      plugins: ['AMap.Scale', 'AMap.ToolBar']
 | 
	
		
			
				|  |  | -    })
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    map.value = new AMap.Map('map-container', {
 | 
	
		
			
				|  |  | -      ...mapConfig,
 | 
	
		
			
				|  |  | -      layers: [
 | 
	
		
			
				|  |  | -        new AMap.TileLayer.Satellite(),
 | 
	
		
			
				|  |  | -        new AMap.TileLayer.RoadNet()
 | 
	
		
			
				|  |  | -      ]
 | 
	
		
			
				|  |  | -    })
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    // 添加控件
 | 
	
		
			
				|  |  | -    map.value.addControl(new AMap.Scale())
 | 
	
		
			
				|  |  | -    map.value.addControl(new AMap.ToolBar())
 | 
	
		
			
				|  |  | -  } catch (error) {
 | 
	
		
			
				|  |  | -    console.error('地图初始化失败:', error)
 | 
	
		
			
				|  |  | -    alert('高德地图加载失败,请检查控制台错误')
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// 生命周期
 | 
	
		
			
				|  |  | -onMounted(() => initMap())
 | 
	
		
			
				|  |  | -onUnmounted(() => map.value?.destroy())
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <style scoped>
 | 
	
		
			
				|  |  | -/* 基础样式重置 */
 | 
	
		
			
				|  |  | -:root {
 | 
	
		
			
				|  |  | -  --primary-color: #154fb3;
 | 
	
		
			
				|  |  | -  --panel-bg: rgba(255, 255, 255, 0.95);
 | 
	
		
			
				|  |  | -  --border-radius: 12px;
 | 
	
		
			
				|  |  | -  --box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/* 主内容区域布局 */
 | 
	
		
			
				|  |  | +.main {
 | 
	
		
			
				|  |  | +  display: grid;
 | 
	
		
			
				|  |  | +  grid-template-columns: 1fr 2fr 1fr;
 | 
	
		
			
				|  |  | +  gap: 20px;
 | 
	
		
			
				|  |  | +  padding: 20px;
 | 
	
		
			
				|  |  | +  height: calc(100vh - 80px); /* 根据实际头部高度调整 */
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  </style>
 |