cesium模型加载

news2024/12/29 1:46:30

注意cesium版本: "three": "^0.168.0",

代码:

<template>
  <Layout :bg-color="'black'">
    <template #content>
      <div id="cesiumContainers">
        <div id="cesiumContainer" class="fullSize"></div>
        <div id="loadingOverlay"><h1>Loading...</h1></div>
        <div id="toolbar"></div>
      </div>
    </template>
  </Layout>
</template>
  
  <script setup>
import Layout from "@/layout/layout.vue";
import * as Cesium from "cesium";
import { onMounted, ref, reactive } from "vue";
const { Viewer, Cartesian3, Color, Ion } = Cesium;
let option = {
  infoBox: false,
  animation: false, // 是否显示动画控件
  homeButton: false, // 是否显示home键
  geocoder: false, // 是否显示地名查找控件
  baseLayerPicker: true, // 是否显示图层选择控件
  timeline: false, // 是否显示时间线控件
  fullscreenButton: false, // 是否全屏显示
  infoBox: false, // 是否显示点击要素之后显示的信息
  sceneModePicker: false, // 是否显示投影方式控件  三维/二维
  navigationInstructionsInitiallyVisible: false,
  navigationHelpButton: false, // 是否显示帮助信息控件
  orderIndependentTranslucency: false,
  shouldAnimate: true,
  scene3DOnly: false, // 每个几何实例将只能以3D渲染以节省GPU内存
  selectionIndicator: false, // 取消点击有绿框
  // imageryProvider: false, // 不提供地图
  baseLayerPicker: false, //是否显示图层选择控件
  //   使用Cesium World Terrain图层可以三维展示地形地势、水形数据让模型效果更立体
  terrainProvider: Cesium.Terrain.fromWorldTerrain(),
};

const init = async () => {
  //   Cesium.Ion.defaultAccessToken =
  //     "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiIxOGNkMWFmYS1hMTBkLTQyODItOGYzNi00OTM4ZTkwZTNlZGMiLCJpZCI6MTQ5MzYwLCJpYXQiOjE3Mjg5NzA2MTJ9.4pq1GnZqWPOvw4JiWO8CXJ13GyYlVflECE53m_UqWwA";

  const viewer = new Cesium.Viewer("cesiumContainer", option);

  try {
    const tileset = await Cesium.Cesium3DTileset.fromIonAssetId(40866);
    viewer.scene.primitives.add(tileset);
    viewer.zoomTo(tileset);

    // const response = await axios.get("/assets/json/tileset.json");

    // console.log(response, "res");
    const classificationTilesetUrl = {
      asset: {
        version: "1.0",
        tilesetVersion: "1.0",
      },
      properties: {
        Longitude: {
          minimum: -1.3194245623155147,
          maximum: -1.3194092552469474,
        },
        Latitude: {
          minimum: 0.6988049305192636,
          maximum: 0.6988185175658763,
        },
        Height: {
          minimum: 73.0000006258161,
          maximum: 102.999890661765747,
        },
      },
      geometricError: 1000.0,
      root: {
        boundingVolume: {
          region: [
            -1.3194315762936881, 0.6987998244450816, -1.3194015908860113,
            0.6988235397748883, 73.0000006258161, 102.999890661765747,
          ],
        },
        geometricError: 0,
        refine: "ADD",
        content: {
          uri: "content.b3dm",
        },
      },
    };

    const classificationTileset = await Cesium.Cesium3DTileset.fromUrl(
      classificationTilesetUrl,
      {
        classificationType: Cesium.ClassificationType.CESIUM_3D_TILE,
      }
    );

    classificationTileset.style = new Cesium.Cesium3DTileStyle({
      color: "rgba(255, 0, 0, 0.5)",
    });
    viewer.scene.primitives.add(classificationTileset);

    const nonClassificationTileset = await Cesium.Cesium3DTileset.fromUrl(
      classificationTilesetUrl,
      {
        show: false,
      }
    );

    nonClassificationTileset.style = new Cesium.Cesium3DTileStyle({
      color: "rgba(255, 0, 0, 0.5)",
    });
    viewer.scene.primitives.add(nonClassificationTileset);
  } catch (error) {
    console.log(`Error loading tileset: ${error}`);
  }
};

