5-点选3DTiles模型要素
创始人
2024-06-02 02:20:53
0

本次分享的讲解视频已经发布至b站,感兴趣的同学点击链接观看学习
链接: https://www.bilibili.com/video/BV1PY411z7Hn/?vd_source=4d61a6212ec109857608aa8abf48f609

1.本节主要讲解的内容?

本节主要讲解如何对3DTiles模型的要素进行拾取,如何对拾取的要素进行属性信息读取和修改要素颜色

2.涉及的主要接口有?

ScreenSpaceEventHandler、ScreenSpaceEventType、Cesium3DTileset、Cesium3DTile、Cesium3DTileFeature

3.介绍下cesium中Cesium3DTileset、Cesium3DTile、Cesium3DTileFeature这三个类的关系?

Cesium3DTileset、Cesium3DTile、Cesium3DTileFeature是Cesium中用于加载、渲染和操作3D Tile数据的重要类,它们之间的关系如下:

  1. Cesium3DTileset是一个最高级别的类,表示一个3D Tile数据集。Cesium3DTileset实例可以通过Cesium的Tileset类创建,并且可以通过url或json数据加载3D Tile数据。Cesium3DTileset负责管理整个3D Tile数据集,并对其中的每个3D Tile进行加载、解析和渲染。

  2. Cesium3DTile是Cesium3DTileset中的一个单独的3D Tile对象,它表示一个具有几何体和纹理的3D模型。Cesium3DTile对象可以包含多个几何体,每个几何体又包含多个几何属性(如位置、法线、纹理坐标等)。Cesium3DTile对象负责管理自身的几何体和纹理,并且可以通过Cesium3DTileset的方法进行加载、卸载和渲染。

  3. Cesium3DTileFeature是Cesium3DTile中的一个要素对象,表示一个3D Tile中的一个具体对象(如建筑、树木、汽车等)。Cesium3DTileFeature对象可以包含多个属性和几何信息,可以通过Cesium3DTile的方法进行查询和渲染。
    因此,Cesium3DTileset是最高级别的类,包含多个Cesium3DTile对象,而每个Cesium3DTile对象又可以包含多个Cesium3DTileFeature对象。这三个类一起构成了Cesium中3D Tile数据的层次结构,提供了高效的3D模型加载和渲染功能。

4.介绍下Cesium3DTileFeature和primitive的区别?

Cesium3DTileFeature和primitive都是Cesium中用于渲染3D场景的对象,但它们的作用和使用方式有所不同。

Cesium3DTileFeature是Cesium中用于表示3D Tile中一个具体对象的要素对象,它包含了3D Tile中一个对象的几何和属性信息。Cesium3DTileFeature对象可以通过tileset.getFeatureByName、tileset.getFeatureByTile、tileset.getFeatureByUniqueID等方法来获取,通常用于在3D场景中对3D Tile中的具体对象进行查询、操作和渲染。

primitive则是Cesium中用于表示3D场景中的图元(primitive),它包含了3D场景中的几何信息和材质信息。Cesium中支持多种类型的primitive,例如BoxPrimitive、EllipsoidPrimitive、PolygonPrimitive等,每种primitive都有自己的属性和方法,用于控制其外观和行为。通常情况下,用户需要先构造一个primitive对象,然后将其添加到3D场景中进行渲染。

Cesium3DTileFeature对象和primitive对象的关系可以简单理解为,Cesium3DTileFeature对象是3D Tile中具体对象的一个抽象表示,而primitive对象是3D场景中的一个具体图元。在Cesium中,Cesium3DTileFeature对象和primitive对象经常需要进行转换和结合使用,例如通过Cesium3DTileFeature对象获取几何信息,并使用这些信息创建primitive对象进行渲染。又例如,在选中某个Cesium3DTileFeature对象时,通常需要在场景中为其创建一个primitive对象以便进行视觉上的反馈。
需要注意的是,Cesium3DTileFeature对象和primitive对象虽然有相似之处,但它们的使用方式和属性方法都有所不同,因此在使用时需要注意区分。

相关内容

热门资讯

122.(leaflet篇)l... 听老人家说:多看美女会长寿 地图之家总目录(订阅之前建议先查看该博客) 文章末尾处提供保证可运行...
育碧GDC2018程序化大世界... 1.传统手动绘制森林的问题 采用手动绘制的方法的话,每次迭代地形都要手动再绘制森林。这...
育碧GDC2018程序化大世界... 1.传统手动绘制森林的问题 采用手动绘制的方法的话,每次迭代地形都要手动再绘制森林。这...
Vue使用pdf-lib为文件... 之前也写过两篇预览pdf的,但是没有加水印,这是链接:Vu...
PyQt5数据库开发1 4.1... 文章目录 前言 步骤/方法 1 使用windows身份登录 2 启用混合登录模式 3 允许远程连接服...
Android studio ... 解决 Android studio 出现“The emulator process for AVD ...
Linux基础命令大全(上) ♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维...
再谈解决“因为文件包含病毒或潜... 前面出了一篇博文专门来解决“因为文件包含病毒或潜在的垃圾软件”的问题,其中第二种方法有...
南京邮电大学通达学院2023c... 题目展示 一.问题描述 实验题目1 定义一个学生类,其中包括如下内容: (1)私有数据成员 ①年龄 ...
PageObject 六大原则 PageObject六大原则: 1.封装服务的方法 2.不要暴露页面的细节 3.通过r...
【Linux网络编程】01:S... Socket多进程 OVERVIEWSocket多进程1.Server2.Client3.bug&...
数据结构刷题(二十五):122... 1.122. 买卖股票的最佳时机 II思路:贪心。把利润分解为每天为单位的维度,然后收...
浏览器事件循环 事件循环 浏览器的进程模型 何为进程? 程序运行需要有它自己专属的内存空间࿰...
8个免费图片/照片压缩工具帮您... 继续查看一些最好的图像压缩工具,以提升用户体验和存储空间以及网站使用支持。 无数图像压...
计算机二级Python备考(2... 目录  一、选择题 1.在Python语言中: 2.知识点 二、基本操作题 1. j...
端电压 相电压 线电压 记得刚接触矢量控制的时候,拿到板子,就赶紧去测各种波形,结...
如何使用Python检测和识别... 车牌检测与识别技术用途广泛,可以用于道路系统、无票停车场、车辆门禁等。这项技术结合了计...
带环链表详解 目录 一、什么是环形链表 二、判断是否为环形链表 2.1 具体题目 2.2 具体思路 2.3 思路的...
【C语言进阶:刨根究底字符串函... 本节重点内容: 深入理解strcpy函数的使用学会strcpy函数的模拟实现⚡strc...
Django web开发(一)... 文章目录前端开发1.快速开发网站2.标签2.1 编码2.2 title2.3 标题2.4 div和s...