http://www.cnblogs.com/laixiangran/p/4984522.html

一、Cesium介绍

Cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎。Cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区域,并提供良好的触摸支持,且支持绝大多数的浏览器和mobile。

二、Cesium特点

1、一个API - 三种视图

Cesium支持三维地球(3D),二维地图(2D)以及2.5D哥伦布视图(2.5D)。

    

2、动态地理空间数据的可视化

  • 通过CZML创建数据驱动的时间动态场景。

  • 高分辨率的世界地形可视化。

  • 使用WMS,TMS,openstreetmaps,Bind以及ESRI的标准绘制影像图层。

  • 使用KML,GeoJSON和TopoJSON绘制矢量数据。

  • 使用COLLADA和glTF绘制3D模型。

  • 使用插件扩展核心Cesium。

3、内置的高性能和高精度

  • 优化的WebGL,充分利用硬件渲染图形,使用低级别的几何和渲染程序。
  • 绘制大范围的折线,多边形,广告牌,标签,挤压以及走廊。
  • 控制摄像头和创造飞行路径。
  • 使用动画控件控制动画时间。

三、Cesium示例

以下将示例如何运行一个Cesium应用程序:

1、确保浏览器支持Cesium

验证Cesium在Web浏览器中工作的最简单方法是运行HelloWorld例子,点击这里。如果你看到一些像下面的图片,恭喜你,你运行的该Web浏览器支持运行Cesium,那么你可以跳到下一部分阅读;否则,继续阅读。

Cesium是建立在几个新的HTML5技术之上的,其中最重要的是WebGL。虽然这些新的标准正在迅速成为广泛采用,但一些浏览器和系统需要升级从而支持他们。如果示例应用程序允许失败,你可以尝试以下的建议:

(1)更新您的Web浏览器。大多数的Cesium团队使用Google Chrome,但Firefox,IE 11以及Opera也能运行。如果你正在用这些浏览器,请确保更新它到最新版本。

(2)更新您的显卡驱动从而更好地支持3D。如果你知道你正用的是什么类型的显卡,你可以检查进行更新。三个最流行的显卡提供商是:NvidiaAMD以及 Intel

(3)如果你仍然有问题,尝试访问http://get.webgl.org/,它提供了额外的问题解决建议。你也可以在Cesium论坛寻求帮助。

2、选择编辑器或IDE

如果你已经是一个经验丰富的开发者,你很可能会有一个最喜爱的编辑器和开发环境;例如,大多数的Cesium的团队使用日蚀。如果你刚刚开始,一个伟大的自由和开放源码编辑器,记事本++,你可以从网上下载他们的网站。最终,任何文本编辑器会做的,所以去一个你最舒服。

3、下载Cesium

如果你还没有这样做,点击这个按钮来获取最新的Cesium:下载Cesium
下载完成之后将zip文件解压到你选择的新目录,解压之后文件目录类似于下图。

不能直接双击运行index.html,在实际工作中,它需要运行在Web服务器上。

4、设置Web服务器

为了运行Cesium的应用,我们需要一个本地Web服务器的主机文件。我们所有的例子将使用Node.js。当然你也可以使用自己的服务器,只要把上一节的目录放在服务器根目录下。

设置一个Web服务器通过Node.js是很容易的,只需要3个步骤:

(1)从安装Node.js网站,你可以使用默认安装设置。

(2)打开命令行,然后进入Cesium的根目录,通过npm install下载安装所需要的模块。
最后,在根目录执行node server.js启动Web服务器。

(3)此时您将看到下图:

5、运行Hello world!

现在我们的Cesium已经运行在Web服务器上,我们可以启动Web浏览器并输入网址http://localhost:8080/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各个可视化控件,我们需要引入widgets.css。

@import url(../Build/Cesium/Widgets/widgets.css);

(3)在HTML的body中我们创建一个DIV,用来作为三维地球的容器。

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

(4)最后,在js中初始化CesiumViewer实例。

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

6、接下来干嘛

通过以上的学习,恭喜你,你已经开始写你自己的Cesium应用和网页了。那么根据自己的情况,你可能对其他Cesium教程感兴趣。如果你是一个新手,通过Cesium Sandcastle这个编码的应用,您不仅可以查看几十个实例,也可以查看和编辑自己的源代码,从应用程序中运行查看你的改变。最后,无论你如何学习,参考文献对每个人来说都是一个非常宝贵的资源。

Cesium开发实践汇总  http://www.cnblogs.com/laixiangran/p/4985403.html

cesium随笔 — 获取当前鼠标的经度、纬度、高度 http://www.cnblogs.com/laixiangran/p/4999961.html

cesium随笔 — 隐藏三维场景下方版权信息http://www.cnblogs.com/laixiangran/p/5000028.html

cesium调用天地图服务 http://www.cnblogs.com/laixiangran/p/5049198.html

cesium随笔 — 简单实现获取三维范围(包括相机高度) http://www.cnblogs.com/laixiangran/p/5165674.html

