博主简介 博主90后专业GIS行业开发人员,一直从事GIS相关工作5年左右,主要涉及三维和地图可视化等内容。工作中难免要接触到相关开发框架,对Cesium,Three.js,openlayer,skyline等二三维开发框架的了解和运用还算可以!^_^!。专栏说明 编写这个专栏主要目的是对工作中基于Cesium实现过的功能进行整合,暂时打算一周2-3更的样子来更新,每一篇都会奉上完整源代码(尽可能把代码简洁一些)。功能实现大多数是自己琢磨实现的,也有参考其他大神后整理实现的,初步算了算现在有差不多实现130个左右的功能,后续也会不断的更新。博文内容如存在错误或者有可改进之处,也希望在
使用数据流技术:Cesium支持使用数据流技术,即按需加载和卸载数据,以最小化数据传输量和加载时间。在Cesium中,Cesium3DTileset#maximumMemoryUsage属性的作用是控制3DTiles的最大内存使用量,从而在保证数据流畅的前提下尽可能减小内存占用。实现原理大致如下:Cesium会根据相机位置和高度动态调整3DTiles的细节级别,并将需要渲染的Tiles加入渲染队列。当队列中的Tiles的内存使用量超过maximumMemoryUsage属性设置的最大值时,Cesium会按照一定的策略卸载一些不必要的Tiles,以释放内存空间。当相机位置和高度发生变化时,Ces
使用数据流技术:Cesium支持使用数据流技术,即按需加载和卸载数据,以最小化数据传输量和加载时间。在Cesium中,Cesium3DTileset#maximumMemoryUsage属性的作用是控制3DTiles的最大内存使用量,从而在保证数据流畅的前提下尽可能减小内存占用。实现原理大致如下:Cesium会根据相机位置和高度动态调整3DTiles的细节级别,并将需要渲染的Tiles加入渲染队列。当队列中的Tiles的内存使用量超过maximumMemoryUsage属性设置的最大值时,Cesium会按照一定的策略卸载一些不必要的Tiles,以释放内存空间。当相机位置和高度发生变化时,Ces
Sandcastle-header.js存储在Cesium中Apps/Sandcastle/Sandcastle-header.js的位置,该js文件时用于创建下拉框和带选中框的按钮,引入该文件后,就会有一个Sandcastle全局对象,包含着很多方法。 //videoElement=document.getElementById("trailer");videoElement="../images/_DSC0718-239.jpg";(视频导入有问题,尝试用图片替代,完成替代) Cesium.Ion.defaultAccessToken= "token"; constvi
Sandcastle-header.js存储在Cesium中Apps/Sandcastle/Sandcastle-header.js的位置,该js文件时用于创建下拉框和带选中框的按钮,引入该文件后,就会有一个Sandcastle全局对象,包含着很多方法。 //videoElement=document.getElementById("trailer");videoElement="../images/_DSC0718-239.jpg";(视频导入有问题,尝试用图片替代,完成替代) Cesium.Ion.defaultAccessToken= "token"; constvi
文章目录前言一、Cesium加载离线地图1.1下载数据2.2数据处理2.3地图发布2.4下载速度改进二、Cesium加载离线地形2.1下载数据2.2数据处理2.3地形发布2.4遇到的问题前言直接把地图数据切片,然后通过nginx以静态服务方式发布。使用工具:图新地球提取码:oznv————————————用来下载地图红豆地球提取码:2thg————————————用来下载地图Nginx提取码:wnjl——————————————代理服务器,用于瓦片数据发布Cesiumlab提取码:iey3————————————用于数据切片MapBox影像提取码:48dt———————————用来加载影像Te
文章目录前言一、Cesium加载离线地图1.1下载数据2.2数据处理2.3地图发布2.4下载速度改进二、Cesium加载离线地形2.1下载数据2.2数据处理2.3地形发布2.4遇到的问题前言直接把地图数据切片,然后通过nginx以静态服务方式发布。使用工具:图新地球提取码:oznv————————————用来下载地图红豆地球提取码:2thg————————————用来下载地图Nginx提取码:wnjl——————————————代理服务器,用于瓦片数据发布Cesiumlab提取码:iey3————————————用于数据切片MapBox影像提取码:48dt———————————用来加载影像Te
作为相机系列,此处先温习一下前期涉及到Cesium中Camera的两个概念(系列文章可参考我前面发的“Cesium中的相机–”系列)。回顾相机的空间位置Cesium中,世界坐标系就是地球的WGS84系,也即地球固连坐标系(EarthFiexed),在此坐标中定义相机的位置与观测方位。相机坐标系见下图(使用Hubble望远镜示意相机),在Camera对象中,通常用三个矢量来表示:Up、Right和Direction,这三个方向确定了相机的观测方位。Up、Right、Direction与相机坐标系(视图坐标系)XYZ三轴的关系为:X=DirectionY=LeftZ=UpHeading/Pitch
作为相机系列,此处先温习一下前期涉及到Cesium中Camera的两个概念(系列文章可参考我前面发的“Cesium中的相机–”系列)。回顾相机的空间位置Cesium中,世界坐标系就是地球的WGS84系,也即地球固连坐标系(EarthFiexed),在此坐标中定义相机的位置与观测方位。相机坐标系见下图(使用Hubble望远镜示意相机),在Camera对象中,通常用三个矢量来表示:Up、Right和Direction,这三个方向确定了相机的观测方位。Up、Right、Direction与相机坐标系(视图坐标系)XYZ三轴的关系为:X=DirectionY=LeftZ=UpHeading/Pitch
目录1.本篇适用范围与目的1.1.适用范围1.2.目的2.牛刀小试-先看到地球2.1.创建Vue3-TypeScript工程并安装cesium2.2.清理不必要的文件并创建三维地球2.3.中段解疑-奇怪的路径2.4.打包部署2.5.有限的优化3.CesiumJS前置知识3.1.CesiumJS依赖包中的资料说明3.2.构建后的CesiumJS库组成-主库文件与四大文件夹3.3.链接库文件和四大文件夹的CESIUM_BASE_URL变量4.现代前端工具的基本常识4.1.选择Vite的理由4.2.为什么外部化引入(External)一个库4.3.TypeScript类型提示4.4.开发服务器的路径