6. Cesium中的Entity

news2024/9/23 1:26:54

1. Entity类简介

Entity类是Cesium中描述和呈现地球上实体对象的核心类。它具有丰富的属性和方法,用于控制和定制地理实体的外观和行为。Entity对象可以表示各种地理实体,如点、线、面等,并具有位置、方向、模型、标牌、折线、多边形等属性,通过设置这些属性可以实现各种类型的地理可视化。此外,Entity类还提供了其他一些常用的方法和属性,如描述信息、可见性和自定义属性等。通过使用Entity类,可以在Cesium中创建并定制地球上的实体对象,以实现复杂的地理可视化和交互效果。

2. Entity在Cesium中的作用

Entity是Cesium中非常重要的类,它为我们提供了一种灵活、强大的方式来描述、呈现和操控地球上的实体对象。通过Entity,我们可以利用Cesium强大的功能和多样化的图形对象,创建出下面这些丰富、生动的地理可视化场景。

地理信息表达:Entity允许我们以更直观和语义化的方式来表达地理信息。通过设置Entity的位置、方向、形状、样式等属性,我们可以创建点、线、面等各种类型的地理实体,并将它们与具体的坐标和视觉效果联系起来。

可视化呈现:使用Entity,我们可以在地球上以图形、模型、标牌等多种形式呈现地理实体,从而实现地理可视化。Entity提供了丰富的图形对象,如点(Point)、线(Polyline)、面(Polygon)、模型(Model)等,它们允许我们灵活地控制实体的外观和样式。

动态更新:Entity支持实时动态更新,可以通过设置位置、方向等属性的回调函数来实现地理实体的实时更新。这样,我们可以根据实时数据或交互操作来改变实体的状态,从而实现实时演示、动画效果等。

交互与事件处理:Entity允许我们为地理实体设置事件处理函数,例如鼠标点击、悬停等事件。通过监听这些事件,我们可以实现与实体的交互,例如弹出信息窗体、高亮选中的实体、执行相关操作等。

扩展与自定义:通过继承Entity类,我们可以扩展和自定义实体的功能。可以通过添加新的属性、方法和事件处理函数,来满足特定需求或实现定制化的地理实体。

3. Entity使用

3.1 第一种方式 直接通过 entities.add

const computedCircle = (radius:any) => {
	let positions = [];
	for (let i = 0; i < 36; i++) {
		let radian = Cesium.Math.toRadians(i * 10);
		let x = radius * Math.cos(radian);
		let y = radius * Math.sin(radian);
		positions.push(new Cesium.Cartesian2(x, y));
	}
	return positions;
}

viewer.entities.add({
		id: '管道',
		polylineVolume: {
			positions: Cesium.Cartesian3.fromDegreesArrayHeights([
			116.39, 39.9, -5,
			116.38, 39.85, -5,
			116.41, 39.86, -5,
			116.41, 39.88, -5,
			]),
			fill: true,
			material: Cesium.Color.RED.withAlpha(.9),
			shape: computedCircle(10),
		},
	});

3.2 第二种方式 通过new Cesium.Entity

new Cesium.Entity({
        polyline: {
            positions: Cesium.Cartesian3.fromDegreesArray(positionArray),
            width: 8,
            material: Cesium.Color.fromCssColorString('#39E09B'),
        }
    })

viewer.entities.add(lineEntity);

4. 可创建的类型

cesium entity

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1131959.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小主机折腾记18

这个月冲动消费了小两千块钱…… 1.880g5twr 由于四根2400t的内存条没有用出去&#xff0c;我又把它们装回了惠普的800g5twr&#xff1b; 看到pdd有400块钱的9350K&#xff0c;于是想着给他上一个9350k 在参考了pdd、咸鱼以及淘宝的价格后&#xff0c;我发现400块钱的9350k都…

易点易动设备管理系统:提升企业备件管理和维修效率的智能解决方案

在当今竞争激烈的商业环境中&#xff0c;大型生产制造企业面临着日益复杂的设备管理挑战。为了提高生产效率和降低成本&#xff0c;企业需要一种高效的设备管理系统。易点易动设备管理系统是一款智能化的解决方案&#xff0c;旨在帮助企业提升备件管理和维修效率。本文将详细介…

【外贸干货】广交会后9大细节推进客户下单

10月的展会正如火如荼的进行&#xff0c;外贸人也到了真正忙碌的时刻。我们在展会中挖掘到的客户是否已经得到妥善跟进&#xff1f;如何进行跟进&#xff0c;以吸引客户的注意&#xff1f;如何撰写高回复率的开发信&#xff1f;不同的展后跟进方式将直接影响我们的参展成果&…

设计模式(16)迭代器模式

一、介绍&#xff1a; 1、定义&#xff1a;迭代器模式 (Iterator Pattern) 是一种行为型设计模式&#xff0c;它提供一种顺序访问聚合对象&#xff08;如列表、集合等&#xff09;中的元素&#xff0c;而无需暴露聚合对象的内部表示。迭代器模式将遍历逻辑封装在一个迭代器对象…

2023CCF中国开源大会 | 麒麟信安作为首批合作伙伴入驻全国信创开源广场

聚开源各界群智&#xff0c;于湘江之滨论道。10月21-22日&#xff0c;以“开源联合&#xff0c;聚力共赢”为主题的2023 CCF中国开源大会&#xff08;CCF ChinaOSC&#xff09;在长沙隆重召开。本届大会由中国计算机学会、开放原子开源基金会主办&#xff0c;中国工程院院士、鹏…

遮挡Windows电脑上烦人的微信/企业微信/钉钉消息闪烁提醒

