Vue.js2+Cesium1.103.0 十四、绘制视锥,并可实时调整视锥姿态

news2024/11/22 23:43:03

Vue.js2+Cesium1.103.0 十四、绘制视锥,并可实时调整视锥姿态

Demo

<template>
  <div
    id="cesium-container"
    style="width: 100%; height: 100%;"
  >
    <div
      class="control"
      style="position: absolute;right: 50px;top: 50px;z-index: 999;width: 200px;color: #fff;"
    >
      <div>
        <span>width</span>
        <el-slider
          v-model="width"
          :min="0"
          :max="1000"
          @input="handleChange"
        />
      </div>
      <div>
        <span>height</span>
        <el-slider
          v-model="height"
          :min="0"
          :max="1000"
          @input="handleChange"
        />
      </div>
      <div>
        <span>fov</span>
        <el-slider
          v-model="fov"
          :min="0"
          :max="179"
          @input="handleChange"
        />
      </div>
      <div>
        <span>near</span>
        <el-slider
          v-model="near"
          :min="0"
          :max="10000"
          @input="handleChange"
        />
      </div>
      <div>
        <span>far</span>
        <el-slider
          v-model="far"
          :min="0"
          :max="near"
          @input="handleChange"
        />
      </div>
      <div>
        <span>heading</span>
        <el-slider
          v-model="heading"
          :min="0"
          :max="360"
          @input="handleChange"
        />
      </div>
      <div>
        <span>pitch</span>
        <el-slider
          v-model="pitch"
          :min="0"
          :max="360"
          @input="handleChange"
        />
      </div>
      <div>
        <span>roll</span>
        <el-slider
          v-model="roll"
          :min="0"
          :max="360"
          @input="handleChange"
        />
      </div>
    </div>
  </div>
</template>

<script>
/* eslint-disable no-undef */
/* eslint-disable new-cap */
import CreateFrustum from './CreateFrustum'
export default {
  name: 'ConeOfVision',
  data() {
    return {
      longitude: 117,
      latitude: 39,
      altitude: 100,
      width: 150,
      height: 100,
      fov: 90.0,
      near: 200.0,
      far: 10.0,
      roll: 0,
      pitch: 0,
      heading: 0,
      frustum: null
    }
  },
  computed: {},
  watch: {},
  mounted() {
    window.$InitMap()

    viewer.camera.flyTo({
      destination: Cesium.Cartesian3.fromDegrees(117, 38.992, 1000.0),
      orientation: {
        heading: Cesium.Math.toRadians(0.0),
        pitch: Cesium.Math.toRadians(-45.0),
        roll: 0.0
      }
    })

    // * 创建视锥体(primitive,根据坐标和 heading,pitch,roll 实时更新椎体姿态)
    this.frustum = new CreateFrustum({
      position: {
        longitude: this.longitude,
        latitude: this.latitude,
        altitude: this.altitude
      },
      fov: this.fov, // 视场的角度(FOV),以弧度表示
      near: this.near, // 近平面的距离
      far: this.far, // 远平面的距离
      heading: this.heading,
      pitch: this.pitch,
      roll: this.roll,
      width: this.width,
      height: this.height
    })

  },
  methods: {
    handleChange() {
      this.frustum.UpdateWidth(this.width)
      this.frustum.UpdateHeight(this.height)
      this.frustum.UpdateHeading(this.heading)
      this.frustum.UpdatePitch(this.pitch)
      this.frustum.UpdateRoll(this.roll)
      this.frustum.UpdateFov(this.fov)
      this.frustum.UpdateNear(this.near)
      this.frustum.UpdateFar(this.far)
    }
  }
}
</script>

<style></style>

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

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

相关文章

世微 降压恒流驱动IC 景观亮化洗墙灯舞台灯汽车灯LED照明 AP5199S

