前言

前段时间接手了一个任务,让我研究一下开源的地图引擎,可以加载倾斜摄影数据,展示3D效果,实现地图应该有的大部分功能~好吧,我听到时真是一头雾水。WTF?地图引擎?3D模型?倾斜摄影?这都是什么鬼…但是没办法,既然已经安排下来了就得去做,然后我就开始了疯狂的百度之旅。
    以下记录一下在这次旅途中发现的优质文档和我自己觉得应该记录下来的笔记,以备下次查阅。

一、cesium

在众多的开源地图中,我最终选择了Cesium,当然了还有一些其他的,比如openlayer等,但是我看到cesium的文档还是蛮丰富的,还确定了能加在倾斜摄影(个人理解:无人机拍摄的数据展示出3d效果,无人机的原始数据一般为osjb),就确定了它。
在cesium中文网中有这么一段话比我说的可好多了:

Cesium入门

这里介绍一下cesium的入门知识点。
大家都知道一般地图的基本功能比如描点、画线、画面、显示隐藏控件等操作。经过这段时间的百度。列举一下我觉得还不错的一些网页。
cesium中文网
cesium 学习基础绘制
cesium教程

上面列举的页面已经可以完成一些功能点的开发了,这里有一点说明,cesium不是只能放在node server中,你完全可以放在tomcat中去运行。

Cesium离线部署

这篇文章非常详细的介绍了如何在离线的情况下使用cesium,就是通过geoserver,用它加载离线地图。
geoserver+cesium创建离线环境下的web三维球

这里本来想添加一个geoserver的安装部署发布地图整个过程的网页的,好吧,暂时没找到,下次自己写一个再放在这里把。你们需要就去网上仔细找一下,是有的,我当时都找到了。

在geoserver里发布好了离线地图之后,在layer preview的列表里找到自己需要的地图,复制name的值。将geoserver+cesium创建离线环境下的web三维球中介绍的下面这段话的内容的laysers改为复制的name值即可。

var url='http://localhost:8080/geoserver/wms'; //Geoserver URL
var viewer = new Cesium.Viewer('cesiumContainer',{imageryProvider:new Cesium.WebMapServiceImageryProvider({ url : url,       layers: 'nurc:Arc_Sample'}),baseLayerPicker:false
});

地图下载

这篇文章介绍了一些免费的地图下载器,大家感兴趣可以看一下。
地图下载器
我这里推荐使用太乐地图下载器。因为亲测有效。有一篇介绍如何使用的文章。还涉及到如何使用geoserver发布离线地图,补充了上面介绍的不足。网页如下。
太乐地图下载器

数据格式转换

倾斜摄影技术数据的标准格式为osjb,但是cesium不能加载osjb的数据,因此我们需要将osjb转为cesium需要的3dtil格式。
cesuim加载倾斜摄影OSGB三维数据完整过程
osgb(倾斜摄影数据)转换为3dtitle工具分享

加载倾斜摄影

数据格式转换后,会在data文件夹同一级生成一个tileset.json的文件,在cesium中通过如下方式调用即可。

var tileset = new Cesium.Cesium3DTileset({url: './localMap/sampledata/3dtitle_test/tileset.json'});viewerObj.scene.primitives.add(tileset);viewerObj.zoomTo(tileset);

结束语

研究一个新东西还真是不容易,最近感觉都快把百度给翻烂了,做了各种尝试,下了很多资料,软件,不过总算是做出来了,在这里留下一个记录,万一以后又要来弄这玩意儿方便回忆,也方便大家伙查阅,毕竟很多网上的博客都是说的一方面东西,有人会说,你怎么都是留下的链接呢?emmm,是因为我实在没有那么多时间去写博客了,这里只是留一个记录,避免到时候有些网站会失效,我会抽时间将一些重要的步骤再重新记录下来的。
当然了,也谢谢上面链接的各位大佬的技术支持。
最后插一嘴。有了解bigmap地图的吗,你们觉得怎么样?

