WinCE下基于ArcGIS Mobile实现的嵌入式地图
3.4 用户图层符号标绘的实现
军事上的态势标绘常常需要在地图图层之上叠加各种军标符号,比较简单的方法是响应Map控件的Paint事件。Display对象在Map图层之上显示,当所有的图层绘制完毕后,重绘Display之前会触发Paint事件,此时可以使用Display对象绘制图形、文本和图像。需要说明的是,Display对象绘制的内容不可以保持,用户应注意重绘。调用Display对象绘制一个圆点的代码如下:
private void map1_Paint(object sender,
MapPaintEventArgs e)
{
e.Display.DrawPoint(
new Pen(Color.Blue),
new SolidBrush(Color.Red), 3,
map1.ToMap(100, 100));
}
另一种绘制用户符号的方法是借助绘图图层(graphic layers),Map控件的MapGraphicLayers属性表示绘图图层的集合。地图中包括地理图层(geographic layers)、注解图层(annotation layers)和绘图图层(graphic layers)三类图层。前两类图层的数据都由数据源读取,绘图图层则由用户控制,可以在地理图层、注解图层之上显示额外的信息。其使用方法是:首先为Map控件的MapGraphicLayers属性添加MapGraphicLayer对象或其派生对象的实例,然后重载该实例的Draw()方法。这样当Map重绘时,就会通过Draw()方法完成用户符号的绘制。
3.5 GPS定位功能的实现
ArcGIS Mobile提供了3个GPS相关的控件对GPS进行支持:(1)FileGpsConnection控件:提供文件GPS连接,它可以从一个包含GPS数据的文本文件中,模拟一个GPS连接,这样在调试中会非常方便;(2)Seria1P0rtGpsConnection控件:提供串口GPS连接,主要用在实际应用中;(3)GpsDisplay和上述两种GpsConnection联动,实现GPS信息在地图上的表现。
在没有GPS设备的时候,可以使用FileGpsConnection进行调试。FileGpsConnection的原理就是从一个包含GPS数据的文本文件,模拟GPS连接。将FileGpsConnection对象的FileName属性指定为这个GPS数据文件,然后调用Open和Close方法就可以打开或关闭GPS连接。每次GPS位置点改变时,都会触发GpsChanged事件,在此事件中,可以更新地图的位置。
3.6 应用程序的部署
在部署应用程序之前要在移动设备上安装一些必要的支持文件,一个是.NET CF运行,另一个是ArcGISMobile.CAB和AGMRuntime.CAB,通过ActiveSync把它们拷贝到移动设备并运行;然后把项目生成的可执行文件拷贝到移动设备上,即可以运行创建的应用程序。
如果在VS 2005环境下调试应用程序,应用程序会自动部署到目标设备上。
本文介绍了使用ArcGIS Mobile开发嵌入式GIS应用的基本方法,这些方法已经在工程实践中得到了应用。本文的主要目标是实现态势、军标在移动设备上的显示,ArcGIS Mobile作为一款专业的移动GIS平台,这些功能只是其中一小部分。ArcGIS Mobile的进一步开发,例如数据的现地编辑、数据回传等应结合ArcGIS Server来实现。
参考文献
[1] 陈敦根,蒋浩宇,范跃祖.嵌入式GIS软件ArcPad的二次开发技术[J].嵌人式软件应用,2006(22):37-39.
[2] ESRI.ArcGIS desktop help[CP/DK].2008.
[3] 贺军政,毛奎中,林均玲.基于移动GIS的测绘系统设计与实现[J].测绘工程,2010(8):39-42.
[4] 吴泳锋.使用ArcGIS Mobile SDK 9.3开发移动设备应用[EB/OL].http://www.docin.com/p-20680 8084.html.2011-08-01.
[5] 朱磊,陈鹏,何兵,等.基于ArcGIS Mobile的移动地理信息系统的关键技术[J].铁道勘察,2009(12):58-54.
嵌入式 地图 实现 Mobile 基于 ArcGIS WinCE 相关文章:
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)
- 嵌入式系统实时性的问题(06-21)
- 嵌入式实时系统中的优先级反转问题(06-10)
- 嵌入式Linux系统中MMC卡驱动管理技术研究(06-10)
- FPGA的DSP性能揭秘(06-16)