Cesiumlab 自从上周(3月20日)发布之后,赢得小伙伴一致好评。

本周继续推出重大更新:

建筑物矢量数据 转 3dtiles,

 建筑物矢量数据 转 3dtiles,

 建筑物矢量数据 转 3dtiles, 重要的事情说三遍嘛。

废话少说,先上图,效果就是这样滴

 
默认样式
 
按高程着色样式
 
处理界面

下来我们介绍一下建筑物转3dtiles的工具特点:

1,输入支持shp格式

其它gdal支持的矢量形式,理论上也支持,个人没有测试,小伙伴有时间可以自己测

要求文件带投影信息(一般shp的投影存在同名的prj文件),或者在cesiumlab中手动指定文件投影

3857的web 墨卡托投影测试过,其它投影请自测

2,支持可选的字段属性 存入3dtiles batchtable中

1)字符串字段 中文尤其注意,如果带中文,请在cesiumlab选择对应的中文编码(utf8 或者 gbk)

2)可以把shp中非字符串类型,但实际为数字的字段转数字

3,支持处理过程中实时取地形高程,这样3dtiles和地形更匹配

支持从多个地形文件中取,用户就不需要去合并dem了。

4,其他细节

支持中文utf8或者gbk编码选择

支持高程字段设置

其它更新:

3dtiles预览界面 增加了 样式编辑器,很方便的查看数据效果

码农干货:

1, 关于3dtiles的标准,最全的要看这里

https://github.com/AnalyticalGraphicsInc/3d-tiles/blob/master/TileFormats/Batched3DModel/README.md

但是这个里面有些信息还是比较老的,比如对于b3dm的格式解析,他上面写的支持的是 gltf 1.0版本,而且我下载cesium官网的3dtiles数据,发现都是1.0版本,我以为只支持1.0,所以花了大半天自己去实现gltf1.0的组织(主要是tinygltf支持的2.0)。

后来再次谷歌,搜到cesium的官方博客,已经说明支持2.0了,所以又用tinygltf去实现2.0。

tinygltf 的 github:

https://github.com/syoyo/tinygltf

说实话,tinygltf的代码质量一般,不过方便的是它一个头文件就搞定了引用。

2,gltf的标准

1.0  https://github.com/KhronosGroup/glTF/blob/master/extensions/README.md

2.0  https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#glb-file-format-specification

对比后发现,2.0最大的改进就是去掉了烦人的1.0的name引用,采用索引引用,想组织一个1.0的模型,起个名就会让人崩溃。

符合2.0的官方示例模型:

https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0

3,最后推荐一个c++程序员的json库,超级好用

https://github.com/nlohmann/json

这个库有个坑,就是必须utf8编码处理,如果gbk,嘿嘿,绝对崩溃,这个问题给我带来好多次莫名其妙的bug,让我脑细胞死一大片

最后:

Cesiumlab是一款专为Cesium开源数字地球平台打造的免费数据处理工具集。目前包含地形数据处理、影像数据处理、点云数据处理、数据下载、建筑物矢量面处理等几大工具。同时提供一套java开发的数据服务器。形成从数据处理、服务发布、到代码集成的完整工具链。希望它能帮到您,欢迎反馈交流。

 
 

最新文章

  1. ime-mode:disabled 关闭文本框输入法
  2. Linux基础命令操作
  3. php : MVC 演示(使用单例工厂)
  4. 判断Sql Server2008中ntext不为空
  5. Tarjan算法应用 (割点/桥/缩点/强连通分量/双连通分量/LCA(最近公共祖先)问题)(转载)
  6. Soap UI 数据库脚本(转)
  7. HLS(HTTP Live Streaming)协议之m3u8文件生成方式
  8. Revit 2015 公布!
  9. new 和delete
  10. Linux增加磁盘操作
  11. css3 flex 布局
  12. 运维工作笔记--------------mongodb无法启动问题
  13. Batch Normalization原理
  14. JSHFJK师德师风幅度十分时尚大方JSHFJK
  15. CT ubuntu 16.04安装 adobe flash player
  16. Visual Studio编译时报错“函数名:重定义;不同的基类型”
  17. Python中的分支结构和循环结构
  18. 20155323刘威良 网络对抗 Exp2 后门原理与实践
  19. PAT甲题题解-1078. Hashing (25)-hash散列
  20. JS获取用户的Ip地址

热门文章

  1. Entity Framework 学习记录
  2. UNION操作用于合并两个或多个 SELECT 语句的结果集。
  3. JavaSE_12_序列化流和打印流
  4. PHP面向对象访问修饰符的基本了解
  5. 封装了一个HOOKAPI的类。。。
  6. css 阴影设置box-shadow
  7. JZOJ5857 【NOIP提高组模拟A组2018.9.8】没有上司的舞会
  8. 2018.10.29安装tensorflow
  9. BZOJ 2165: 大楼
  10. 洛谷P3747 [六省联考2017]相逢是问候