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开发的数据服务器。形成从数据处理、服务发布、到代码集成的完整工具链。希望它能帮到您,欢迎反馈交流。

 
 

CesiumLab V1.1 新功能 (免费Cesium处理工具集)的更多相关文章

  1. CesiumLab V1.2 新功能 倾斜数据处理

    一转眼又是一周的时间,我们的实验室功能又强大了. 照旧我们先放毒,放图,图,太晚了,字都敲不到一起了   lod以及包围盒   大雁塔实例,按楼层单体化   倾斜数据处理参数设置 简单介绍一下 Ces ...

  2. CesiumLab V1.4 新功能 BIM数据处理

    我也没想到,BIM数据处理一下拖了这么久才有个交代.我们照例先放图   Revit官方的示例数据   隐藏屋顶+俯视   曾经因为太大而无法导出无法处理的医院模型   室内装修方案模型 最近和很多做b ...

  3. CesiumLab V1.3 新功能 MAX场景处理(免费Cesium处理工具集)

    每次到写文章的时候就很高兴,意味着又有重大功能更新了,也意味着10多天昏天黑地的闭关日子暂时结束了. 依照惯例,先放图   小范围精模型cesium加载效果   大范围白模cesium加载效果     ...

  4. DevExpress v15.2新功能介绍视频(25集全)

    DevExpress v15.2新功能介绍视频(25集全) http://www.devexpresscn.com/Resources/Documentation-508.html DevExpres ...

  5. Xen之初体验:XenMotion、 StorageMotion、Site Recovery、Power Management 各种新、高级功能免费

    Xenserver 的新版本6.2现在已经全面开源,省掉了原有的序列号,也能免费体验曾经标题中的付费高级功能. 安装镜像:http://downloadns.citrix.com.edgesuite. ...

  6. 优秀个人免费私有云OwnCloud 8.0终于发布 - 亮眼新功能初探简介

    OwnCloud是一个基于Linux的私有云开源项目,用户可以免费使用它来搭建自己的私有云来进行文件和多媒体等的分享. 本人有幸在大概一年多前因为项目需要而接触和使用到OwnCloud,但不幸的是当时 ...

  7. 即将到来的Autodesk 主要产品2015版 产品和API新功能在线培训(免费)

    一年一度的Autodesk主要产品和API在线培训课程在5月份即将開始.我们呈献给大家5个课程. 1. Revit 2015 产品新功能及API 概览 2. Vault 2015产品新功能及API 概 ...

  8. Cesium 1.51新功能评测

    前言 之前介绍Cesium1.50版本的新功能时,很多人把1.50写成1.5.这两个版本可不一样,之间差了45个小版本号,1.5版本大概是Cesium三年前的版本了. Cesium每月月初的第一个工作 ...

  9. Cesium 1.50重量级新功能测评

    概要 既Cesium 1.49中3dtile加载性能大幅提升以后,Cesium 1.50再次迎来几个重量级新功能: 1 地球裁切,这下相当于可以截取一部分地形影像数据,当作一个平面场景来用了! 2 射 ...

随机推荐

  1. 关于str的打印格式

    实际上一般的打印格式应该是这样的: %[(keyname)][flags][width][.precision]typecode (1) keyname: 用于打印Dict类型时做索引; (2) fl ...

  2. 廖雪峰Java11多线程编程-3高级concurrent包-2ReadWriteLock

    ReentrantLock保证单一线程执行 ReentrantLock保证了只有一个线程可以执行临界区代码: 临界区代码:任何时候只有1个线程可以执行的代码块. 临界区指的是一个访问共用资源(例如:共 ...

  3. 0907NOIP模拟测试赛后总结

    120分rank26.我又被打回原型了…… 下午考的.中午由于种种原因并没有睡好.于是状态很差. 第一眼看题感觉T1是一道XX题.部分分竟然给这么肥 然后看T2.T3好像都还不是特别恶心的题目,挺常规 ...

  4. python网络框架Twisted

    什么是Twisted Twisted是一个用python语言写的事件驱动网络框架,它支持很多种协议,包括UDP,TCP,TLS和其他应用层协议,比如HTTP,SMTP,NNTM,IRC,XMPP/Ja ...

  5. QQ邮箱发送信息

    #以下库为python自带的库,不需要进行安装 #邮件发信动作 import smtplib #构造邮件内容 from email.mime.text import MIMEText #构造邮件头 f ...

  6. JS中的Map和Set

    使用iterable内置的forEach方法 var a = ['A', 'B', 'C']; a.forEach(function (element, index, array) { // elem ...

  7. iOS开发CGImage.h简介

    1.前因 由于剪切图片用到下面方法,此方法属于CGImage.h中,通过创建CGImageRef像素位图,可以通过操作存储的像素位来编辑图片. /* Create an image using the ...

  8. php面向对象成员方法(函数)练习

    <?php header('content-type:text/html;charset=utf-8'); //成员方法的举例 /* ①添加sayHello 成员方法,输出 'hello' ②添 ...

  9. java线程池的使用学习

    目录 1. 线程池的创建 2. 线程池的运行规则 3. 线程池的关闭 4. 线程池的使用场合 5. 线程池大小的设置 6 实现举例 1. 线程池的创建 线程池的创建使用ThreadPoolExecut ...

  10. linux中断处理-顶半部(top half)和底半部(bottom half) -转

    原文:http://rensanshi.blog.163.com/blog/static/21395510820136282224877/ 设备的中断会打断内核中进程的正常调度和运行,系统对更高吞吐率 ...