onMounted(() => {
  init();
});
</script>
  
  <style lang="less" scoped>
@import url("cesium/Build/Cesium/Widgets/widgets.css");

#cesiumContainers {
  width: 100%;
  height: 100%;
  #cesiumContainer {
    width: 100%;
    height: 100%;
  }
}

/* This file is automatically rebuilt by the Cesium build process. */
</style>

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

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

相关文章

【C++】——二叉搜索树

目录 一、前言 二、二叉搜索树 2.1概念 2.2二叉搜索树操作 2.2.1 二叉树的查找 2.2.2 二叉搜索树的插入 2.2.3 二叉搜索树的删除 ​编辑 2.3二叉搜索树的实现 2.3.1查找 2.3.2 插入 2.3.3 删除 2.3.4 打印 2.3.5 拷贝构造和赋值重载 2.3.6 析构函数 2.4 二叉搜索…

智能去毛刺:2D视觉引导机器人如何重塑制造业未来

机器人技术已经深入到各个工业领域中&#xff0c;为制造业带来了前所未有的变革。其中&#xff0c;2D视觉引导机器人技术以其精准、高效的特点&#xff0c;在去毛刺工艺中发挥着越来越重要的作用。本文将为您介绍2D视觉引导机器人技术的基本原理及其在去毛刺工艺中的应用&#…

c++初阶数据结构速成

温馨提示&#xff1a;本篇文章只给大家介绍初阶数据结构的一些常用接口 stl的简单介绍 什么是stl? STL(standard template libaray-标准模板库)&#xff1a;是C标准库的重要组成部分&#xff0c;不仅是一个可复用的 组件库&#xff0c;而且是一个包罗数据结构与算法的软件框…

Redis 哨兵模式下DB库操作审计

Redis Sentinel集群环境 主机版本模式NodeSentinelredis-sentinel-node-06.2.12哨兵MasterYesredis-sentinel-node-16.2.12哨兵SlaveYesredis-sentinel-node-26.2.12哨兵SlaveYes 架构设计 命令行&程序验证 1、在redis-sentinel-node-1上使用redis-cli 连接redis-sentine…

2024台州赛CTFwp

备注&#xff1a; 解题过程中&#xff0c;关键步骤不可省略&#xff0c;不可含糊其辞、一笔带过。解题过程中如是自己编写的脚本&#xff0c;不可省略&#xff0c;不可截图&#xff08;代码字体可以调小&#xff1b;而如果代码太长&#xff0c;则贴关键代码函数&#xff09;。…

开放式蓝牙耳机哪个品牌好用?开放式耳机排行榜测评!

开放式耳机&#xff0c;因其特殊的不入耳佩戴模式&#xff0c;让使用者在享受音乐或者进行通话的过程中&#xff0c;依然可以对外界声音保持敏感。在户外运动场景下&#xff0c;这种特性优势尽显&#xff0c;既保证了耳机佩戴的稳定和舒适&#xff0c;又提高了运动的安全性。为…

Netty结构

Netty结构 引导器Bootstrap举例&#xff1a;一个简单的HTTP服务器服务端启动类服务端业务逻辑处理类 二级目录Channel初始化&#xff08;设置Channel类型&#xff09;注册ChannelHandler结合HTTP请求-响应&#xff0c;分析数据在ChannelPipeline中的流向 设置Channel参数端口绑…

java互联网医院智能导诊系统源码,Uniapp前端开发框架,支持一次编写,多端运行

智慧导诊系统源码&#xff0c;java源码&#xff0c;大屏机自动导诊&#xff0c;互联网医院智能导诊系统源码 老是全身无力&#xff0c;挂什么科&#xff1f; 经常头痛&#xff0c;挂什么科&#xff1f; 总是失眠&#xff0c;又得挂哪个科&#xff1f; 世界上最遥远的距离再加…

初识git · 多人协作

