1. 创建Vue项目
首先,确保你已经安装了Vue CLI。如果没有安装,可以使用以下命令进行安装:
bash
复制
npm install -g @vue/cli
然后创建一个新的Vue项目:
bash
复制
vue create my-cesium-app
进入项目目录:
bash
复制
cd my-cesium-app
2. 安装Cesium
在Vue项目中安装Cesium:
bash
复制
npm install cesium
3. 配置Cesium
Cesium需要一些额外的配置才能在Vue项目中正常工作。首先,在vue.config.js中添加以下配置:
javascript
复制
const CopyWebpackPlugin = require('copy-webpack-plugin');
const path = require('path');
module.exports = {
configureWebpack: {
plugins: [
new CopyWebpackPlugin({
patterns: [
{
from: path.join(__dirname, 'node_modules/cesium/Build/Cesium/Workers'),
to: 'Workers'
},
{
from: path.join(__dirname, 'node_modules/cesium/Build/Cesium/ThirdParty'),
to: 'ThirdParty'
},
{
from: path.join(__dirname, 'node_modules/cesium/Build/Cesium/Assets'),
to: 'Assets'
},
{
from: path.join(__dirname, 'node_modules/cesium/Build/Cesium/Widgets'),
to: 'Widgets'
}
]
})
]
}
};
4. 初始化Cesium
在Vue组件中初始化Cesium。首先,在src/components目录下创建一个新的组件,例如CesiumViewer.vue:
vue
复制
<template>
<div id="cesiumContainer"></div>
</template>
<script>
import * as Cesium from 'cesium';
import 'cesium/Build/Cesium/Widgets/widgets.css';
export default {
name: 'CesiumViewer',
mounted() {
this.initCesium();
},
methods: {
initCesium() {
// 设置Cesium的静态资源路径
window.CESIUM_BASE_URL = '/';
// 初始化Cesium Viewer
const viewer = new Cesium.Viewer('cesiumContainer', {
terrainProvider: Cesium.createWorldTerrain()
});
// 添加图片图层
const imageryLayer = viewer.imageryLayers.addImageryProvider(
new Cesium.SingleTileImageryProvider({
url: 'https://example.com/path/to/your/image.jpg', // 替换为你的图片URL
rectangle: Cesium.Rectangle.fromDegrees(-75.0, 28.0, -67.0, 29.75) // 设置图片的经纬度范围
})
);
// 定位到图片所在区域
viewer.camera.setView({
destination: Cesium.Rectangle.fromDegrees(-75.0, 28.0, -67.0, 29.75)
});
}
}
};
</script>
<style scoped>
#cesiumContainer {
width: 100%;
height: 100vh;
}
</style>
5. 在App.vue中使用CesiumViewer组件
在src/App.vue中使用刚刚创建的CesiumViewer组件:
vue
复制
<template>
<div id="app">
<CesiumViewer />
</div>
</template>
<script>
import CesiumViewer from './components/CesiumViewer.vue';
export default {
name: 'App',
components: {
CesiumViewer
}
};
</script>
<style>
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin: 0;
padding: 0;
}
</style>
6. 运行项目
最后,运行你的Vue项目:
bash
复制
npm run serve
打开浏览器,访问http://localhost:8080,你应该能够看到一个Cesium的3D地图,并且加载了你指定的图片。
7. 注意事项
-
图片URL:确保你提供的图片URL是可访问的,并且支持跨域请求。
-
经纬度范围:
Cesium.Rectangle.fromDegrees中的经纬度范围需要根据你的图片实际覆盖的区域进行调整。 -
Cesium静态资源:确保Cesium的静态资源(如Workers、Assets等)正确配置,否则可能会导致Cesium无法正常工作。
通过以上步骤,你应该能够在Vue项目中成功初始化Cesium并加载图片。你可以根据需要进一步扩展功能,例如添加更多的图层、实体、或者进行交互操作。

5091

被折叠的 条评论
为什么被折叠?



