Entity 的材质(棋盘、条纹、网格)

Entity 的材质

普通物体的材质

import { nextTick, onMounted, ref } from 'vue'
import * as Cesium from 'cesium'
// console.log('Cesium=', Cesium)const viewer = ref<any>(null)onMounted(() => { ... })let material = Cesium.Color.YELLOW.withAlpha(0.5)`Cesium.ColorMaterialProperty``Cesium.MaterialProperty` 的子类
let material = new Cesium.ColorMaterialProperty(new Cesium.Color(1.0, 1.0, 1.0, 1.0))`棋盘纹理`
let material = new Cesium.CheckerboardMaterialProperty({evenColor: Cesium.Color.RED,oddColor: Cesium.Color.YELLOW,repeat: new Cesium.Cartesian2(4, 4) // 水平2个格、竖直2个格
})`条纹纹理`
let material = new Cesium.StripeMaterialProperty({evenColor: Cesium.Color.WHITE,oddColor: Cesium.Color.BLACK,repeat: 8
})`网格纹理`
let material = new Cesium.GridMaterialProperty({color: Cesium.Color.YELLOW,cellAlpha: 0.5,lineCount: new Cesium.Cartesian2(4, 4), // 横、竖各4个网格lineThickness: new Cesium.Cartesian2(1.0, 1.0) // 线的粗细
})const rectangleEntity = new Cesium.Entity({id: 'rectangleEntity',name: '矩形',rectangle: {coordinates: Cesium.Rectangle.fromDegrees(100, 20, 110, 30),outline: true, // 显示边框outlineColor: Cesium.Color.BLACK, // 边框颜色height: 1, // 矩形在地面的高度,设置为0,意味着矩形将“贴”在地面上// CLAMP_TO_GROUND:如果地形(如山脉)高于矩形设置的高度,矩形将“夹”在地形上,而不是“浮”在其上方。// heightReference: Cesium.HeightReference.CLAMP_TO_GROUND/*500000:定义了矩形沿其法线方向(即垂直向上)的挤出高度。意味着,矩形将不仅仅是一个平面,而是一个从地面开始,垂直向上挤出500000米的三维形状,但请注意,因为,coordinates的纬度高度设置得非常大(50°),所以,此挤出高度可能与矩形的实际大小不匹配或不直观。*/// extrudedHeight: 500000,material: material}
})// 瞬间到达 - 将相机移动到,某位置的上空,并朝向地面
const setView = () => {// const position = Cesium.Cartesian3.fromDegrees(113.25, 23.16, 1000000) // 广州// const position = Cesium.Cartesian3.fromDegrees(116.397428, 39.90923, 100) // 天安门const position = Cesium.Cartesian3.fromDegrees(113.3191, 23.109, 2000) // 广州塔viewer.value.camera.setView({destination: position,orientation: {heading: Cesium.Math.toRadians(0),pitch: Cesium.Math.toRadians(-90),roll: Cesium.Math.toRadians(90)}})
}nextTick(() => {setView()viewer.value.entities.add(rectangleEntity)
})

线的材质


onMounted(() => { ... })let material = Cesium.Color.RED.withAlpha(0.5)`设置虚线材质`
let material = new Cesium.PolylineDashMaterialProperty({dashLength: 60, // 长度color: Cesium.Color.RED
})`设置箭头材质`
let material = new Cesium.PolylineArrowMaterialProperty(Cesium.Color.RED)`设置发光飞线效果`
let material = new Cesium.PolylineGlowMaterialProperty({glowPower: 0.8, // 设置发光程度taperPower: 0.7, // 尾椎缩小程度color: Cesium.Color.RED
})const polyline = new Cesium.Entity({id: 'polyline',polyline: {`因为,线的坐标是由 <多个坐标对> 组成,所以,这里使用 `fromDegreesArray()` 方法批量转换坐标 `positions: Cesium.Cartesian3.fromDegreesArray([112.3, 39.9, // `第一个点`114.4, 100 // `第二个点`]), // 返回笛卡尔坐标数组width: 10,material: material,clampToGround: true, // 是否将线贴地显示(可选)height: 1000,}
})// 瞬间到达 - 将相机移动到,某位置的上空,并朝向地面
const setView = () => {// const position = Cesium.Cartesian3.fromDegrees(113.25, 23.16, 1000000) // 广州// const position = Cesium.Cartesian3.fromDegrees(116.397428, 39.90923, 100) // 天安门const position = Cesium.Cartesian3.fromDegrees(113.3191, 23.109, 2000) // 广州塔viewer.value.camera.setView({destination: position,orientation: {heading: Cesium.Math.toRadians(0),pitch: Cesium.Math.toRadians(-90),roll: Cesium.Math.toRadians(90)}})
}nextTick(() => {setView()viewer.value.entities.add(polyline)
})

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件测试面试题整理

一、人格相关问题 1、自我介绍结构 姓名工作年限简单介绍上家公司的行业主要负责内容个人优势短期内的职业规划应聘该岗位的原因 2、对未来的发展方向怎么看&#xff1f; 没有标准答案&#xff0c;职业规划来讲&#xff0c;可以分为技术层面和管理层面去说&#xff0c;技术…

.NET framework、Core和Standard都是什么?

对于这些概念一直没有深入去理解&#xff0c;以至于经过.net这几年的发展进化&#xff0c;概念越来越多&#xff0c;越来越梳理不容易理解了。内心深处存在思想上的懒惰&#xff0c;以为自己专注于Unity开发就好&#xff0c;这些并不属于核心范畴&#xff0c;所以对这些概念总是…

CNN张量输入形状和特征图

CNN张量输入形状和特征图 这个是比较容易理解的张量的解释&#xff0c;比较直观 卷积神经网络 在这个神经网络编程系列中&#xff0c;我们正在逐步构建一个卷积神经网络&#xff08;CNN&#xff09;&#xff0c;所以让我们看看CNN的张量输入。 ​ ​ 在最后两篇文章中&…

【数据可视化-12】数据分析岗位招聘分析

&#x1f9d1; 博主简介&#xff1a;曾任某智慧城市类企业算法总监&#xff0c;目前在美国市场的物流公司从事高级算法工程师一职&#xff0c;深耕人工智能领域&#xff0c;精通python数据挖掘、可视化、机器学习等&#xff0c;发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

(12)springMVC文件的上传

SpringMVC文件上传 首先是快速搭建一个springMVC项目 新建项目mvn依赖导入添加webMoudle添加Tomcat运行环境.在配置tomcat时ApplicationContext置为"/"配置Artfact的lib配置WEB-INF配置文件&#xff08;记得添加乱码过滤&#xff09;配置springmvc-servlet文件&…

Ubuntu中双击自动运行shell脚本

方法1: 修改文件双击反应 参考: https://blog.csdn.net/miffywm/article/details/103382405 chmod x test.sh鼠标选中待执行文件&#xff0c;在窗口左上角edit菜单中选择preference设计双击执行快捷键&#xff0c;如下图&#xff1a; 方法2: 设置一个应用 参考: https://blo…

Linux(Centos7)安装Mysql/Redis/MinIO

安装Mysql 安装Redis 搜索Redis最先版本所在的在线安装yum库 查看以上两个组件是否是开机自启 安装MinIO 开源的对象存储服务&#xff0c;存储非结构化数据&#xff0c;兼容亚马逊S3协议。 minio --help #查询命令帮助minio --server --help #查询--server帮助minio serve…

金融项目实战 01|功能测试分析与设计

前置内容&#xff1a;金融项目准备的内容笔记可直接看如下笔记 只看&#xff1a;一、投资专业术语 和 二、项目简介 两部分文章浏览阅读2.3k次&#xff0c;点赞70次&#xff0c;收藏67次。安享智慧理财金融系统测试项目&#xff0c;测试用例&#xff0c;接口测试&#xff0c;金…

【Rust】控制流

目录 思维导图 一、选择结构 1. if表达式 2. 处理多个条件的else if 3. 使用if在let语句中 二、循环结构 1. loop 2. while循环 3. for循环 4. 使用范围Range进行循环 思维导图 一、选择结构 控制流是编程语言的基本构建块&#xff0c;Rust使用if表达式和循环来控制代…

FastDDS安装测试记录

1、安装依赖的软件 sudo apt install cmake g python3-pip wget git sudo apt install libasio-dev libtinyxml2-dev sudo apt install libssl-dev sudo apt install libp11-dev libengine-pkcs11-openssl sudo apt install softhsm22、安装foonathan_memory_vendor cd ~/Fas…

浅谈云计算01 | 云计算服务的特点

在当今数字化时代&#xff0c;云计算作为一种强大的技术解决方案&#xff0c;正逐渐改变着企业和个人对信息技术的使用方式。本文将详细探讨云计算的五个主要特点&#xff0c;包括按需自助服务、广泛的网络接入、资源池化、快速弹性伸缩以及可计量服务。 一、按需自助服务 云…

《使用 YOLOV8 和 KerasCV 进行高效目标检测》

《使用 YOLOV8 和 KerasCV 进行高效目标检测》 作者&#xff1a;Gitesh Chawda创建日期&#xff1a;2023/06/26最后修改时间&#xff1a;2023/06/26描述&#xff1a;使用 KerasCV 训练自定义 YOLOV8 对象检测模型。 &#xff08;i&#xff09; 此示例使用 Keras 2 在 Colab 中…

vue3+ts+element-plus 对话框el-dialog设置圆角

对话框el-dialog设置圆角&#xff0c;实现的需求效果&#xff1a; 目前只能通过行内样式&#xff08;style"border-radius: 20px"&#xff09;来实现圆角效果&#xff1a;

pycharm-pyspark 环境安装

1、环境准备&#xff1a;java、scala、pyspark、python-anaconda、pycharm vi ~/.bash_profile export SCALA_HOME/Users/xunyongsun/Documents/scala-2.13.0 export PATH P A T H : PATH: PATH:SCALA_HOME/bin export SPARK_HOME/Users/xunyongsun/Documents/spark-3.5.4-bin…

UnityXR Interaction Toolkit 如何检测HandGestures

前言 随着VR设备的不断发展,从最初的手柄操作,逐渐演变出了手部交互,即头显可以直接识别玩家的手部动作,来完成手柄的交互功能。我们今天就来介绍下如何使用Unity的XR Interaction Toolkit 来检测手势Hand Gesture。 环境配置 1.使用Unity 2021或者更高版本,创建一个项…

thinkphp 5.0 结合redis 做延迟队列,队列无法被消费

目录 一、Linux 环境下 二、如何验证消息队列被正确监听 一、Linux 环境下 项目部署在Linux 环境下&#xff0c;首先找到项目的部署路径&#xff0c;接着输入命令,这个命令是以守护进程方式进行监听你的队列&#xff0c;只要redis 不关闭 就可以一直监听这个队列 nohup php …

E10.【C语言】练习:编写一个猜数字游戏

目录 1.规则 2.准备 3.游戏代码 1.规则 1.程序生成1-100间的随机数 2.用户猜数字 猜对了&#xff1a;游戏结束 猜错了&#xff1a;程序会告知猜大了或猜小了&#xff0c;继续进行游戏&#xff0c;直到猜对 3.游戏可以一直玩除非退出游戏 2.准备 1.框架&#xff1a;循…

【HTML+CSS+JS+VUE】web前端教程-31-css3新特性

圆角 div{width: 100px;height: 100px;background-color: saddlebrown;border-radius: 5px;}阴影 div{width: 200px;height: 100px;background-color: saddlebrown;margin: 0 auto;box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.5);}

【高阶数据结构】位图

位图 一.位图相关面试题二.位图的设计及实现三.C库中的位图bitset四.位图的优缺点五.位图相关考察题目 一.位图相关面试题 问题&#xff1a;给40亿个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&#xff0c;如何快速判断一个数是否在这40亿个数中&#xff08;本…

解决Qt打印中文字符出现乱码

在 Windows 平台上&#xff0c;默认的控制台编码可能不是 UTF-8&#xff0c;这可能会导致中文字符的显示问题。 下面是在 Qt 应用程序中设置中文字体&#xff0c;并确保控制台输出为 UTF-8 编码&#xff1a; 1. Qt 应用程序代码 在 Qt 中&#xff0c;我们可以使用 QApplic…