![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Cesium
文章平均质量分 61
ONEGISER(ZPC)
专注于GIS开发
展开
-
基于Cesium搭建单体化平台全流程简单记录
数据格式为img,用arcmap转为tif切tifQGIS下载影像,拖入mapbox图源切数据还是用CesiumLab,当然qgis也可以切。原创 2022-11-28 23:34:02 · 742 阅读 · 0 评论 -
Cesium源码编译使用(weixin公众号【图说GIS】)
Cesium源码编译使用(原创 2022-08-23 13:07:43 · 208 阅读 · 0 评论 -
离线底图瓦片,可用于Cesium加载使用【图说GIS】
离线地图分为两种:一种叫“金字塔瓦片”数据,一种叫“矢量地图数据”。我们看的在线地图比如,百度,谷歌,高德等等网页上的地图,都是金字塔瓦片;另外一种是手机上用来导航的,比如高德地图APP,也可以下载离线地图数据,这个就是矢量的。卫星影像地图都是金字塔瓦片,无矢量数据。因此,我们所说的离线地图 通常都是指离线地图金字塔瓦片数据。离线地图金字塔瓦片搭建的离线地图服务分很多种:一般有WEB方式,TMS、WMTS/WMS等等,不同的应用有不同的需求服务方式。我发布的可参考文章:《QGIS常用图源(谷歌中国、mapb原创 2022-06-09 21:48:25 · 1202 阅读 · 2 评论 -
集众家之所长,用ts重写Cesium热力图cesium-heatmap-es6(weixin公众号【图说GIS】)
《源码一wangzhongliang/CesiumHeatmap》《源码二danwild/CesiumHeatmap》《源码3》《源码4》原创 2022-01-27 11:52:32 · 1753 阅读 · 4 评论 -
Cesium获取当前相机视角(weixin公众号【图说GIS】)
import { Cartographic, Viewer, Math as CesiumMath, Cartesian2 } from "cesium"; const heading = CesiumMath.toDegrees(viewer.camera.heading)const pitch = CesiumMath.toDegrees(viewer.camera.pitch)const roll = CesiumMath.toDegrees(viewer.camera.roll)const原创 2022-01-17 14:02:10 · 3151 阅读 · 0 评论 -
Cesium隐藏太阳、月亮、大气【图说GIS】
//隐藏太阳viewer.scene.globe.enableLighting = false;viewer.shadows = false;viewer.scene.sun.show=false;//还可以viewer.scene.sun.destory();//月亮viewer.scene.moon.show=false;//大气viewer.scene.skyAtmosphere=false;//雾viewer.scene.fog.enable=false;......原创 2021-12-30 21:11:35 · 2580 阅读 · 1 评论 -
大数据量的兴趣点如何在Cesium快速加载?(weixin公众号【图说GIS】)
非常感谢UP主GIS小呲花,在SuperMap的这块给了全部的方案。我有19w条地名地址数据需要在Cesium前端展示。使用SuperMap IDesktop切三维缓存,使用SuperMap IServer发布服务,使用SuperMap IClient加载IDesktop切三维缓存有两种方式(1)将POI数据添加至新球面场景然后制作标签专题图保存场景,生成缓存IServer发布服务将文件拷贝至服务器(2)生成三维数据集,为了贴地,我这里没有成功,是技术工程师告原创 2021-12-21 19:06:09 · 2711 阅读 · 1 评论 -
Cesium不改源码支持坐标系为4490的ArcGIS Rest缓存服务的解决方案,代码为TypeScript编写(vx gzh【图说GIS】)
遇到的问题An error occurred in “ArcGisMapServerImageryProviderExt”: Tile spatial reference WKID 4490 is not supported.原创 2021-11-21 22:02:46 · 2866 阅读 · 4 评论 -
Cesium开发资源导览
前言Cesium开发中用到的一些素材共享给大家,陆续补充,如有其他,可以留言。如有帮助记得点赞+收藏。文档名称地址APIhttps://cesium.com/learn/cesiumjs/ref-doc/示例https://sandcastle.cesium.com/Cesium中文网http://cesium.xin/Cesium中文网2http://cesiumcn.org/Ceisum介绍https://jiegiser.github.io/原创 2021-11-11 19:15:30 · 1963 阅读 · 0 评论 -
Cesium无需KEY调用Bing地图
前言虽然Cesium默认已经实现了Bing地图的调用,但需要申请key。如何不用key就可调用?抱着好奇的心态去看了下他的源代码。通过分析源代码,最终完成了调用,记录如下:关键源码BingMapsImageryProvider.tileXYToQuadKey = function (x, y, level) { var quadkey = ""; for (var i = level; i >= 0; --i) { var bitmask = 1 << i;原创 2021-11-10 13:53:00 · 2258 阅读 · 1 评论 -
Cesium加载天地图山东WMTS服务(weixin公众号【图说GIS】)
前言有网友在群里说天地图山东的山东省线划电子地图暗色版服务加载不成功,抱着好奇及帮助别人的心态去试了下,结果可以,斌记录下。实现过程查看服务元数据访问http://124.128.48.215:8083/tileservice/dsfg_asdxb?request=GetCapabilities&Service=WMTS查看关键参数代码<!DOCTYPE html><html lang="en"><head> <meta c原创 2021-11-06 22:36:09 · 1085 阅读 · 3 评论 -
QGIS合并相邻建筑shp面,CesiumLab将shp切为3dtiles,使用Cesium展示
前言拿到了一份建筑物数据,是shp格式,由于自己是生活在兰州,便下载了兰州市的shapefile数据,尝试使用CesiumLab去处理此数据,多次未成功!数据获取及制作请看《全网最快的建筑物白膜生成教程,附62个城市建筑物矢量数据》,由GIS领域非常专业的一位UP主制作,主要讲建筑物白膜生成教程,并附加62个城市建筑物矢量数据。最终发现问题是里面的一部分面比较碎,需要合并处理。由于自己还未安装iDesktopX,不过截至现在已经下载下来了。便尝试用QGIS处理一下。处理方法工具:Proc.原创 2021-11-05 23:03:55 · 5143 阅读 · 4 评论 -
Cesium加载3dtiles并调整位置(调整高度、平移、旋转、缩放)
效果展示代码平移模型核心代码 const _tx=tx?tx:0; const _ty=ty?ty:0; const _tz=tz?tz:0; const tempTranslation = new Cesium.Cartesian3(_tx, _ty, _tz); const offset =Cesium.Matrix4.multiplyByPoint(m, tempTranslation, new Cesium.Cartesian3(0,0,0)); con原创 2021-11-04 19:25:10 · 8514 阅读 · 3 评论 -
Cesium加载billboard,GIF,模拟socket动态移动(vx gzh【图说GIS】)
1.Cesium的billboard使用动态GIF需要注意的是需要引入libgif.js<!DOCTYPE html><html lang="en"><head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="theme-color" co原创 2021-10-31 18:30:34 · 2338 阅读 · 7 评论 -
Cesium调用在线地形服务,SuperMap超图、火星科技、恒歌科技、CesiumLab、ESRI(weixin公众号【图说GIS】)
前言最近偶然发现Cesium可以调用SuperMap在线地形服务,服务地址为:https://www.supermapol.com/realspace/services/3D-stk_terrain/rest/realspace/datas/info/data/path,需要使用CesiumTerrainProvider。效果展示Cesium调用超图在线地形服务代码<!DOCTYPE html><html lang="en"><head> <原创 2021-10-31 14:28:17 · 6723 阅读 · 1 评论 -
Cesium中匀速飞行的实现,漫游(weixin公众号【图说GIS】)
前言飞行的主要实现思路是通过轨迹点计算空中飞行距离,然后计算每段匀速飞行的时间,当然你也可以变速。本文就是匀速飞行的实现,希望能对你有所帮助。参考文章代码实现<!DOCTYPE html><html lang="en"><head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" />原创 2021-10-30 22:57:16 · 1842 阅读 · 0 评论 -
QGIS离线GeoJSON数据,使用Cesium加载并根据楼层高度拉伸(weixin公众号【图说GIS】)
前言往往好多事情是需求推动的,正好一个网友在群里问到”怎么让Cesium加载GeoJSON的白膜并贴在地形上?“,联系到他,要了他的数据,完成了代码并测试通过。正好出差,而且一个人工作之余无事(加之西宁不知咋搞的,宾馆旁的市政作业挖掘机22:35还不歇息,可谓是惊天动地啊),通过从数据的获取到加载进行研究并作出记录,希望能帮到更多的人!1. QGIS离线GeoJSON白膜数据《QGIS离线数据或瓦片并使用Cesium调用离线瓦片》已经写了相关内容,可惜当时未导出GeoJSON数据,此次基本按照当时得操原创 2021-10-25 22:39:05 · 2429 阅读 · 4 评论 -
Cesium点击地球获取位置及坐标转化
前言鼠标事件监听Cesium中视图的变化监听使用的是viewer.screenSpaceEventHandler。viewer.screenSpaceEventHandler.setInputAction(function onLeftClick(movement) {})地理坐标系介绍(以WGS84为例)World Geodetic System 1984,是为GPS全球定位系统使用而建立的坐标系统,坐标原点为地球质心,其地心空间直角坐标系的Z轴指向BIH (国际时间服务机构)1984.O定原创 2021-09-30 14:57:23 · 1105 阅读 · 0 评论 -
生成Cesium地形文件(terrain),并用Cesium完成调用
Cesium 中的地形系统是一种由流式瓦片数据生成地形的技术。cesiumjs 支持两种类型的地形,STK World Terrain 和 Small Terrain。STK World Terrain 是高分辨率, 基于 quantized mesh 的地形。这是一种基于 TIN 三角网的地形,可充分利用 GL 中的 Shader 来渲染,效果相当逼真。STKWorld Terrain 使用了多种数据源,分别适应不同地区和不同精度时的情形。STKWorld Terrain 地形是怎样生成的是不公原创 2021-09-30 12:59:45 · 4295 阅读 · 3 评论 -
记录参与Cesium罗盘控件(cesium-navigation-es6)的感想
Cesium的罗盘控件最早来自于alberto-acevedo/cesium-navigation(226颗星),截至2021-9-21日,最近的更新是两年以前,同时他的使用方式是UMD或requirejs,示例参见这里。然后紧随其后的就是richard1015/cesium-navigation-es6(100颗星,有幸成为这第100颗的收藏者…),创建者是richard1015,截至2021-9-21(中秋节)日,最近的更新是13月以前,当然还有一些issues是开着的,当然这里也有我提出的,原因是在原创 2021-09-29 23:03:22 · 2322 阅读 · 5 评论 -
使用QGIS制作航线数据,用Cesium加载查看
获取数据访问网站FlightWare,查询CA552航班,查看航迹,如下图所示Excel处理复制上面的网页数据至excel将时间数据处理,时间后插入一列,使用数据->分列进行分隔将其存储为csvQGIS处理打开QGIS,选择Layer–>Add Layer–>Add Delimited Text Layer 菜单添加csv文件设置坐标文件另存为GeoJSON...原创 2021-09-26 22:51:53 · 2056 阅读 · 0 评论 -
已知四个点,使用Cesium绘制其外接矩形
需求比较明确,直接上效果和代码const points = [ [104.40885, 29.81015, 178], [104.40923, 29.81011, 178], [104.40881, 29.80978, 178], [104.40917, 29.80973, 178], ] for (let i in points) { const coordinates = points[i]原创 2021-09-26 15:39:07 · 1036 阅读 · 0 评论 -
QGIS离线数据或瓦片并使用Cesium调用离线瓦片(vx gzh【图说GIS】)
QGIS在数据处理上确实已经做的很好了,尤其是其插件丰富,跟VSCode的插件系统设计思路感觉差不多。下面我将QGIS添加在线地图瓦片并将其离线为tif或瓦片以及矢量的方法记录下来。欢迎批评指正交流!...原创 2021-09-25 11:24:03 · 4513 阅读 · 0 评论 -
Cesium自定义气泡弹窗popup【图说GIS】
Cesium自定义气泡弹窗写在前面实现思路用原生html+js+css实现写在前面在日常的GIS应用中,气泡弹窗不可或缺,前端框架leaflet就有自己的弹窗,互联网地图都有自己的气泡弹窗,只是非常简约而已。而Cesium也有自己的弹窗,只是这个弹窗似乎不怎么适合我们,它在右上角!不能出现在鼠标点击位置。网上也有好多示例可参考。在借鉴了前人们的经验后,自己决定动手写一下。用原生html+js+css、React(陆续更新)、vue方式分别实现(陆续更新),如有不合适之处,欢迎指正,欢迎交流。实现原创 2021-09-15 23:08:32 · 5188 阅读 · 15 评论 -
Cesium获取当前视图范围四至坐标
在Cesium中三维的视图范围可通过viewer.camera.computeViewRectangle()获取;2维和2.5维需要camera.pickEllipsoid接口,将cesium场景绘图区屏幕坐标转化为世界坐标,只需要输入当前场景左上角屏幕坐标(0,0)和右下角屏幕坐标(canvas.width, canvas.height)即可获取对应的世界坐标值,然后再使用ellipsoid.cartesianToCartographic接口将世界坐标转化为经纬度坐标const extend = v原创 2021-09-15 16:12:16 · 4463 阅读 · 0 评论 -
深夜总结:使用QGIS切片并用Cesium完成调用
1. 前言前段时间,有群里看见有个需求,他自己使用QGIS切成的瓦片,但用Cesium调用存在问题。本着对此感兴趣的初衷,自己研究了一番并做出记录。2. QGIS切片添加数据切片下图的范围很重要,是Cesium调用的重要参数3. 发布切片使用nginx发布瓦片服务,在nginx.conf中添加如下配置:server{ listen 8091; server_name localhost; location / {原创 2021-09-14 22:31:27 · 4340 阅读 · 0 评论 -
Cesium加载天地图
申请天地图key先登录,再点击用户中心,再点开发资源,再点控制台,创建新应用就可以了写代码const viewer = new Cesium.Viewer('cesiumContainer', { imageryProviderViewModels: [ new Cesium.ProviderViewModel({ name: "天地图影像", iconUrl: "/imgs/map/tdt_img.jpg", cr..原创 2021-08-30 10:09:10 · 893 阅读 · 0 评论 -
create-react-app4.x+SuperMap iClient3D for WebGL/Cesium 搭建三维开发框架(weixin公众号【图说GIS】)
写在前面在搭建此框架前,你必须要安装NodeJS、VSCode。会使用TypeScript、React、Less。1. 框架初始化全局安装create-react-appnpm install create-react-app@4.0.3 -g利用typescript模板创建框架create-react-app app --template typescript2. 支持自定义配置添加craco.config.js,支持less样式,内容如下:const CracoLess原创 2021-10-24 18:54:24 · 2836 阅读 · 0 评论 -
基于Cesium使高德地图、百度地图、腾讯地图与天地图无偏移叠加
基于Cesium使高德地图、百度地图、腾讯地图与天地图无偏移叠加需求的产生方法的探索经验总结需求的产生在Cesium框架中,可以支持很多ImageryProvider,但是Viewer只用一个坐标系统,这就导致百度地图(BD09坐标系统)、高德地图(火星坐标系统)、腾讯地图(火星坐标系统)不能与天地图(接近于WGS84坐标系统的China2000)无偏移叠加。这就导致底图切换没有什么意义。方法的探索为了解决这个需求,我在网络找了好多资料,问了好多人,有不愿意告诉的,有根本不知道为啥这么做的,持续了两原创 2021-08-12 18:58:08 · 5019 阅读 · 5 评论 -
vue3+cesium1.83+typescript+elementui搭建三维GIS系统开发框架,附完整代码链接
vue3+cesium1.83搭建三维GIS系统开发框架写在前面开始搭建方式一(Cesium作为全局变量)方式二(局部导入)成果图写在前面已经搭建VUE开发框架的基础上,搭建此框架开始搭建通过npm安装cesiumnpm install cesium将npm安装目录下的\node_modules\cesium\Build\Cesium所有文件拷贝至public下的新建文件夹Cesium在index.htnl中引入js和css文件 <link rel="stylesheet" hre原创 2021-07-25 23:38:41 · 3100 阅读 · 3 评论