Cesium开发及离线加载倾斜摄影相关推荐

  1. Cesium开发:关于加载CGCS2000切片

    在线的天地图,发布的有两种切片投影格式,一个是 国家2000的坐标系,另一个是 Web Mercator的坐标系,通常我们在开发的时候,用的比较多是Web Mercator的坐标系切片. 在Cesiu ...

  2. Unity加载倾斜摄影模型/激光点云,开源

    [重大更新]现已支持WebGL 业余时间尝试了下用Unity加载倾斜摄影模型/激光点云,目前支持Bentley ContextCapture生成的3MX格式 源码见 https://github.co ...

  3. web高德地图怎么加载离线地图_基于 QGIS 在内网中离线加载卫星地图的方法

    1. 概述 我们之前为大家分享过在三维地球开源平台离线加载卫星影像的方法,主要包括基于桌面端的OsgEarth开源三维地球和基于Web端的Cesium开源三维地球等平台的局域网离线影像加载. 另外,也 ...

  4. 基于 QGIS 在内网中离线加载卫星地图的方法

    1. 概述 我们之前为大家分享过在三维地球开源平台离线加载卫星影像的方法,主要包括基于桌面端的OsgEarth开源三维地球和基于Web端的Cesium开源三维地球等平台的局域网离线影像加载. 另外,也 ...

  5. Win8开发中如何加载字符串资源(C#)

    Win8开发中如何加载字符串资源(C#) 你可以从资源文件或库等对象中加载字符串资源. 创建资源文件的方法: 在资源项目或库.控件.软件开发包中创建一个Strings文件夹在文件夹,然后在他的下面在创 ...

  6. android 图片变量,Android开发实现ImageView加载摄像头拍摄的大图功能

    本文实例讲述了Android开发实现ImageView加载摄像头拍摄的大图功能.分享给大家供大家参考,具体如下: 这个方法是从官方demo中摘录的,在此记录学习. 权限 android:name=&q ...

  7. 从零开始实现ASP.NET Core MVC的插件式开发(六) - 如何加载插件引用

    标题:从零开始实现ASP.NET Core MVC的插件式开发(六) - 如何加载插件引用. 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/1171 ...

  8. Pytorch Fashion_MNIST直接离线加载二进制文件到pytorch

    说明:Fashion_MNIST直接离线加载二进制文件到pytorch ''' 将4个gz直接加载到pytoch用来训练t10k-images-idx3-ubyte.gzt10k-labels-idx ...

  9. Pytorch MNIST直接离线加载二进制文件到pytorch

    说明:MNIST直接离线加载二进制文件到pytorch ''' 直接以下4个文件读入数据到pytorch中t10k-images-idx3-ubyte.gzt10k-labels-idx1-ubyte ...

最新文章

  1. 体验Windows Azure的Access Control Service
  2. 给FlvDownloader加了一个视频预览的功能
  3. 30-- A 代码记录分析
  4. AMESim软件建模
  5. [saiku] JCR在saiku中的运用原理
  6. BigDecimal除法报错:java.lang.ArithmeticException: Division undefined
  7. python酷q机器人_玩转PLEX 篇六:利用酷Q机器人远程控制服务器的方法
  8. JDY-31蓝牙模块测试
  9. Java类图(记录/转)
  10. 权威的PHP 5.6、7.0、7.1、7.2、7.3和7.4 php运行效率基准测试
  11. 密码学的安全性浅析-1
  12. android自定义锁屏界面设置,android 锁屏壁纸和桌面壁纸的设置实现
  13. 你喜欢哪款 Linux 桌面?萝莉风?御姐风?
  14. node.js 安装详细步骤
  15. 南京大学计算机 曹云浩,【2015.青春曲园】第二十六届“迎校庆”校园十佳歌手大赛独家放送~...
  16. JAVA 网络聊天程序设计与实现(附关键代码) 可群聊私聊发送图片
  17. UE Gameplay实例49(高级蒙太奇动画连招)
  18. 【洛谷P3818】小A和uim之大逃离 II
  19. Cesium平台构建诗词地图故事
  20. 制作windows和linux客户端恶意软件进行渗透

热门文章

  1. 用HTML5献上爱的3D玫瑰
  2. python的代码是什么样的图片_python实现识别相似图片小结
  3. 2020最新Java集合面试题
  4. android时间错误的是什么意思啊,这个android错误啥意思
  5. docker安装mysql,设置mysql初始密码
  6. artisan创建laravel的controller
  7. 黑马程序员Java零基础视频教程_下部(P135-P200)
  8. RestTemplate发起Post请求
  9. 破壁,宝藏艺术家登场!(二)
  10. 更强大的ctrl-p fzf