基于Cesium,探索实景三维webgis的实现过程

WebGISCesium三维软件开发 本书内容由浅入深、循序渐进,涵盖了 Cesium 提供的各个功能接口的使用方法。全书共 8 章,首先对三维 WebGIS 进行概述,然后依次讲解 Cesium 快速入门、Cesium 数据加载、Cesium 事件处理、Cesium 图形绘制、Cesium 三维模型、Cesium 材质特效,最后详细讲解 Cesium 工具应用,包括常用工具和三维分析等高级应用的功能开发 阅读详情

如题,基于Cesium,探索三维webgis的实现思路,个人总结,如有错误,欢迎指正

目录

目标概述:

成果预览:

数据和软件准备:

 实现过程:

1、搭建三维场景页面

2、Cesium对三维要素的基本操作

3、加载三维建筑数据

        3.1 准备3D tiles数据

         3.1.1 方法一:其他三维数据转换

         3.1.2 方法二:二维转三维(白模)

        3.1.3 方法三:倾斜摄影数据

         3.2 加载数据方法

4、模型的单体化显示


目标概述:

搭建一个web端的三维场景,无需第三方软件,在浏览器上查看仿真三维场景,包括地形,房屋建筑等,同时点击建筑能够展示建筑楼栋信息,细分到户的房屋信息。

成果预览:

        分楼栋选取

        分户选取

数据和软件准备:

 软件:

        1、geoserver:发布二维shp数据,提供wms接口,包括建筑底座轮廓数据,分户平面数据

        2、 qgjs:shp数据处理,属性补充,坐标系转换

        3、cesiumlab:cesium官方提供的数据转换软件,本次主要用于将二维shp数据转换为三维数据

数据:

        倾斜摄影数据(3dtiles格式),建筑底座轮廓数据(shp格式),建筑平面分户数据(shp格式,包含层数和高度字段)

 实现过程:

1、搭建三维场景页面

        cesium,是目前web3d技术领域最流行的技术框架,市场占有率高,技术相对成熟,最重要的是开源免费。

        首先,下载cesium框架,下载地址  csdn - 安全中心csdn - 安全中心csdn - 安全中心

在cesium官网注册账号,并申请一个自己的token

        cesium官方文档中文 版地址---------Index - Cesium Documentation

        cesium官方文档提供几千种种接口,类,方,看起来非常复杂,不过搭建基本的三维场景需要用到的也就那几个

        参照官方文档,搭建一个三维地球的页面,也就是new一个Viewer,Viewer也是操作三维场景最常用的一个类,并根据需求设置初始化参数,选择是否屏蔽默认控件,等,这里,我没有用cesium的默认影像,把地球的影像设置为arcgjs提供的影像,arcgjs的影像更加清晰,现势性更好。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>新建地球</title>
    <script src="Build/Cesium/Cesium.js"></script>
    <link rel="stylesheet" href="Build/Cesium/Widgets/widgets.css">
 
    <style>
        html,body{
            height: 100%;
            margin: 0px;
            padding: 0px;
        }
    </style>
 
