WebGIS开发教程:Cesium里面的Entity和primitive有什么区别

2023-09-22 10:05:59

Entity

Entity是Cesium中最重要的概念之⼀,它通常用于描述具有坐标位置的实际对象,例如⻜机、汽⻋、楼 房、⼈物等。每个Entity实例都有不同的属性,例如位置、姿态、缩放、颜⾊、贴图等,并且可以通过编 程⽅式创建、修改、删除。

Entity的优点是⾮常灵活和易于使用。

由于Entity是更⾼层次的概念,因此它可以⾃动处理许多与底层图 形和几何形状相关的复杂性,例如纹理贴图、光照、碰撞检测等。它还可以与其他Cesium组件集成,例 如事件处理、拾取和相机控制等。

Primitive

与Entity相⽐,Primitive是Cesium的⼀种更低层次的图形概念,它通常用于描述⼀组简单的图形几何体。例如,我们可以使用Primitive来绘制点、线、多边形、体积、⽂本等基本图形。每个Primitive实例 都可以设置不同的属性,例如颜⾊、边框、宽度、⾼度等。

Primitive的主要优点是它们⾮常⾼效,因为它们使用了GPU硬件加速,可以轻松地绘制⼤量的⼏何体。 它们也⽐Entity更灵活,因为我们可以直接控制几何体的属性和细节,例如绘制线宽,选择不同的纹理贴 图等等。但Primitive的使用需要较少的⾃动性和灵活性,因为需要⼿动处理许多问题,例如碰撞检测、 ⾼级光照和渲染技术等。

总的来说,Entity和Primitive都是Cesium中强⼤的图形概念,但它们用于不同的场景。如果我们需要描 述具有复杂属性和⾏为的实际对象,那么我们应该使用Entity;如果我们只需要绘制简单的几何体,那么 我们可以使⽤Primitive来获得更好的性能和控制。

什么情况使用Primitive

在Cesium中,Primitive是用于渲染三维场景的基本渲染单元,它可以表示多种类型的几何形状和纹理贴 图。以下是在Cesium中使用Primitive的⼀些常⻅情况:

1、渲染几何形状:

Primitive可以表示各种几何形状,例如平⾯、立方体、球体、柱体、圆锥等。对于简 单的形状,可以使用Cesium提供的预定义几何形状(如RectangleGeometry、BoxGeometry、 SphereGeometry等),对于更复杂的形状,可以使用三⻆形⽹格(TriangleMeshGeometry)来定义几何形状。

2、纹理贴图:

Primitive可以将纹理映射到几何形状上,以创建更真实的场景。可使用TextureAtlas或 TextureCoordinateGenerator为Primitive指定纹理贴图。

3、投影:

Primitive可以被⾼效的投影到各种不同的地形数据集上,例如地形切⽚、3D Tiles和3D模型。 这使得Cesium可以在不同的地形数据集上展示同⼀场景,提⾼应用的可视化效果和跨平台兼容性。

4、地图中有很多要素时,使用Primitive可以更⾼效的渲染出来。

更多三维GIS开发学习资源:

领取完整版二三维WebGIS开发课程

更多推荐

虚拟机Ubuntu操作系统常用终端命令(3)(详细解释+详细演示)

本篇概要本篇讲述了Ubuntu操作系统常用的几个功能,即修改文件权限、修改文件属性、可执行脚本、虚拟机网络、FTP服务器、SSH服务器、VIM等方面的知识。希望能够得到大家的支持。文章目录本篇概要1.修改文件权限2.修改文件属主3.可执行脚本3.1要点与细节3.2shell脚本3.3Python脚本4.虚拟机网络4.1

最长公共子序列(最详细的动态规划案例)

#include<iostream>#include<vector>usingnamespacestd;intmain(){stringtext1,text2;while(cin>>text1>>text2){//创建二维数组dp,行数text1.size()+1,列数text2.size()+1,并全部初始化为0ve

Python灰帽编程——初识Python下(函数与文件)

