CesiumJSQuickstart_译

2023-11-02

CesiumJSQuickstart_译

这是一个用Cesium使用真实世界数据建立3D应用的快速开始。你会学到怎样像这样在网页设置一个Cesium应用:
省略

步骤1:创建一个账号获取一个令牌
Cesium ion是一个流送和管理3D内容的开放平台。
为你应用的Cesium ion免费账号的全球卫星影像和真实3D内容Sign up
一旦你登录:
1)到你的Access Tokens页。
2)留意近默认令牌的复制按钮。我们将在接下来使用这个令牌。
在这里插入图片描述

步骤2:设置CesiumJS客户端
CesiumJS是一个开源的JavaScript引擎。我们使用它可视化我们为您从Cesium ion加载的数据。
这个向导设置CesiumJS包含两种方法:
1)从CDN输入
2)用NPM安装

从CDN输入
以下是一个完全的将会加载需要的JavaScript和CSS文件并初始化圣佛朗西斯科场景的HTML页面。如果你没有一个开发环境的,你可以创建一个包含这个HTML的文件,在浏览器中看它。
为方便,我们已经在以下代码段包含默认的从你的账号接入的令牌。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <!-- Include the CesiumJS JavaScript and CSS files -->
  <script src="https://cesium.com/downloads/cesiumjs/releases/1.83/Build/Cesium/Cesium.js"></script>
  <link href="https://cesium.com/downloads/cesiumjs/releases/1.83/Build/Cesium/Widgets/widgets.css" rel="stylesheet">
</head>
<body>
  <div id="cesiumContainer"></div>
  <script>
    // Your access token can be found at: https://cesium.com/ion/tokens.
    // This is the default access token from your ion account

    Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJmOGIyMjFmYS1hOTdhLTRkMjMtYmQzNC1hYTExYWQ5NDI4MGMiLCJpZCI6MjkzMjYsInNjb3BlcyI6WyJsZ24iLCJwciIsImFjdyIsImFzbCIsImFzciIsImFzdyIsImFzcyIsImdjIiwibHIiLCJsdyIsInRyIiwidHciLCJ1c2ciXSwiaWF0IjoxNjI1OTgwNDc5LCJleHAiOjE2MjY1ODUyNzl9.ZEkneRG77Nt-7bFnfj14aT-AcrseUR-Nshy9SNjyuHI';

    // Initialize the Cesium Viewer in the HTML element with the `cesiumContainer` ID.
    const viewer = new Cesium.Viewer('cesiumContainer', {
      terrainProvider: Cesium.createWorldTerrain()
    });    
    // Add Cesium OSM Buildings, a global 3D buildings layer.
    const buildingTileset = viewer.scene.primitives.add(Cesium.createOsmBuildings());   
    // Fly the camera to San Francisco at the given longitude, latitude, and height.
    viewer.camera.flyTo({
      destination : Cesium.Cartesian3.fromDegrees(-122.4175, 37.655, 400),
      orientation : {
        heading : Cesium.Math.toRadians(0.0),
        pitch : Cesium.Math.toRadians(-15.0),
      }
    });
  </script>
 </div>
</body>
</html>

!)Sandcastle中的代码略有不同,因为Sandcastle不需要你的令牌进行身份验证,而且它会自动创建高级HTML标记。

用NPM安装
如果你正在使用像是Webpack、Parcel、Rollup模块包创建你的应用,你可以安装CesiumJS通过运行:

npm install cesium

以下的代码加载需要JavaScript和CSS文件。
为方便,我们已经在以下代码段包含默认的从你的账号接入的令牌。

// The URL on your server where CesiumJS's static files are hosted.
window.CESIUM_BASE_URL = '/';

import * as Cesium from 'cesium';
import "cesium/Build/Cesium/Widgets/widgets.css";

// Your access token can be found at: https://cesium.com/ion/tokens.
// This is the default access token from your ion account

Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJmOGIyMjFmYS1hOTdhLTRkMjMtYmQzNC1hYTExYWQ5NDI4MGMiLCJpZCI6MjkzMjYsInNjb3BlcyI6WyJsZ24iLCJwciIsImFjdyIsImFzbCIsImFzciIsImFzdyIsImFzcyIsImdjIiwibHIiLCJsdyIsInRyIiwidHciLCJ1c2ciXSwiaWF0IjoxNjI1OTgwNDc5LCJleHAiOjE2MjY1ODUyNzl9.ZEkneRG77Nt-7bFnfj14aT-AcrseUR-Nshy9SNjyuHI';

// Initialize the Cesium Viewer in the HTML element with the "cesiumContainer" ID.
const viewer = new Cesium.Viewer('cesiumContainer', {
  terrainProvider: Cesium.createWorldTerrain()
});    
// Add Cesium OSM Buildings, a global 3D buildings layer.
const buildingTileset = viewer.scene.primitives.add(Cesium.createOsmBuildings());   
// Fly the camera to San Francisco at the given longitude, latitude, and height.
viewer.camera.flyTo({
  destination : Cesium.Cartesian3.fromDegrees(-122.4175, 37.655, 400),
  orientation : {
    heading : Cesium.Math.toRadians(0.0),
    pitch : Cesium.Math.toRadians(-15.0),
  }
});

配置CESIUM_BASE_URL
CesiumJS需要在你的服务器上有一些静态文件,像网上工作和SVG图标。复制以下四个目录并让其作为静态文件服务配置你的模块包:
1)node_modules/cesium/Build/Cesium/Workers
2)node_modules/cesium/Build/Cesium/ThirdParty
3)node_modules/cesium/Build/Cesium/Assets
4)node_modules/cesium/Build/Cesium/Widgets
window.CESIUM_BASE_URL全局变量必须在CesiumJS输入前设置。必须指出服务这四个目录URL:

window.CESIUM_BASE_URL = '/static/Cesium/';

Cesium Webpack Example的完整Webpack配置。

下步:
既然你已经设置了你的Cesium应用,这儿有整个世界探索!看下你可以用这些教程创建什么:
Build a Flight Tracker:用由FlightRadar24收集的雷达数据可视化一个从圣佛朗西斯科到哥本哈根的真实航行。
Visualize a Proposed Building:用你的模型在真实世界替换一个建筑看看怎样改变它的视角。

PS:
原文地址:https://cesium.com/learn/cesiumjs-learn/cesiumjs-quickstart/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CesiumJSQuickstart_译 的相关文章

随机推荐