1. 特性 支持高辉调光&#xff0c;调光比 平均电流工作模式 高效率&#xff1a;最高可达 95% 输出电流可调范围 60mA~12A 最大工作频率 1MHz 恒流精度≤3% 支持 PWM 封装&#xff1a;SOP8 2. 应用领域 景观亮化洗墙灯 舞台调光效果灯 汽车照明 3. 说明 AP5199S…

案例精选|聚铭综合日志分析系统提升长沙(中国水务)集团有限公司信息安全审计效率

长沙&#xff08;中国水务&#xff09;集团有限公司是经宁乡县自来水公司改制后成立的城市供水企业&#xff0c;隶属香港联合交易所主板上市公司-中国水务集团有限公司。目前&#xff0c;公司拥有2个水厂5个加压站&#xff0c;日供水能力为28万吨/日&#xff0c;供水范围已从城…

代码随想录二刷 | 数组 | 数组理论基础

代码随想录二刷 &#xff5c; 数组 &#xff5c; 数组理论基础 数组是存放在连续内存空间上的相同类型数据的集合。可以通过下标索引的方式获取到下标对应的数据。 数组的下标都是从0开始的 数组内存空间的地址是连续的 因为数组的在内存空间的地址是连续的&#xff0c;所以我们…

ubuntu下载conda

系统&#xff1a;Ubuntu18.04 &#xff08;1&#xff09;下载安装包 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh 报错错误 403&#xff1a;Forbidden 解决方法 wget -U NoSuchBrowser/1.0 https://mirrors.tuna.tsingh…

关于SPJ表的数据库作业

打字不易&#xff0c;且复制且珍惜 建表 use 库名;create table S( --供应商 SNO char(6) not null, SNAME char(10) not null, STATUS INT, CITY char(10), primary key(SNO));create table P( --零件 PNO char(6) not null, PNAME char(12)not null, COLOR char(4), WEIGHT…

章鱼网络在 NEARCON23 发布 Octopus 2.0

香港时间2023年11月8日12点&#xff0c;章鱼网络举行第15期 Community Call。 我们在10月8日庆祝了章鱼网络主网上线二周年&#xff0c;并参加了激动人心的 Cosmoverse2023 活动。最重要的是&#xff0c;我们在 Octopus 2.0 的开发中取得了重大进展。 11月8日 Community Call …

为什么我学了几天 STM32 感觉一脸茫然?

为什么我学了几天 STM32 感觉一脸茫然&#xff1f; 刷到过b站的zhihui君吧&#xff0c;去看他的回答&#xff0c;他的第一块开发板是arduino&#xff0c;这种级别的人物&#xff0c;在国内也是大神级了&#xff0c;最早学电子方向也是用的arduino。最近很多小伙伴找我&#xff…

storage和正则表达式

一、Storage 1.认识Storage WebStorage主要提供了一种机制&#xff0c;可以让浏览器提供一种比cookie更直观的key、value存储方式&#xff1a; localStorage&#xff1a;本地存储&#xff0c;提供的是一种永久性的存储方法&#xff0c;在关闭掉网页重新打开时&#xff0c;存…

【C++】泛型编程 ⑥ ( 类模板 | 类模板语法 | 代码示例 )

文章目录 一、类模板1、类模板引入2、声明类模板语法3、调用类模板语法 二、代码示例 - 类模板1、代码示例2、执行结果 一、类模板 1、类模板引入 类模板 与 函数模板 的 作用类似 , 当 多个类 功能相同 , 只是数据类型不同 , 此时可以 定义一个类模板 代替 定义多个类 ; 借助…

DRF纯净版项目搭建和配置

一、安装模块和项目 1.安装模块 pip install django pip install djangorestframework pip install django-redis # 按需安装 2.开启项目和api (venv) PS D:\pythonProject\env_api> django-admin startproject drf . (venv) PS D:\pythonProject\env_api> python ma…

Python中表格插件Tabulate的用法

