cesium.js 入门到精通(3)

天空盒子的设置

目前的地球背景 是 地图的cesium

我们想换成自己背景 

 // 设置天空盒
    skyBox: new Cesium.SkyBox({
      sources: {
        positiveX: "./texture/sky/px.jpg",
        negativeX: "./texture/sky/nx.jpg",
        positiveY: "./texture/sky/ny.jpg",
        negativeY: "./texture/sky/py.jpg",
        positiveZ: "./texture/sky/pz.jpg",
        negativeZ: "./texture/sky/nz.jpg",
      },
    }),

 这个背景 在cersium 的术语中 叫做 天空盒 

完整代码

<template>
  <div id="cesiumContainer" ref="cesiumContainer"></div>
</template>

<script setup>
// yarn add cesium
// 将cesium目录下的Build/Cesium4个目录拷贝到public,然后将widgets目录拷贝一份到src下
import * as Cesium from "cesium";
import "./Widgets/widgets.css";
import { onMounted } from "vue";

// 设置cesium token
Cesium.Ion.defaultAccessToken =
  "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhMzNkNTE5Zi1mMjY4LTRiN2QtOTRlZC1lOTUyM2NhNDYzNWYiLCJpZCI6NTU0OTYsImlhdCI6MTYyNTAyNjMyOX0.a2PEM4hQGpeuMfeB9-rPp6_Gkm6O-02Dm4apNbv_Dlk";

// 设置cesium静态资源路径
window.CESIUM_BASE_URL = "/";

// 设置cesium默认视角
Cesium.Camera.DEFAULT_VIEW_RECTANGLE = Cesium.Rectangle.fromDegrees(
  // 西边的经度
  89.5,
  // 南边维度
  20.4,
  // 东边经度
  110.4,
  // 北边维度
  61.2
);

onMounted(() => {
  var viewer = new Cesium.Viewer("cesiumContainer", {
    // 是否显示信息窗口
    infoBox: false,
    // 是否显示查询按钮
    geocoder: false,
    // 不显示home按钮
    homeButton: false,
    // 控制查看器的显示模式
    sceneModePicker: false,
    // 是否显示图层选择
    baseLayerPicker: false,
    // 是否显示帮助按钮
    navigationHelpButton: false,
    // 是否播放动画
    animation: false,
    // 是否显示时间轴
    timeline: false,
    // 是否显示全屏按钮
    fullscreenButton: false,
    // 设置天空盒
    skyBox: new Cesium.SkyBox({
      sources: {
        positiveX: "./texture/sky/px.jpg",
        negativeX: "./texture/sky/nx.jpg",
        positiveY: "./texture/sky/ny.jpg",
        negativeY: "./texture/sky/py.jpg",
        positiveZ: "./texture/sky/pz.jpg",
        negativeZ: "./texture/sky/nz.jpg",
      },
    }),
  });

  // 隐藏logo
  viewer.cesiumWidget.creditContainer.style.display = "none";
});
</script>

<style>
* {
  margin: 0;
  padding: 0;
}
#cesiumContainer {
  width: 100vw;
  height: 100vh;
}
</style>

在我的资源 中有这个天空盒 资源 大家 自行下载

Cesium.js是一个开源的JavaScript库,用于创建动态的、交互式的Web地图应用程序。在Cesium.js中,可以创建场景并进行飞行到路径的操作。 场景是Cesium.js中的核心概念,它代表了在三维空间中展示地球表面或其他地理数据的环境。通过使用Cesium.js提供的函数和方法,可以在场景中添加不同的元素,如地球、建筑物、矢量数据等。 飞行到路径是一种通过设定起始点和目标点,在场景中沿着预定路径进行飞行的交互方式。通过使用Cesium.js的Camera和Viewer对象的函数,可以实现飞行到路径的效果。 首先,需要创建一个场景和视图器对象,以便进行交互。然后,可以使用Viewer对象的flyTo函数,将相机定位到指定的位置和姿态,并以一定的速度飞行到目标位置。可以设置飞行的持续时间,以及其他飞行参数,如仰角、纬度、经度和高度。 通过添加多个飞行点,可以创建一个飞行路径。可以根据需要添加、修改或删除路径上的飞行点,以调整飞行路径。 在飞行过程中,可以根据需要对相机进行调整和控制,以实现所需的视觉效果。可以通过修改相机的姿态、角度和缩放等属性,来调整飞行过程中的视角。 飞行到路径功能可以用于创建各种类型的应用程序,如地理信息系统、虚拟旅游、模拟演示等。通过使用Cesium.js引擎中的场景飞行到路径功能,可以实现交互式、动态的地理数据展示和导航体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值