本教程将获得所有技能水平的开发人员和他们的第一个铯应用程序运行。

验证Cesium在您的Web浏览器中工作的最简单的方法是单击此处运行Hello World示例 (打开一个新窗口)。如果你看到像下面的图像,恭喜你的系统可以运行铯,你可以安全地跳到下一部分; 否则,继续阅读。

Cesium是基于几种新的HTML5技术构建的,其中最重要的是WebGL。即使这些新标准很快被广泛采用,一些浏览器和系统需要更新以支持它们。如果示例应用程序不适合您,请尝试以下几种方法。

  1. 更新您的网络浏览器。大多数Cesium团队使用Google Chrome,但Firefox,Internet Explorer 11和Opera也可以使用。如果您已经在使用上述其中一种浏览器,请确保更新到最新版本。
  2. 更新您的显卡驱动程序以更好地支持3D。如果您知道您的视频卡类型,您可以检查供应商网站的更新。三个最受欢迎的是:NvidiaAMD英特尔
  3. 如果您仍遇到问题,请尝试访问http://get.webgl.org/,其中提供了其他问题排查建议。您也可以在Cesium论坛上寻求帮助。

选择编辑器或IDE

如果你已经是一个经验丰富的开发人员,你很可能有一个最喜欢的编辑器或开发环境; 例如,大多数铯团队使用Eclipse。如果你刚刚开始,一个伟大的免费和开源的编辑器是Notepad ++,你可以从他们的网站下载。最终任何文本编辑器都会做,所以去与你最舒适的。

下载铯释放

假设你还没有这样做,点击这个按钮抓住最新的铯释放: Cesium-1.30.zip

下载后,将zip文件解压到您选择的新目录中,我将在整个教程中将此文件称为Cesium root目录。内容应该看起来像下面。

它可能是诱人的双击index.html,但我们只会有失望的欢迎。为了使应用程序实际工作,它需要在Web服务器中运行。

为了运行Cesium应用程序,我们需要一个本地Web服务器来托管我们的文件。我们将使用Node.js来完成这个和其他教程。如果你已经有一个你想要使用的Web服务器,这也很好,只要确保托管我们在上一节中创建的根目录。铯没有服务器要求; 它完全是客户端。这意味着任何可以托管静态内容的Web服务器也可以托管Cesium。

使用Node.js设置Web服务器很容易,只需要3个步骤。1.从其网站安装Node.js ,可以使用默认安装设置。2.在Cesium根目录中打开命令shell,然后通过执行下载/安装所需的模块npm install。这将在根目录中创建一个“node_modules”目录。3.最后,通过node server.js在根目录中执行启动Web服务器。你应该看到类似下面的东西

你好(再次)世界!

现在我们已经启动并运行了一个Web服务器,我们可以启动浏览器并导航到http:// localhost:8080 / Apps / HelloWorld.html。这是我们在教程开始时用来测试WebGL的Hello World应用程序,但现在它运行在您自己的系统而不是Cesium网站上。如果我们HelloWorld.html在编辑器中打开,我们会找到以下简单的应用程序。

<!DOCTYPE html>
<html lang="en">
<head>
<!-- Use correct character set. -->
<meta charset="utf-8">
<!-- Tell IE to use the latest, best version. -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- Make the application on mobile take up the full browser screen and disable user scaling. -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
<title>Hello World!</title>
<script src="../Build/Cesium/Cesium.js"></script>
<style>
@import url(../Build/Cesium/Widgets/widgets.css);
html, body, #cesiumContainer {
width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;
}
</style>
</head>
<body>
<div id="cesiumContainer"></div>
<script>
var viewer = new Cesium.Viewer('cesiumContainer');
</script>
</body>
</html>
 

这些是需要添加铯到应用程序的四行:

  1. 第一步是Cesium.js在脚本标记中包含。这定义了Cesium对象,其中包含我们需要的一切。

     <script src="../Build/Cesium/Cesium.js"></script>
  2. 为了使用Cesium Viewer小部件,我们需要包括它的CSS。

     @import url(../Build/Cesium/Widgets/widgets.css);
  3. 在HTML体中,我们创建一个div,供查看器生活。

     <div id="cesiumContainer"></div>
  4. 最后,我们创建一个viewer的实例。

     var viewer = new Cesium.Viewer('cesiumContainer');

