在现实增强应用Layar中显示ArcGIS数据(Ⅰ)

本文介绍了如何结合现实增强技术AR和GIS,利用Layar应用显示ArcGIS数据。首先阐述了AR的基本概念和技术特点,接着详细讲解了Layar应用的工作原理和流程。最后,探讨了在Layar中实现显示ArcGIS数据的原理,通过创建Layer并适配ArcGIS Server REST服务,将数据转换为Layar可读格式。
摘要由CSDN通过智能技术生成

1、现实增强的概念


现实增强(AugmentedReality,简称AR),是在虚拟现实基础上发展起来的新技术。AR通过计算机系统提供的信息增加用户对现实世界感知,将虚拟信息应用到真实世界,并将计算机生成的虚拟物体、场景或系统提示信息叠加到真实场景中,从而实现对现实的丰富和增强。

AR技术具有三个特点:

虚拟与现实相结合;

即时互动;

三维场景;

AR技术在初期并不被大众熟知。移动智能设备的快速发展和普及,使AR技术走出实验室,并逐渐走入大众视野。现在的移动智能设备具备足够的性能,支持AR所需要的计算能力,本文介绍的内容就是基于一款手机AR应用实现的。目前,AR技术在很多行业都得到了应用,比如医疗、景观、军事、游戏、机械维修等等。而GIS行业,AR与GIS的结合还处于起步阶段。


2、增强现实应用Layar


Layar(http://www.layar.com)是一款手机上的AR应用,支持Android和IOS。Layar允许内容提供者(Content Provider,CP)发布图层(Layer),Layar可以加载指定的Layer,获取CP提供的信息。

CP在Layar网站注册账户,创建Layer。Layar提供了一套Layer API标准,CP要实现Layer,必须按照这个标准规定的数据格式接收参数、返回数据。

Layar通过移动设备的GPS获取位置信息,摄像头获取当前场景,传感器获得方位信息。有了这些信息,Layar就可以向CP服务器的某一图层(Layer)请求数据。获得数据后,Layar通过现实增强技术把这些数据在三维场景里面渲染出来。

Layar的数据访问流程如下图所示:

①  手机上的Layar应用打开指定图层,获取GPS信息,向Layar服务器发送请求;

②   Layar服务器根据图层(Layer)信息,向对应的CP服务器发送请求;

③   CP服务器查询符合条件的数据,按照Layar API标准格式打包数据,并返回给Layar服务器;

④   Layar服务器把数据返回给Layar应用,Layar在手机端对数据进行显示。


3、用Layar显示ArcGIS数据


3.1、实现原理


用Layar来显示ArcGIS数据,其实很简单。只需要把提供服务的ArcGIS Server添加到第2节中的数据访问流程图中,如下图所示。CP Layers不直接提供数据,而是①向ArcGIS Server的REST服务发送请求,②得到数据后按照Layar API标准的格式打包数据,然后返回给Layar服务器。在这个过程中,CP服务器相当于Adapter(适配器)的角色,将ArcGIS Server REST服务提供的数据,转换成Layar格式的数据。


Esri发布了 GeoServices RESTSpecification(http://www.esri.com/industries/landing-pages/geoservices/geoservices.html),参考这一标准,可以编写代码向ArcGIS REST Service发送请求、解析返回的结果。其实,ArcGIS的各种客户端API(Web APIs如Flex、Silverlight、JavaScript,Mobile APIs如Android、IOS、Windows Phone,Runtime APIs)都是参照这个标准实现的。


3.2、登录Layar


首先要在Layar网站注册账户,此处省略注册过程。注册成功后登陆,登录页面如下图所示。


登陆成功页面如下图所示。

点击页面上方的My Layers,进入Layers页面,如下图所示。为配合用户大会demo演示,已经建了一个名为Esri ChinaUC 2012 (uc2012layer)的图层。



3.3、创建Layer


点击上图中“Createa new layer”按钮来创建一个新的Layer,在创建Layer窗口中填写Layer信息,如下图所示。需要说明的是,APIendpoint URL必须是一个外网可访问的地址,也就是CPServer上的一个地址,这个地址是Layer的具体实现,Layar Server会访问这个地址来获取数据。


Layer创建成功后,会打开该Layer的信息页面,如下图所示。在信息页面下还可以对Layer的诸多信息进行设置,比如Layer的图标、类型、URL等等。大家可以做些尝试,在此不再赘述。


需要说明的是,此处创建的Layer只是概念上的Layer,还不能提供数据,因为CP端还没有实现。下一小节将介绍如何实现CP服务端的内容。



在现实增强应用Layar中显示ArcGIS数据(Ⅱ)  http://blog.csdn.net/arcgis_mobile/article/details/8063735


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值