【uniapp 引入cesium】
·
在项目中使用步骤
1. npm install cesium --save
2. 接入项目 cesium
node_modules中找到cesium,复制build文件夹下Cesium文件夹到public文件夹下。复制完后就是下图

3. index.html中引入cesium
注意!!!一定要引入绝对路径不然刷新会报错
<head>
<link rel="stylesheet" href="/Cesium/Widgets/widgets.css">
</head>
<body>
<script type="text/javascript" src="/Cesium/Cesium.js"></script>
</body>
4.完成后重启项目
<template>
<div id="my-map"></div>
</template>
<script>
let viewer = null,
handler = null,
positionList = []
export default {
data() {
return {
viewer: null,
}
},
methods: {
init() {
Cesium.Ion.defaultAccessToken = '这里是自己的地图token,可以暂时用自己生成的临时的'
// 设置静态资源访问地址
Cesium.buildModuleUrl.setBaseUrl('/Cesium/')
// 默认显示范围是中国
Cesium.Camera.DEFAULT_VIEW_RECTANGLE = Cesium.Rectangle.fromDegrees(73.5, 4, 135, 53.5)
viewer = new Cesium.Viewer("my-map", {
imageryProvider: new Cesium.UrlTemplateImageryProvider({
url: 'https://webst0{s}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}',
maximumLevel: 18, // 瓦片可放大的最大值
subdomains: "1234"
}),
shouldAnimate: true,
baseLayerPicker: false, // 是否显示图层选择器
geocoder: false, // 是否显示geocoder小器件,右上角查询按钮
animation: false, // 是否创建动画小器件,左下角仪表
fullscreenButton: false, // 是否显示全屏控件,右下角
homeButton: false, // 是否显示Home按钮
infoBox: false, // 是否显示信息框
sceneModePicker: false, // 是否显示3D/2D选择器
sceneMode: Cesium.SceneMode.SCENE3D, // 初始场景模式 1 2D模式 2 2D循环模式 3 3D模式 Cesium.SceneMode
selectionIndicator: false, // 不会创建SelectionIndicator小部件
timeline: false, // 不会创建时间线小部件
navigationHelpButton: false, // 不会创建导航帮助按钮
navigationInstructionsInitiallyVisible: false, // 是否显示帮助导航
})
// 调整画板大小
viewer.canvas.style.width = '100vw'
viewer.canvas.style.height = '100vh'
// 开启地形深度检测
viewer.scene.globe.depthTestAgainstTerrain = true;
// 去logo水印
viewer.cesiumWidget.creditContainer.style.display = 'none'
},
},
mounted() {
this.init();
},
};
</script>
<style scoped>
#my-map {
width: 100%;
height: 100%;
background-color: black;
}
</style>
更多推荐
所有评论(0)