恭喜,您已经启动并运行Cesium并准备开始编写自己的铯应用程序和网页。根据学习者的类型,您可能有兴趣查看其他教程,介绍主要的铯功能。如果你是一个tinkerer,那么Cesium Sandcastle是一个现场编码应用程序,它将允许你不仅查看几十个示例,而且查看和编辑它们的源代码,从应用程序中更新更改。最后,无论您如何学习,参考文档包含API的详细信息,是每个人的宝贵资源。

cesium入门1的更多相关文章

  1. cesium 入门开发系列地图鹰眼功能(附源码下载)

    前言 cesium 入门开发系列环境知识点了解:cesium api文档介绍,详细介绍 cesium 每个类的函数以及属性等等cesium 在线例子 内容概览 cesium 结合 leaflet 实现 ...

  2. cesium 入门开发系列矢量瓦片加载展示(附源码下载)

    前言 cesium 入门开发系列环境知识点了解:cesium api文档介绍,详细介绍 cesium 每个类的函数以及属性等等cesium 在线例子 内容概览 cesium 实现矢量瓦片加载效果 源代 ...

  3. cesium入门示例-测量工具

    作为cesium入门示例级别的最后一篇,参考cesium-长度测量和面积测量实现测量工具封装,修改了其中的距离测量函数,计算贴地距离,并对事件内部处理做了调整.包括贴地距离测量.面积测量.结果清除. ...

  4. cesium入门示例-矢量化单体分类

    实现楼层的分层选择和属性信息展示,该功能基于大雁塔倾斜数据实现单体化分类显示. 数据准备: 1.大雁塔倾斜数据,已转换为3dTiles,参考cesium入门示例-3dTiles加载的第2节osgb数据 ...

  5. Cesium入门13 - Extras - 附加内容

    Cesium入门13 - Extras - 附加内容 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 剩下的代码 ...

  6. Cesium入门12 - Camera Modes - 相机模式

    Cesium入门12 - Camera Modes - 相机模式 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ ...

  7. Cesium入门11 - Interactivity - 交互性

    Cesium入门11 - Interactivity - 交互性 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ ...

  8. Cesium入门9 - Loading and Styling Entities - 加载和样式化实体

    Cesium入门9 - Loading and Styling Entities - 加载和样式化实体 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://c ...

  9. Cesium入门10 - 3D Tiles

    Cesium入门10 - 3D Tiles Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 我们团队有时把Ces ...

  10. Cesium入门8 - Configuring the Scene - 配置视窗

    Cesium入门8 - Configuring the Scene - 配置视窗 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coini ...

随机推荐

  1. 黑客编程教程(十五)HTTP代理

    #include <stdio.h> #include <winsock2.h> #define MAXBUFLEN 20480 #define HTTPADDLEN 50 # ...

  2. Linux中查看CPU信息【转】

    [转自]:http://blog.chinaunix.net/uid-23622436-id-3311579.html cat /proc/cpuinfo中的信息 processor       逻辑 ...

  3. python 高阶函数 map lambda filter等

    map 描述 map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表. ...

  4. iOS UIWebView与WKWebView使用详解

    一.整体介绍 UIWebView自iOS2就有,WKWebView从iOS8才有,毫无疑问WKWebView将逐步取代笨重的UIWebView.通过简单的测试即可发现UIWebView占用过多内存,且 ...

  5. Java项目中如何扩展第三方jar包中的类?

    有些时候你对第三方得到jar包中的类并不是很满意,想根据实际情况做一些扩展.如果说第三方的jar包已经提供了一些可扩展的类,比如提供了Interceptor,Filter或者其他的类,那么使用原生的比 ...

  6. C语言 · 上帝造题五分钟

    算法提高 上帝造题五分钟   时间限制:1.0s   内存限制:256.0MB      问题描述 第一分钟,上帝说:要有题.于是就有了L,Y,M,C 第二分钟,LYC说:要有向量.于是就有了长度为n ...

  7. 用JS的正则表达式如何判断输入框内为中文或者是英文

    1.只能输入数字和英文的: <input onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clip ...

  8. c#利用反射Assembly 对类和成员属性进行操作

    protected static void test() { //获取程序集 Assembly assembly = System.Reflection.Assembly.GetExecutingAs ...

  9. sizeof数据对齐问题

    #include <iostream> using namespace std; struct A1 { int a; static int b; }; struct A2 { int a ...

  10. 内核模块module传参

    linux 2.6允许用户insmod的时候往内核模块里面传递参数,它主要使用module_param宏定义来实现这一功能. 参数应用 module_param(name, type, perm); ...