Cesiumjs + React典型使用示例
如果你是基于cesiumjs做开发,不需要使用一些其他三方付费框架的话,本篇文章中的示例覆盖了一些常用场景和功能,可以作为参考示例去下载源码进行学习,资源下载地址本文末尾处。
废话不多说直接先去看代码运行效果,演示地址:http://cesium.kevyme.top
一、功能介绍
本示例使用cesiumjs开发(未依赖其他付费框架),基于原生cesiumjs + react的一些示例源码,包括标绘(几何体、基本形状、图片、模型等添加、属性修改、删除等)、三维测量(空间距离、投影距离、贴地距离、投影面积、贴地面积)、三维分析(直线通视、多点通视、点缓冲区、线缓冲区、三角测量、方位角、坡度坡向计算)、坐标(坐标拾取、坐标转换)、应用(等高线、贴地运动、路线追踪、淹没分析、echarts图表、模型动画、视点飞行、罗盘、热力图、天气、海量点、西安地铁、选址选线、西安路网)等示例。
二、示例
1.几何体标绘
1.1演示地址
http://cesium.kevyme.top/plot/geometry
1.2功能描述
本示例包括长方体、球体、圆柱、圆椎的在地图上的标绘,以及属性与颜色等动态设置,添加与删除等。
1.3效果

2.基本形状标绘
2.1演示地址
http://cesium.kevyme.top/plot/shape
2.2功能描述
本示例包括常见矢量图形的标绘与属性编辑,包括多边形、矩形、三角形、圆形、扇形、细直箭头、曲线箭头、直箭头、进攻方向箭头、燕尾进攻方向箭头、分队战斗方向、燕尾分队战斗方向、突击方向、双箭头、自由线、自由面、曲线、椭圆、半月面等。
2.3效果

3.图片标绘
3.1演示地址
http://cesium.kevyme.top/plot/image
3.2功能描述
主要是在地图上添加图片标绘,动态设置图片的属性,删除图片等操作。
3.3效果

4.模型标绘
4.1演示地址
http://cesium.kevyme.top/plot/model
4.2功能描述
主要是在地图上标绘glb等格式模型,设置相关属性与删除操作等。
4.3效果

5.三维测量
5.1演示地址
http://cesium.kevyme.top/measure/index
5.2功能描述
主要包括空间距离、投影距离、贴地距离、空间面积、投影面积、贴地面积的三维场景测量。
5.3效果

6.三维分析
6.1演示地址
http://cesium.kevyme.top/measure/analysis
6.2功能描述
主要包括直线通视、多点通视、圆形通视、点缓冲区、线缓冲区、三角测量、方位角、坡度坡向的计算。
6.3效果
直线通视效果图如下:
多点通视效果图如下:
圆形通视效果图如下:
点缓冲区效果图如下:

线缓冲区如图:
三角测量效果图

方位角效果图

坡度坡向效果图

7.坐标拾取
7.1演示地址
http://cesium.kevyme.top/coordinate/pick
7.2功能描述
主要根据鼠标移动显示当前笛卡尔坐标和经纬度坐标,视野高度等信息。
7.3效果

8坐标转换
8.1演示地址
http://cesium.kevyme.top/coordinate/transfer
8.2功能描述
常见坐标系的转换,如GCJ02/BD09/WGS84,输入json或数组转换坐标。
8.3效果

9.应用-等高线
9.1演示地址
http://cesium.kevyme.top/app/contour
9.2功能描述
绘制一个多边形区域,在区域内根据地形数据实时生成等高线。
9.3效果

10.贴地运动
10.1演示地址
http://cesium.kevyme.top/app/GroundMotion
10.2功能描述
主要是模型在三维地图中贴地运动,包括运动与停止的控制,速度控制,环形运动,不同视角的切换等。
10.3效果

11.路线追踪
11.1演示地址
http://cesium.kevyme.top/app/roadtrace
11.2功能描述
主要是模型在地表面和空中沿着同一线进行运动,路线的追踪跟随示例。
11.3效果

12.淹没分析
12.1演示地址
http://cesium.kevyme.top/app/inundateanalysis
12.2功能描述
绘制一个区域,点击开始进行淹没动画的分析。
12.3效果

13.Echarts图表
13.1演示地址
http://cesium.kevyme.top/app/echarts
13.2功能描述
主要是在地图上展示echarts图表能力,包括散点图、迁徙图等。
13.3效果


14.模型动画
14.1演示地址
http://cesium.kevyme.top/app/modelmotion
14.2功能描述
主要是模型在地图上的动画,点击不通动作,模型会执行相应的动画。
14.3效果

15.视点飞行
15.1演示地址
http://cesium.kevyme.top/app/viewfly
15.2功能描述
主要功能是不同预设点直接平滑过渡飞行效果。
15.3效果

16.罗盘
16.1演示地址
http://cesium.kevyme.top/app/compass
16.2功能描述
主要是罗盘与地图的控制旋转等。
16.3效果

17.热力图
17.1演示地址
http://cesium.kevyme.top/app/heatmap
17.2功能描述
主要功能是根据不同数据大小动态显示相应效果的热力图。
17.3效果

18.天气
18.1演示地址
http://cesium.kevyme.top/app/weather
18.2功能描述
主要功能是显示不同天气效果,包括晴朗、下雨、下雪等效果。
18.3效果

19.海量点
19.1演示地址
http://cesium.kevyme.top/app/points
19.2功能描述
主要是加载海量点,动态改变其位置效果。
19.3效果

20.西安地铁
20.1演示地址
http://cesium.kevyme.top/app/metro
20.2功能描述
主要是西安地铁线路及站点信息的动态展示,发展历程动画,不同视角列车模型运动,正反向运动、拥挤度图展示等。
20.3效果





21.选址选线
21.1演示地址
http://cesium.kevyme.top/app/marksite
21.2功能描述
选线:绘制一条路线,对节点移动、删除、新增等编辑操作;
选址:绘制多边形区域,对各节点移动、删除、新增等编辑操作。
21.3效果


22西安路网
22.1演示地址
http://cesium.kevyme.top/app/road
22.2功能描述
主要展示西安不同等级分类的道路,可勾选展示,有在地图上动态绘制线和绘多边形区域与编辑操作,有道路健康度分段不同色值的展示等。
22.3效果
路网图

健康度展示图

三、关于源码下载
1.源码下载链接
https://download.csdn.net/download/c5211314963/92731462
2.源码使用步骤
下载的源码解压后,电脑上安装node18以上,进入解压根目录(有package.json文件的目录),执行以下命令
如果使用npm执行以下命令:
//1.安装依赖
npm install
//2.本地启动查看效果
npm run dev
//启动后浏览器访问http://localhost:8000
//3.打包
npm run build
//build后会生成dist文件夹,将其部署在nginx下即可。
如果使用yarn执行以下命令
//1.安装依赖
yarn install
//2.本地启动查看效果
yarn dev
//启动后浏览器访问http://localhost:8000
//3.打包
yarn build
//build后会生成dist文件夹,将其部署在nginx下即可。
注:本示例仅用于学习交流,你可以下载源码学习和自己基于该版本做升级优化。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)