</head>
<body>
    <div id="cesiumContainer"></div>
    <script>
        Cesium.Ion.defaultAccessToken='你的密钥';
           //配置自定义影像突出,以arcgis图层为例
          const esri = new Cesium.ArcGisMapServerImageryProvider({
            url:  'https://services.arcgisonline.com/arcgis/rest/services/Wor
Cesium入门之六:Cesium加载影像图层(ArcGIS、Bing、Mapbox、高德地图、腾讯地图、天地图等各类影像图) 详细介绍了Cesium加载影像图层的类、方法和步骤,举例说明加载ArcGIS地图、Bing地图、Mapbox地图、高德地图、腾讯地图、天地图等各类影像图的加载方法 阅读详情

相关推荐

3DGS模型怎么用到WebGIS里?从Cesium加载到Mapbox融合的完整方案与踩坑记录

本文详细介绍了如何将3D高斯泼溅(3DGS)模型集成到WebGIS平台中,涵盖从格式转换、坐标系统一到Cesium和Mapbox加载优化的全流程。通过实战案例分享,展示了3DGS在三维重建和实景三维可视化中的高效应用,帮助开发者解决常见性能问题并提升渲染效率。

weixin_26824299的博客 415

Cesium 1 ,Cesium在Vue项目中的详细使用过程,在Vue中使用CesiumJS(GIS中的Cesium地图可视化应用)

Cesium是一种基于WebGL开源的虚拟地球技术,可以用于构建高性能、跨平台的三维地球应用程序,它支持多种数据格式和地图服务,可以实现地球表面的高精度渲染、地形分析、数据可视化等功能。Cesium还提供了丰富的API和插件,方便开发者进行二次开发和定制化,且可免费商用,在航空航天、国防、城市规划、教育等领域得到了广泛应用。

AI Agent 全栈架构师(AI + GIS + Backend)& 数字芯片系统架构师(FPGA),NorthCity Smile的博客(NcSmile,博主域名:https://ncmile.blog.csdn.net) 1万+

从无人机TIF到Cesium三维地球:一套完整的影像切片与发布工作流实战

本文详细介绍了从无人机TIF影像到Cesium三维地球的完整工作流,包括坐标系转换、切片工具选择(ArcMap与CesiumLab对比)、服务发布及前端集成优化。特别针对无人机数据常见的黑边问题提供了多种解决方案,帮助开发者高效实现地理空间数据的可视化呈现。

weixin_30374009的博客 567

cesium三维webgis开发平台,源码demo包括部署文档、用户操作手册以及地图数据

cesium三维webgis开发平台 源码demo包括部署文档、用户操作手册以及地图数据、三维模型数据在内,按照部署文档的操作步骤部署即可;假如需要店主远程帮忙部署的话,则需要额外的付款一定的部署人工费用,希望理解见谅 demo部署环境: 1.jdk1.8环境配置,geoserver集成在tomcat运行需要 2.geoserver,发布地图服务 3.demo项目工程html+js+css 4.demo里面提供tomcat,里面集成geoserver以及三维模型数据,建议直接用 cesium三维webgi

m0_60381540的博客 1473

WebGIS】 矢量栅格可视化网页实践——基于cesium、geoserver、postgis

矢量数据借助postgis上传到postgre数据库,连同栅格数据发布到geoserver; 构建web项目,引入相关拓展库,使用的jsp仅为展示前端功能; 前端借助cesium调用地图服务加载地图

Where runes of code shape the picture :) 3194

CesiumLab】 地理信息基础数据处理平台 各类数据类型介绍、发布数据介绍

文章作者技术和水平有限,如果文中出现错误,希望大家能指正,同时有问题的话,欢迎大家留言讨论。

hhw_hhw的博客 8011

Cesium集成SOG:解锁Web端秒级加载的高斯泼溅新体验

本文详细介绍了如何在Cesium中集成SOG格式,实现Web端高斯泼溅模型的秒级加载。通过对比传统PLY和3D Tiles格式,SOG凭借革命性的压缩技术,能将模型体积减小约95%,显著提升加载速度与渲染性能,并改善移动端兼容性。文中提供了从模型转换到Cesium渲染的完整实战指南。

ice55的博客 911

UE5与Cesium数字孪生实战:从环境搭建到动态数据驱动

数字孪生作为连接物理世界与虚拟空间的核心技术,其本质是通过数据模型实时映射、模拟与分析实体对象。其技术原理在于集成多源数据、三维可视化与实时仿真,实现对物理系统的监测、预测与优化。在工程实践中,该技术能显著提升运维效率、降低试错成本,广泛应用于智慧城市、工业物联网与基础设施管理等领域。本文聚焦于利用Unreal Engine 5的**Nanite虚拟几何体**实现超大规模场景渲染,并结合**Cesium for Unreal**插件解决地理空间数据集成难题,通过蓝图脚本与数据接口,构建具备动态交互与空间分析

weixin_30387423的博客 410

首发!谷歌倾斜摄影数据转换生成OSGB格式

全球首发,谷歌倾斜摄影模型文件能直接转换成OSGB格式!

cyber_room的博客 2267

Leaflet + eegeo.js:低成本实现Web二维地图三维化升级实践

Web地图开发中,从二维平面到三维空间的演进是提升空间信息表达与交互体验的关键路径。其核心原理在于通过WebGL技术将地理坐标数据在三维场景中进行渲染与映射,从而突破二维平面的视觉局限。这一技术升级为智慧城市、数字孪生、数据可视化等应用场景带来了显著的沉浸感与空间分析价值。本文聚焦于利用eegeo.js这一三维化插件,在保留成熟Leaflet生态与API的前提下,实现平滑、低成本的二维项目三维化升级。通过解析坐标转换、性能优化等核心挑战,并结合WebGL渲染与三维地形支持等热词,为开发者提供了一条从现有二维

weixin_30617737的博客 352

WebGL可视化地球和地图引擎:Cesium.js

Cesium介绍Cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎。Cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区域,并提供良好的触摸支持,且支持绝大多数的浏览器和mobile。无需任何插件。Cesium 使用 WebGL 来进行硬件加速图形化;跨平台;跨浏览器;实现真正的动态数据进行可视化。Cesium 基于 Apache 开源协议,支持

GIS笔记 3万+

cesium加载shp文件

Cesium VectorTileImageryProvider 支持小数据量的geojson、shape文件矢量动态切片,实现贴地。本地shp数据或者在线shp数据,将shp数据转化为geojson数据并下载,在cesium中加载。加载shp文件,shp文件同级目录下需要有dbf文件,prj文件,不可隐藏地球球体。下载CesiumVectorTile.js文件并在index.html中引入。读取shp文件并生成geojson,加载到cesium中。shp文件同级目录下需要有dbf文件。

新前端小白的博客 6269

Cesium读取shp并加载显示shp属性

files = Array.from(files) // FileList => Array, 方便使用 Array 方法。this.parseShapefile(files) // 解析选择的 shp 并绘制显示。1、读取shp显示图形。2、读取dbf显示属性。技术交流和咨询请私信。

zhangwencan1986的博客 1786

Cesium系列:基础入门GIS

通过以上步骤,我们成功地创建了一个基本的Cesium地球场景,并添加了地图图层、3D模型和标记。你可以根据自己的需求进一步探索Cesium的功能和特性,例如更复杂的地理数据可视化、地图投影转换、路径规划等。在上面的代码中,longitude、latitude和height分别表示标记的经度、纬度和高度。在JavaScript代码中,我们将使用Cesium的Viewer类来创建地球场景。在JavaScript代码中,我们可以使用Cesium的Entity对象来创建标记。接下来,我们将创建一个基本的地球场景。

NknkCode的博客 256

WEBGIS开发 Cesium路径漫游 第一人称漫游 场景漫游 EarthSDK

三维GIS中场景漫游/第一人称漫游功能

qq_42164696的博客 4352

Cesium入门之十:Cesium加载3DTiles数据

详细介绍了3DTiles文件的数据结构及Cesium加载3DTiles数据的相关类

九仞山的专栏 1万+

WebGis开发 - Cesium】三维可视化项目教程---图层管理基础

本篇主要讨论如何管理二三维图层,仅以wmts和3dtiles做图层管理示例。我会在接下来的教程里专门针对其他各类图层加载方式做详细介绍。 二三维图层管理是三维可视化项目里重要的组成部分,通过树结构管理图层二维图层的互相遮挡问题,需要拓展图层调换顺序功能。图层叠加使用场景,需要拓展图层透明度调整功能。当前场景下图层保存功能,用于场景切换时,关闭及初始化图层树。拓展其他重要图层类型的加载卸载方式。其他。所以说一个完整的模块是亿点点优化而来的。由于篇幅问题,遗留的几个问题我将会在之后的文章中逐步闭环。再接再厉~

qbbmnnnnnn的博客 4979

shp文件读取并利用cesium进行可视化

的文件读取效果较好,我暂时采用了这种方法进行读取。方法缺点:丢弃了shp中的投影信息、属性信息。

leekuikui的博客 3086
上一篇: 一口气学会发布自己的地图查询系统
ayo-
博客等级 码龄7年 16粉丝 2原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值