目录 前言&#xff1a; 多人协作一 多人协作二 前言&#xff1a; git从发布以来&#xff0c;强大的功能有版本回退以及分支管理&#xff0c;那么分支管理用来不仅是为了维护master的&#xff0c;更多的是多人协作的一种代表&#xff0c;所以多人协作这一章节&#xff0c;基…

2010年国赛高教杯数学建模C题输油管的布置解题全过程文档及程序

2010年国赛高教杯数学建模 C题 输油管的布置 某油田计划在铁路线一侧建造两家炼油厂&#xff0c;同时在铁路线上增建一个车站&#xff0c;用来运送成品油。由于这种模式具有一定的普遍性&#xff0c;油田设计院希望建立管线建设费用最省的一般数学模型与方法。   1. 针对两炼…

基于SpringBoot农场管理平台【附源码】

基于SpringBoot农场管理平台 效果如下&#xff1a; 系统首页界面 系统注册页面 农业生产资料详细页面 个人中心界面 管理员登录界面 管理员主界面 用户管理界面 资料分类管理界面 方法分类管理界面 计划分类管理界面 农业生产资料管理界面 研究背景 农业是人类社会发展的基石…

实现vlan间的通信

方法一&#xff1a;单臂路由 概述 单臂路由是一种网络配置&#xff0c;它允许在路由器的一个物理接口上通过配置多个子接口来处理不同VLAN的流量&#xff0c;从而实现VLAN间的通信。 原理 路由器重新封装MAC地址&#xff0c;转换Vlan标签 基础模型 1、配置交换机的链…

【openGL学习笔记】----GLFW、GLAD环境配置

glew、glad、freeglut、glfw的区别&#xff1f; glew&#xff08;The OpenGL Extension Wrangler Library&#xff09;是对底层OpenGL接口的封装&#xff0c;可以让你的代码跨平台。glad与glew作用相同&#xff0c;可以看作它的升级版。Freeglut&#xff08;OpenGL Utility To…

H5开发指南|掌握核心技术,玩转私域营销利器

随着互联网技术的不断发展和用户需求的日益增长&#xff0c;H5页面逐渐成为了企业和个人展示信息、吸引用户关注的重要手段。具有跨平台兼容性强、网页链接分享、更新迭代方便快捷、低开发成本、可搜索和优化、数据分析与追踪、灵活性与扩展性以及无需下载安装等特点。不仅可以…

pico+Unity交互开发——触碰抓取

一、VR交互的类型 Hover&#xff08;悬停&#xff09; 定义&#xff1a;发起交互的对象停留在可交互对象的交互区域。例如&#xff0c;当手触摸到物品表面&#xff08;可交互区域&#xff09;时&#xff0c;视为触发了Hover。 Grab&#xff08;抓取&#xff09; 概念&#xff…

Redis 三 Redis分布式锁

Redis 实战应用 文章目录 Redis 实战应用Redis 实现全局唯一IDRedis解决购物秒杀思路超卖问题一人一单集群并发的问题分布式锁Redis分布式锁的实现核心思路实现分布式锁版本一Redis分布式锁误删情况Redis分布式锁原子性问题 Redis 实现全局唯一ID 全局ID生成器&#xff0c;是一…

【排序】——1.冒泡排序法(含优化)

冒泡排序 1.原理 左边大于右边交换一趟排下来最大的交换到右边来(接下来所以文章用升序举例) 从左到右&#xff0c;相邻元素进行比较。 每次比较一轮&#xff0c;就会找到序列中最大的一个&#xff08;最小的一个——降序&#xff09;。这个数就会从序列的最右边冒出来。 以…

NetSarang Xshell v8.0060 Linux终端管理器个人免费版

NetSarang Xshell 官方个人完全免费中文版&#xff0c;Xshell特别版&#xff0c;Xshell 个人完全免费&#xff0c;Xshell 是一款最好用的Linux远程连接工具&#xff0c;免费SSH客户端、主机服务器远程管理客户端 。Xshell&#xff0c;轻松管理远程服务器&#xff0c;会话管理器…

16进制数据如何得到奇偶校验位??

&#x1f3c6;本文收录于《全栈Bug调优(实战版)》专栏&#xff0c;主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&am…