Cesium Language (CZML) 入门1 — CZML Structure(CZML的结构) http://www.cnblogs.com/laixiangran/p/4997971.html

Cesium Language (CZML) 入门2 — CZML Content(CZML的内容) http://www.cnblogs.com/laixiangran/p/4998529.html

Cesium简介 [转]的更多相关文章

  1. Cesium简介以及离线部署运行

    Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...

  2. Cesium简介

    一.Cesium介绍 Cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎.Cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区域,并提供良好的触摸支持 ...

  3. cesium编程入门(一)cesium简介

    cesium编程入门 cesium是什么 Cesium 是一个跨平台.跨浏览器的展示三维地球和地图的 javascript 库. Cesium 使用WebGL 来进行硬件加速图形,使用时不需要任何插件 ...

  4. Cesium 之简介以及离线部署运行篇

    前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. C ...

  5. Cesium基础使用介绍

    前言 最近折腾了一下三维地球,本文简单为大家介绍一款开源的三维地球软件--Cesium,以及如何快速上手Cesium.当然三维地球重要的肯定不是数据显示,这只是数据可视化的一小部分,重要的应该是背后的 ...

  6. Cesium学习2:如何从零开始在Eclipse IDE,Java语言搭建cesium开发环境

    废话不多说,今天就先在Eclipse上搭建Cesium开发环境吧~ 零.Cesium简介 Cesiumjs 是一套javascript库,用来渲染3D地球,2D区域地图,和多种GIS要素.不需要安装任 ...

  7. Cesium学习1:如何在本机的Apache tomcat9.0.8服务器中打开cesium的index.html页面

    Cesium的官方网站:https://cesiumjs.org/ 点击这个按钮来获取最新的Cesium:下载Cesium. 下载完成之后将zip文件解压到你选择的新目录,解压之后文件目录类似于下图. ...

  8. 局域网Cesium离线影像及瓦片影像地图加载【转】

    http://www.mamicode.com/info-detail-2161992.html 1.Cesium简介 优点: cesium展示地图数据效果比较好,解析2D地图各种不同服务类型的数据源 ...

  9. 【转载】Cesium基础使用介绍

    既然给我发了参与方式,不参加似乎有点不给人面子,反正也没多少人看我的博客,那我就试试吧,也欢迎大家自己参与:2017年度全网原创IT博主评选活动投票:http://www.itbang.me/goVo ...

随机推荐

  1. 二叉树查找树中序后继 · Inorder Successor in Binary Search Tree

    [抄题]: 给一个二叉查找树以及一个节点,求该节点的中序遍历后继,如果没有返回null [思维问题]: 不知道分合算法和后序节点有什么关系:直接return表达式就行了,它自己会终止的. [一句话思路 ...

  2. MVC4升级到MVC5未能加载文件或程序集System.Web.WebPages.Razor, Version=3.0.0.0

    首先,我并没有升级他,头一天还是好好的,用的都是2.0.0.0版本的,今天来打开就出现了这个错误: 未能加载文件或程序集“System.Web.WebPages.Razor, Version=3.0. ...

  3. windows,phalcon工具的安装使用

    一.使用工具之前,必须安装phalcon的扩展,也就是php_phalcon.dll动态链接库 phalcon官方地址:https://github.com/phalcon/cphalcon/rele ...

  4. Laravel图表扩展包推荐:Charts

     2016年11月15日 ·  2283次 ·  4条 ·  laravel,package,charts 介绍 在项目开发中,创建图表通常是一件痛苦的事情.因为你必须将数据转换为图表库支持的格式传输 ...

  5. db2 存储过程中的玩意

    aix的top是topas.vmstat也是一个玩意,但是不懂. AND C_DEP_CDE  like  substr(I_C_DPT_CDE,1,2)||'%';--db2中字符串的加法用||这个 ...

  6. jQuery使用大全

    我的程序人生 提供基于Lesktop的IM二次开发,联系QQ:76159179 CnBlogs Home New Post Contact Admin Rss Posts - 476  Article ...

  7. 2018.10.19 bzoj1584: Cleaning Up 打扫卫生(线性dp)

    传送门 dp妙题. 考虑到每个位置分一组才花费nnn的贡献. 因此某一段不同的数的个数不能超过sqrt(n)sqrt(n)sqrt(n),于是对于当前的位置iii我们记pos[j]pos[j]pos[ ...

  8. 2018.09.09 poj2949Word Rings(01分数规划+spfa判环)

    传送门 这题要先巧妙的转化一下. 对于每个字符串,我们把头尾的两个小字符串对应的点连边,边权是这个字符串的长度. 这样最多会出现26*26个点. 这个时候就只用求出边权和跟边数的最大比值了. 这个显然 ...

  9. 2018.08.19 NOIP模拟 change(简单模拟)

    Change 题目背景 SOURCE:NOIP2015-SHY-10 题目描述 Alice 和 Bob 又聚在一起了!他们已经厌倦了取石子游戏,现在他们热衷于切题.于是,Alice 找到了一道题让 B ...

  10. tp5月统计的bug

    月统计求和时 本月第一天没有统计到