本文主要是介绍Cesium添加罗盘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1 从github下载罗盘源码
添加链接描述
2 参考引用地址
js版参考地址
vue版参考地址
最后合适的链接
笔者虽然全部浏览了上述的解决方案,然而还是没有成功的导入到自己的项目中
笔者项目Cesium 1.9 + vue2,由于是协同作战,改变node_modules的方案并不适合笔者(难道我要每个人都通知一遍让他们改一下nodemodules?)
看到这里,如果你也有同样的诉求,可以尝试下一下方案。所谓歪打正着了。对ES6了解的并不深入,如果大家有其他好的办法欢迎留言。
- 1 还是要安装cesium-navigation-es6 ,先埋个伏笔,指定版本是因为我就试了这一版,其他的周天晚上没时间了。
yarn add cesium-navigation-es6@1.0.9
- 2 从node_modules 中把上述安装的文件夹考入到项目的静态文件夹中,保证你可以顺利引入的路径
- 3 在Cesium已经顺利导入的情况下,把上述文件夹中的 // import Cesium from ‘cesium/Cesium’ 全部注释掉
我是根据报错提示一个一个注释的,懒得尝试的可以下载文末提供的我自己的地址 - 4 将var definedProperties = Cesium.defineProperties 都改为
var definedProperties = Object.defineProperties
- 5 然后就可以在项目中导入了,我是动态导入的,就是为何注释掉Cesium ,先导入Cesium 后,用require 导入
viewerCesiumNavigationMixin = require('./Cesium/navigation/viewerCesiumNavigationMixin.js').default
都已经使用了离线包了为何还要安装node 依赖呢
我一开始也是没有安装node 依赖,但是其中有些文件引用了一些另外的依赖,需要额外安装,所以
还是先安装了 cesium-navigation-es6 ,解决这个问题。
然后就是初始化viewer 使用了,其他的样式之类的就可以找大神的案例尽情复制粘贴了。
var options = {};// 用于在使用重置导航重置地图视图时设置默认视图控制。接受的值是Cesium.Cartographic 和Cesium.Rectangle.// options.defaultResetView = Cesium.Cartographic.fromDegrees(110, 30, 2000000);// 用于启用或禁用罗盘。true是启用罗盘,false是禁用罗盘。默认值为true。如果将选项设置为false,则罗盘将不会添加到地图中。options.enableCompass= true;// 用于启用或禁用缩放控件。true是启用,false是禁用。默认值为true。如果将选项设置为false,则缩放控件 将不会添加到地图中。options.enableZoomControls= true;// 用于启用或禁用距离图例。true是启用,false是禁用。默认值为true。如果将选项设置为false,距离图例将不会添加到地图中。options.enableDistanceLegend= true;// 用于启用或禁用指南针外环。true是启用,false是禁用。默认值为true。如果将选项设置为false,则该环将可见但无效。options.enableCompassOuterRing= true;viewer.extend(viewerCesiumNavigationMixin, options);
这篇关于Cesium添加罗盘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!