不知道有没有人跟我一样&#xff0c;很烦Windows电脑端微信、企业维系、钉钉这些软件的消息闪烁提醒——不读就一直在左下角闪烁个不停。特别是加的工作群比较多的时候&#xff0c;非常的分心。 而无论是直接在软件中设置不提醒新消息&#xff0c;还是把图标隐藏起来&#xff…

MySQL学习(九)——InnoDB引擎

文章目录 1. 逻辑存储结构2. 架构2.1 内存结构2.2 磁盘结构2.3 后台线程 3. 事务原理3.1 事务基础3.2 redo log3.3 undo log 4. MVCC4.1 基本概念4.2 隐藏字段4.3 undo log4.4 readview4.5 原理分析 1. 逻辑存储结构 InnoDB的逻辑存储结构如下图所示&#xff1a; 表空间 表空间…

HarmonyOS鸿蒙原生应用开发设计- 服务组件库

HarmonyOS设计文档中&#xff0c;为大家提供了一些已经设计好的原生服务组件库&#xff0c;开发者可以根据需要直接引用。 开发者直接使用官方提供的服务组件库样式&#xff0c;既可以符合HarmonyOS原生应用的开发上架运营规范&#xff0c;又可以防止使用别人的内容产生的侵权意…

prosemirror 学习记录(一)schema

初始化 vite 项目 pnpm create vite framework - vue ,variant - JavaScript 初始化 eslint npm init eslint/config 最简单的 schema nodes 中必须包含顶级节点和文本节点。顶级节点默认为 doc&#xff08;可通过 topNode 修改&#xff09;。文本节点为 text const mySche…

vr虚拟现实技术融入司法办案实操培训中的优势

模拟法院诉讼一直室各大法学院法律实践性教学的重要方式和内容&#xff0c;通过让学员在模拟环境中实操一遍诉讼流程及相关资料&#xff0c;达到上岗就业的教学目标。 学生可以选择法官席、律师席、证人席等不同角色进行体验&#xff0c;在VR模拟法庭中进行案件审判和辩论&…

Vue - 图片浏览组件v-viewer

v-viewer组件可以实现图片点击放大&#xff0c;缩小&#xff0c;旋转&#xff0c;切换等操作 npm install v-viewer --save main.js 里面引用 import Viewer from v-viewer import viewerjs/dist/viewer.css Vue.use(Viewer) Viewer.setDefaults({ Options: { inline: true, …

java类的动态加载

java类的动态加载 java动态加载的机制&#xff1a; ClassLoader->SecureClassloader–>URLClassLoader–>AppClassLoader loadClass–>findClass(重写方法)–>defineClass(从字节码加载类) 初始化的时候会加载静态代码块 实例化的时候会加载构造代码块、无参构…

【tio-websocket】10、单条TCP连接上下文—ChannelContext

介绍 每一个 tcp 连接的建立都会产生一个 ChannelContext 对象,这是个抽象类。 如果你是用 t-io 作 TCP 客户端,那么就是 ClientChannelContext如果你是用 t-io 作 TCP 服务器,那么就是 ServerChannelContext如下图所示: ChannelContext对象信息 ChannelContext 对象包含…

HackTheBox - Starting Point -- Tier 0 --- Meow

文章目录 一 题目二 实验过程 一 题目 Tags Telnet、Network、Protocols、Reconnaissance、Weak Credentials、Misconfiguration译文&#xff1a;标签、远程登录、网络、协议、侦察、弱凭证、配置错误Connect To attack the target machine, you must be on the same networ…

华为数通方向HCIP-DataCom H12-831题库(多选题:61-80)

第61题 在MPLS VPN中,为了区分使用相同地址空间的IPV4前缀,将IPV4的地址增加了RD值,下列选项描述正确的是: A、在PE设备上,每一个VPN实例都对应一个RD值,同一PE设备上,必须保证RD值唯一 B、RD可用于来控制VPN路由信息的发布 C、RD在传递过程中作为BGP的扩展团体性封装在…

深入浅出Dart》函数

函数 Dart语言作为一门面向对象的语言&#xff0c;函数在其中占据了非常重要的位置。本文将详细解析如何定义和调用函数&#xff0c;以及箭头语法&#xff0c;高阶函数和闭包等内容。 1. 函数的定义和调用 在Dart中&#xff0c;函数可以定义为一段实现特定功能的代码块&…

【Docker】联合探讨Docker:容器化技术的革命性应用

前言 Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 &#x1f4d5;作者简介&#xff1a;热…

让CHAT生成对桥梁范围内施工注意事项及防护措施

ChatGPT&#xff0c;自动化撰写工具&#xff0c;生活必不可少的帮手。 今天小编带大家来看下&#xff0c;用CHAT生成对桥梁范围内施工注意事项及防护措施 桥梁施工要严格按照设计和施工规范来执行&#xff0c;以保证安全、质量和效率。下面是一些桥梁施工的注意事项及防护措施…

餐饮业如何高效经营?赶紧闭眼抄这个方法!

在现代社会&#xff0c;餐饮业已经成为人们日常生活中不可或缺的一部分。为了提高食堂运营效率&#xff0c;满足不断增长的客户需求&#xff0c;智慧收银系统应运而生。 智慧收银系统帮助食堂业主更好地理解其客户&#xff0c;提高服务质量&#xff0c;优化库存管理&#xff0c…

datahub 中血缘图的实现分析,在react中使用airbnb的visx可视化库来画有向无环图

背景 做大数据的项目&#xff0c;必不可少的是要接触到数据血缘图&#xff0c;它在大数据项目中有着很重要的作用。 之前在公司也做过一些案例&#xff0c;也看过很多友商的产品&#xff0c;阿里的DataWork&#xff0c;领英的Datahub&#xff0c; datawork的血缘图使用的是 G6…