1.函数需求:随机密码生成器。逻辑上讲,函数就是一个功能;代码上讲,多条Python语句的集合,语句块。1.1函数介绍1.1.1函数基本概念逻辑上讲,函数就是一个功能;代码上讲,函数就是多条Python语句的集合,语句块。函数是对程序逻辑进行结构化或过程化的一种编程方法,将整块代码巧妙地隔离成易于管理的小块。把重复代码

13年12月CCF计算机软件能力认证

4、有趣的数时间限制:1.0s内存限制:256.0MB问题描述:问题描述我们把一个数称为有趣的,当且仅当:1.它的数字只包含0,1,2,3,且这四个数字都出现过至少一次。2.所有的0都出现在所有的1之前,而所有的2都出现在所有的3之前。3.最高位数字不为0。因此,符合我们定义的最小的有趣的数是2013。除此以外,4位的

invoke与begininvoke区别

`Invoke`和`BeginInvoke`是用于在多线程应用程序中执行委托的两种不同方法,它们之间的主要区别在于同步和异步执行:1.`Invoke`:-`Invoke`是一个同步方法,它会在当前线程中执行委托。-调用`Invoke`方法会阻塞当前线程,直到委托的执行完成,然后才继续执行后续代码。-这意味着如果在主线程

计算机视觉与深度学习-经典网络解析-VGG-[北邮鲁鹏]

目录标题VGG参考VGG网络贡献使用尺寸更小的$3\times3$卷积串联来获得更大的感受野放弃使用$11\times11$和$5\times5$这样的大尺寸卷积核深度更深、非线性更强,网络的参数也更少;去掉了AlexNet中的局部响应归一化层(LRN)层。网络结构主要改进输入去均值小卷积核串联代替大卷积核无重叠池化卷

TikTok如何打造爆款视频?超店有数让你的视频上热门!

作为TikTok视频博主,你肯定面临着以下难题:播放量卡1000,粉丝数原地踏步。视频创意枯竭,不知道拍什么?不知道拍什么会火?流行趋势慢人一步,热点捉摸不透?一直在模仿,从未有超越。拍摄费时费力,视频制作效率低下...然而!别人家却是这样:粉丝量低的博主也能随随便便播放量破10W+,一条视频带爆粉丝数的翻几番。点赞、

C语言中的sizeof运算符的作用是什么?

在C语言中,sizeof运算符是一个非常重要的运算符,它用于计算数据类型或表达式的大小(以字节为单位)。这个运算符在C语言中的作用非常广泛,它可以帮助程序员确定内存的分配和数据类型的大小,从而更好地管理内存和优化程序性能。在本文中,我们将详细探讨sizeof运算符的作用、用法以及一些示例,以帮助C语言初学者更好地理解它

【计组】计算机系统体系结构

【计组】计算机系统体系结构文章目录【计组】计算机系统体系结构1、体系的发展与思维变化1.1计算机发展1.2冯诺依曼体系2、计算机系统2.1CPU2.2存储层次2.2.1寄存器2.2.2高速缓存(Cache)2.2.3动态随机访问存储器(DRAM)2.2.4硬盘2.3总线2.3.1总线层次2.3.2总线属性1、体系的发展

想要精通算法和SQL的成长之路 - 环形子数组的最大和

想要精通算法和SQL的成长之路-环形子数组的最大和前言一.环形子数组的最大和1.1空间优化前言想要精通算法和SQL的成长之路-系列导航一.环形子数组的最大和原题链接在写这道题目之前,可以先看下这个题:最大子数组和。本题是它的进阶版本,在原本的基础上,有一个环状的数组。那么我们如果将其平铺开来,就是一个两段数组拼接而成。

从源码全面解析 Java SPI 的来龙去脉

👏作者简介:大家好,我是爱敲代码的小黄,独角兽企业的Java开发工程师,CSDN博客专家,阿里云专家博主📕系列专栏:Java设计模式、Spring源码系列、Netty源码系列、Kafka源码系列、JUC源码系列、duubo源码系列🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦🍂博主正在努力完成20

热文推荐