0
点赞
收藏
分享

微信扫一扫

cesium实现获取3D tiles中所有feature数据信息

菜菜捞捞 2022-04-15 阅读 153

文章目录


Cesium实战系列文章总目录: 传送门

1.实现效果

在这里插入图片描述

2.实现方法

2.1实现思路

(1)监听瓦片加载完成
使用Cesium3DTileset类中的tileLoad方法,API:传送门
在这里插入图片描述(2)获取content
使用tile类的content属性进行获取,API:传送门
在这里插入图片描述(3)获取要素信息
使用Cesium3DTileContent类的getFeature方法,遍历获取当前瓦片中的所有要素。
API:传送门
在这里插入图片描述

2.2具体代码

获取3D tiles中所有feature数据信息的代码如下,可以根据feature的方法进一步筛选获取属性值等数据。

 // 获取3D tiles中所有feature的数据
 let tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
     url: '.././data/sz/tileset.json'
 }));
 viewer.zoomTo(tileset);
 // 设置瓦片加载完成监听事件
 tileset.tileLoad.addEventListener(function(tile) {
     let content = tile.content;
     let featuresLength = content.featuresLength;
     console.log("要素数量为:");
     console.log(featuresLength);
     console.log("第一个要素为:");
     let feature = content.getFeature(0);
     console.log(feature);
 })
举报

相关推荐

0 条评论