目录 一、引言 二、Tabulate插件安装与导入 三、Tabulate基本用法 1、创建表格&#xff1a; 2. 格式化表格&#xff1a; 3. 表格转置&#xff1a; 4、合并单元格&#xff1a; 5、指定每列的格式&#xff1a; 6、指定每行的格式&#xff1a; 7、使用自定义表格格式&am…

轻量级的资源授权:基于 OAuth 规范

了解 OAuth 感觉 OAuth 太负盛名了&#xff0c;以至于后来在 OIDC 反而难以企及前辈 OAuth。倒是大家谈论比较多的是 JWT&#xff08;例如https://www.cnblogs.com/lyzg/p/6132801.html&#xff09;&#xff0c;——实际谈 JWT 就是在实现 OIDC&#xff0c;反而 OIDC 大家不怎…

数智竞技何以成为“科技+体育”新样本?

文 | 智能相对论 作者 | 青月 “欢迎来到&#xff0c;钢铁突袭。” 三人一组&#xff0c;头戴VR设备&#xff0c;中国香港队和泰国队在数实融合的空间里捉对厮杀&#xff0c;通过互相射击对方能量铠甲获取积分。 虽然双方都展现出了极强的机动性&#xff0c;但显然中国香港队…

适合家电和消费类应用R7F101GEE4CNP、R7F101GEG4CNP、R7F101GEG3CNP、R7F101GEE3CNP新一代RL78通用微控制器

典型应用 • 电机控制 • 电源 • 照明 • 一般用途 • 消费类应用 • 家用电器 • 工业自动化 • 楼宇自动化 器件选型 1、R7F101GEE4CNP&#xff1a;16BIT MCU RL78/G24 64K 40HWQFN -40C 至 125C 2、R7F101GEG4CNP&#xff1a;16BIT MCU RL78/G24 128K 40HWQFN -40C 至 …

信号完整性分析基础知识之有损传输线、上升时间衰减和材料特性(十):有损传输线在时域中的表现

如果高频衰减大于低频衰减&#xff0c;随着信号传输&#xff0c;上升时间将会增加。上升时间通常定义为边沿在最终值的 10% 到 90% 之间过渡的时间。这假设信号的边缘轮廓看起来有点高斯分布&#xff0c;中间是最快的斜率区域。对于该波形&#xff0c;10%−90% 的上升时间是有意…

肖sir__linux讲解vim命令(3.1)

vim 命令 一、 vi/vim 编辑器共分为三种模式&#xff1a; 格式 &#xff1a;vim 文件名 命令模式&#xff08;Command mode&#xff09;&#xff0c;“ESC”或ctrlc键 输入模式&#xff08;Insert mode&#xff09; 底线命令模式&#xff08;Last line mode&#xff09; …

c语言免杀火绒

文章目录 前记c加载器补充知识 前记 pyinstaller pyinstaller目前已经被杀疯了&#xff0c;简单打包一个hello a"hello" print(a)#pyinstaller -F -w b.py -n HipsMain.exe考虑Nuitka pip uninstall nuitka pip install nuitka pip install nuitka1.8.5 这里最新…

oracle21c安装报错【[INS-32014] 指定的 Oracle 基目录位置XXX无效】

一.问题 [INS-32014] 指定的 Oracle 基目录位置XXX无效 二.解决办法 安装包的文件放置不可以在中文字文件夹下面&#xff0c;改为英文【soft】,就可以成功安装完成了&#xff01;

el-table树形数据隐藏子选择框

0 效果 1 代码 type是table数据中用来区分一级和二级的标识 // 隐藏子合同选择框 cellNone(row) {if (row.row.type 3 || row.row.type 4) {return "checkNone";} }, <style lang"scss" scoped>::v-deep {.checkNone .el-checkbox__input {displa…

Python采集智联招聘网站数据实现可视化数据

嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 环境使用: Python Pycharm模块使用: selenium --> pip install selenium3.141.0 time csv驱动下载地址: https://googlechromelabs.github.io/chrome-for-te…