在今年1月13日,我写了一篇文章,详细介绍了了全台湾2023年三维建筑模型数据以及数据背景。隔了8个月之后,我对全岛建筑模型数据进行了更新,不仅在数量上有增长,而且数据显示性能也进行了优化,下面我针对对2024年数据进行详细介绍。
一、数量统计
这份数据覆盖台湾全部地区,除了台湾本岛,还包括澎湖、金门、连江等岛屿。2023年数据中建筑模型总量共计683万,这次2024年更新中,共有721万多个建筑模型,增长约38余万,增长约5%。其中LOD1个数7,194,339个,LOD2个数21,572个,LOD3共计315个。在数据大小上,2024年数据共有594万个文件,总大小1.45TB,2023年的数据只有652GB,相比2023年增长一倍多。其中数据量最大的是台中市,有200GB。
二、数据特点
2023年的3DTiles数据采用b3dm格式进行保存,在2024年是glb格式;2024年数据在使用时,加载显示更加快速,浏览交互体验更好,原因在于对数据结构进行了处理,主要是对成片Mesh数据进行了优化。比如2023数据中,一个小区有十几栋楼,这十几栋楼的数据都是放在一个Mesh当中,当CesiumJS加载显示时,需要将十几栋建筑的模型数据全部下载、解析完成后才能进入渲染队列,由于数据量巨大,其渲染也比较缓慢,所以2023年的数据需要比较强的硬件配置,尤其是显卡渲染性能。而2024年数据,则进行了优化处理。将这十几栋楼分拆成十几个Mesh数据,在加载显示时,下载、解析完一栋楼后即可加载显示,每栋楼Mesh大小很小,这样显示比较快速,用户体验更佳。
三、数据使用
前面文章中已经介绍过,3DTiles数据都是静态文件,使用Nginx直接静态代理即可,无需部署发布程序,这里分享一个nginx.conf里Server的样例,大家可以直接粘贴过去,修改root对应的路径。
server
{
listen 8804;
server_name localhost;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Access-Control-Allow-Origin "$http_origin";
add_header Access-Control-Allow-Credentials true;
add_header Access-Control-Allow-Methods 'GET, POST,OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = 'OPTIONS') {
return 204;
}
location / {
autoindex on;
root D:/TAIZHONG-3DTILES/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
同时在前端Cesium上接入也比较容易,创建Cesium3DTileset对象,加入到pirmitives,同时需要注意的是,depthTestAgainstTerrain要设置成false,否则会有地形遮挡显示问题。下面是示例代码:
let tileset = await Cesium.Cesium3DTileset.fromUrl(
"http://localhost:8804/tileset.json");
viewer.scene.primitives.add(tileset);
viewer.scene.globe.depthTestAgainstTerrain = false;
我将数据使用Nginx进行代理发布后,加载到CesiumJS上进行可视化展示,Cesium是1.121.1版本,底图是ESRI卫星影像瓦片,显示效果请看下面截图。
四、数据意义
熟悉我文章的读者都知道,台湾地区倾斜摄影只有690平方公里,包括有台北、台中、桃园三个地区,不可否认,倾斜摄影效果效果贴近真实场景,但是相比于台湾36000平方公里陆地面积来说,690平方公里面积占比不到2%,远远满足不了使用需求,而这份数据覆盖了全台湾的房屋建筑,这是这份数据的最大优势。
其次,这份数据目前还进行了单体化处理,每栋建筑都有单体化信息,包括中心点坐标,建筑高度等信息,这是这份数据的的第二大优势。
这份数据无论在数据组织和显示效果上,质量都比较高,而且数据真实性相比OSM、高德等开源或商业数据更具权威。另外我获取了2019-2023年台湾全岛的建筑模型原始数据,待后期会转换生成3DTiles和OSGB数据。
五、样例数据领取
大家在评论区留言或者私信联系,我会将领取方式发送给大家,样例数据是覆盖台湾澎湖县全部建筑模型数据,共1.5GB,欢迎大家随时领取。