基于J2ME与SVG的手机地理信息系统研究与应用.pdf_第1页
基于J2ME与SVG的手机地理信息系统研究与应用.pdf_第2页
基于J2ME与SVG的手机地理信息系统研究与应用.pdf_第3页
基于J2ME与SVG的手机地理信息系统研究与应用.pdf_第4页
基于J2ME与SVG的手机地理信息系统研究与应用.pdf_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于J2ME与SVG的手机地理信息系统研究与应用 谢义林 1 汪云甲 2 1 同济大学 测量与国土信息工程系 上海 200092 2 中国矿业大学 环境与测绘学院 江苏 徐州 211008 3 摘要 随着GIS技术的发展以及对移动定位服务的需求 基于J2ME的手机地理信息系统成 为研究热点之一 本文介绍了无线通讯和数据传输的各种方式 根据手机存储空间小 运算 慢的特点 讨论和比较了手机地理信息系统的开发模式以及地图数据传输等相关技术 作者 通过对GIS数据交换格式和SVG数据格式的分析 得到了利用SVG实现手机地理信息系统 的方法和步骤 最后 利用中国矿业大学校园数据和相关开发工具 给出了一个具体实例 同时也验证了该方法的可行性 关 键 词 J2ME SVG 地理信息系统 手机 中图分类号 P 283 文献标识码 A 文章编号 1673 9798 2008 04 0424 05 Research and application of mobile GIS with J2ME and SVG XIE Yi lin 1 WANG Yun jia 2 1 Deparentment of Surveying and Geo Infomatics TongjiUniversity Shanghai 200092 China 2 School of Environment SVG GIS cell phone 0 引 言 在如今的生活中 个性化的智能信息用品已经是必需品 这些用品包括移动电话 机顶盒 双向 寻呼机 智能卡和掌上电脑等 在几年前开发人员很难想象能够用一种开发方式在这些设备上开发兼 容程序 而现在借助J2ME的能力这些都成为可能 1 随着手机的普及以及相关的WAP及GPRS等 无线网络服务的成熟 在各种手机上运行 在线 式的手机地理信息系统已经成为研究热点 手机地理信息系统属于嵌入式范畴 与桌面地理信息系统有很大区别 首先由于手机内存及显示 屏幕的限制 程序要尽量短小简洁 其次 用户不希望长时间等待或者 死机 发生 程序要有高 速度及高稳定性 本文在对J2ME的结构和功能做简单介绍的基础上 详细阐述了基于J2ME的手机 第27卷第4期 2008年8月 河南理工大学学报 自然科学版 JOURNAL OF HENAN POLYTECHN IC UN I VERSITY NATURAL SCIENCE Vol 27 No 4 Aug 2008 3 收稿日期 2008 05 28 基金项目 全国优秀博士学位论文作者专项资金资助项目 200348 作者简介 谢义林 1983 男 江苏仪征人 从事测量数据处理 虚拟现实等方面的研究 E mail xieyilin 1983 163 com 地理信息系统开发模式 地图数据组织和传输以及SVG矢量格式的特点 最后 利用中国矿业大学 校园SVG数据 给出一个基于J2ME的手机地理信息系统实例 1 J2ME及相关技术简介 SUN公司将J2ME Java 2 Micro Edition Java 2微型版 定义为 一种以广泛的消费性产品为目 标的 高度优化的Java运行时环境 2 自从1999年6月在JavaOne Developer Conference上声名之 后 J2ME进入了小型设备开发的行列 虽然这些设备与PC或是服务器设备相比没有统一的硬件标 准 外观与操作方式 但只要遵循J2ME规范开发的Java程序都可以运行在这些小型设备上 J2ME 不是一个单独的技术规范 而是一系列技术规范的总称 这些规范定义了Java技术在资源限制设备 中的表现形式 J2ME在适用于这些设备的同时也保留了Java的传统特性 即任何时间和任何地点的 代码具有可移植性 部署灵活性 安全的网络传输性以及代码稳定性 J2ME将这些小型嵌入式设备进行分类 将一些共性提取出来形成适合于某个范畴中设备可用的 规范 也称为配制 3 配制是对硬件的描述 通过定义配 制的方法就能够清楚地描述硬件功能 对于手机来说 J2ME使用连接限制设备配制CLDC Connected Limited Device Configuration 和简表 Profile 定制Java运行时 环境JRE Java Runti me Environment 如图1所示 一 个完整的JRE是由配制和简表组成 配制决定了所使用 的Java虚拟机JVM Java VirtualMachine 而简表通过 定义特定的类来为应用程序提供功能上的支持 一个简表 定义了设备所提供的API集合 移动信息设备简表M I DP Mobile Infor mation Devices Profile 是简表的一种 定义 了移动信息设备的类型和提供相关的API Application Programming Interface 集合 M I DP所定义的功能更加面向用户 且比CLDC更高级 目前M I DP有 1 0和2 0版本 目前市面上的大多数智能手机都能够支持M I DP 1 0 而且已经开始出现支持M I DP 2 0的手机 例如Nokia的S90系列 SonyEricsson的P900系列 2 移动通讯和数据传输技术 2 1 移动通讯技术 目前移动通讯技术主要有GS M GPRS和CDMA等 4 其中GS M应用最为广泛 GS M全名为 Global System forMobile Communications 中文为全球移动通讯 是一种起源于欧洲的移动通信技术标 准 是第2代移动通信技术 其开发目的是让全球各地可以共同使用一个移动电话网络标准 GS M 系统由终端子系统 MS 基站子系统 BSS 和网络子系统 NSS 组成 GPRS General Packet Radio Service 是通用分组无线业务的简称 是一种以全球手机系统 GS M 为基础的数据传输技 术 它突破了GS M网只能提供电路交换的思维方式 只通过增加相应的功能实体和对现有的基站系 统进行部分改造来实现分组交换 GPRS和以往连续在频道传输的方式不同 是以封包 Packet 形 式来传输 因此使用者所负担的费用是以其传输资料单位计算 并非使用其整个频道 理论上较为便 宜 CDMA Code DivisionMultiple Access 是码多分址的英文缩写 是在扩频通信技术上发展起来的 一种崭新而成熟的无线通信技术 CDMA技术的原理是基于扩频技术 将需传送的具有一定信号带宽 信息数据 用一个带宽远大于信号带宽的高速伪随机码进行调制 使原数据信号的带宽被扩展 再经 载波调制并发送出去 接收端使用完全相同的伪随机码 与接收的带宽信号作相关处理 把宽带信号 换成原信息数据的窄带信号即解扩 以实现信息通信 2 2 移动数据传输技术 目前 在国内应用较为广泛的无线数据传输技术主要有S MS Short Message System 和WAP W irelessApplication Protocol 2种 S MS通过数字控制信道传递 许多移动站公用数字控制信道 524 第4期 谢义林等 基于J2ME与SVG的手机地理信息系统研究与应用 为了避免争用造成的延迟过长和较重负荷 单条信息的长度在点对点通信中一般限制在140个字符 WAP是一种向移动终端提供互联网内容和先进增值服务的全球统一的开放标准 是简化了的无线In2 ternet协议 具有接入时延短 速率高 永远在线和切换方便等优点 3 基于J2ME的手机地理信息系统 5 6 移动设备通过无线连接网络 如中国移动GPRS或中国联通CDMA等 根据通讯协议 向Web 服务器发送请求 服务器根据请求给出正确的响应 3 1 体系结构模型 常用的体系结构有客户机 服务器结构 C S 和浏览器 服务器 B S 结构 7 8 C S结构特 点是 肥客户机 运行速度快 但显然不适合移动通讯 一方面手机内存非常有限和宝贵 不适合 有大的应用程序存在 另一方面客户机 服务器间的大量数据通讯也不适合远程连接 使其只能在局 域网中应用 B S结构特点是用户使用方便 客户机不存在安装和维护问题 而软件开发和维护的工 作转移到服务器端了 缺点是服务器端程序编写复杂 不能充分利用客户机资源 在手机地理信息系 统中更是如此 如简单的放大地图操作 通过向服务器发送请求来操作 反应速度是不能接受的 将一些简单功能的实现放在客户机上 如放大 缩小 平移等 将一些复杂的操作放在服务器 上 如图形分割 查询 空间分析等 这既有利于充分利用手机有限的资源 又能使反应速度加快 从严格意义上来说 这样的方式属于C S模式 不过业内人员称这种方式为两层半结构 3 2 地图数据传输及其可视化 地图数据的传输可以有2种方式 一种是通过手机数据线与PC机直接进行数据通讯 另一种是 利用无线传输网络 通 过HTTP协议与服务器 进 行 通 讯 在M I DP v1 0中定义了对HTTP 的支持 在M I DP v2 0 中还 增 加 了 对 串 口 UDP套接字和TCP套 接字的支持 9 10 服 务器通讯简要代码如下 通讯过程见图2 1 使用Connector类打开一个到服务器的连接 hcon HttpConnection Connector open url 2 以字符为单位读出服务器响应的数据 dis newDataInputStream hcon openInputStream int ch while ch dis read 1 message message append char ch 3 关闭连接 释放资源 if hcon null hcon close if dis null dis close 3 2 1 栅格数据显示模式 M I DP目前支持的栅格图像数据格式为png和jpg 采用这种传输方式的缺点是数据量大 查询困 难 服务器负担沉重等 优点是编程模式简单 与一般的图像传输类似 这里不作详细说明 3 2 2 矢量数据显示模式 矢量数据模式主要分为2种 利用现有的GIS软件数据传输 11 利用SVG Scalable Vector Graphics 进行数据传输 若利用现有公开的GIS软件数据格式 如ArcInfo软件的交换格式Shp文件和Map Info软件的交 换格式Mif文件 需要编程读出他们的几何和属性信息 并将其显示 Shp文件是一个二进制文件 包含一个固定长度的头文件 该头文件长度为100个字节 其中包含整个文件的重要属性信息 第 624 河南理工大学学报 自然科学版 2008年第27卷 100个字节以后是关于对象数据的描述 其中包括Point Line Polygon等几何类型 每个地理对象 是由一组字节决定 每组字节的长度根据所描述的几何类型不同而不同 以Point点对象为例 第0 3个字节描述对象的类型 第4 11个字节描述点对象的X坐标 第12 19个字节描述点对象的 Y坐标 Map Info的Mif文件一般与Mid文件相关联 Mif文件主要包括了空间信息和空间对象的字段 属性 Mid文件则主要是相对应的空间对象各个字段的值 由于Shp文件和Mif文件是GIS常用格式 因此数据采集与处理比较方便 但是编程模式复杂 需要在客户端解析出空间数据 并显示于手机屏 幕上 速度不能接受 同时数据的统一 属性数据的查询等还没有很好地解决办法 可缩放矢量图像SVG是互联网联盟 W3C 的正式推荐的标准 它是一种使用XML来描述二维 图像的语言 是新一代用于计算机图像的图形和动画技术 12 13 由于移动设备在CPU速度 内存大 小 支持的显示颜色等各个参数上有很大的不同 单一的专业标准很难满足所有移动设备的要求 所 以 为了覆盖不同移动设备家族的需求 互联网联盟 W3C 的SVG工作小组制订了2个级别的 Mobile SVG专业标准 第一级别的专业标准是SVG Tiny SVGT 适用于资源高度受限的移动设备 如手机 第二级别的专业标准是SVGBasic SVGB 适用于高端的移动设备 如PDA等 利用Mo2 bile SVG的缩放性 图形就可以调整大小 以适应任何显示器 或者分辨率 而不会导致品质损失 Mobile SVG文件通常小于位图文件 从而可以缩短无线下载时间 SVG还支持事件 从而可以产生 超链接或者含有各种信息的弹出窗口 以向用户提供更多的信息和可点击的选项 另外 由于SVG 是文本格式并存储了图形中各元素的相关信息 可以利用基本的搜索引擎对SVG图形中的文字进行 搜索 这样可以查询SVG图形中具有某种属性的图形元素 TinyLine SVG Toolkit For J2ME是SVG的插件 可以在www tinyline com网站上下载 他对SVGT 标准进行了封装 提供了完整的SVG图像API 使用前需要引入TinyLine SVG的相关包 引入后就 可以使用其所提供的各种有关SVG的函数了 i mport com tinyline tiny2d 3 import com tinyline svg 3 import com tinyline util 3 J2ME通过Ti mer及TimerTask类实现连接时间的控制 Timer实例用于计时 TimerTask用于在实 例产生超时后终止连接并给出提示信息 利用Java的多线程机制 使多个线程并发执行 可以提高 程序的运行效率 同时引入缓冲机制 在内存中开辟一块缓冲区 将已经下载的图片存在缓冲区中 每次进行平移和缩放操作的时候就首先到缓冲区中查找 看所需要的图片是否已经在缓冲区中存在 如果已存在 就直接调出显示 只有当图片不在缓冲区中时才进行下载 这样提高了平移和缩放的显 示效率 而缓冲区的大小由系统的内存剩余情况来决定 由于手机上的汉字用UN I CODE进行编码 因此 在发送中文请求之前要将UN ICODE编码的汉 字转化成服务器端能够识别的编码 否则服务器端无法识别传过来的汉字信息 如果用ASP做服务 器 可以利用readUTF函数直接读取返回的查询信息 然后转化为String在客户端进行显示 如果采 用JSP做服务器端程序则可以采用一致的编码方式 UTF 8 从而解决中文的实现问题 4 实例研究 根据上述思想 实现了中国矿业大学校园地图手机地理信息系统 数据源是Mif格式校园电子地 图 通过开源工具GeoCon转化成SVG格式 GeoCon是用C 编写的开源地理信息数据转换工具 提 供源代码并免费使用 可以在http www mycgiserver com网站下载 开发工具选择了J2ME W ireless ToolKit Eclipse和TinyLine SVG Toolkit For J2ME 并利用微软IIS5 1作为服务器软件 J2MEW ireless ToolKit是SUN公司推出的J2ME开发包 Eclipse是一个开放源代码的软件开发项 目 具有商业品质的工业平台和功能强大的Java开发环境 将W ireless ToolKit集成到Eclipse里可以 给编程带来很大的方便 同时利用TinyLine SVG又可以实现对SVG图形的各种操作 例如通过改变 图形的Viewport W idth和ViewportHeight来实现图形的放大缩小 通过scalableGraphics渲染图形的位置 实现平移 简单实现代码如下 scalableI mage setViewport W idth m width scalableI mage setViewportHeight m height scal2 ableGraphics render m x m y scalableI mage 724 第4期 谢义林等 基于J2ME与SVG的手机地理信息系统研究与应用 由于SVG图形是文本格式 支持文字搜索 进行相关查询时直接查找SVG内相应的字符串 再 定位渲染出查找的目标物体即可 需要注意的是 GeoCon将Mif格式转化为SVG格式时 得到的主 要是图形的几何信息 属性信息是丢失的 由于Mid文件里图形的属性信息和Mif文件里的图形信息 是按先后顺序一一对应的 又均是文本格式 所以可以编写相应的小程序得到SVG图形的属性信息 并将信息添加到SVG文件中去 程序完成后 可先将编译好的源程序 即jad和jar文 件放在服务器的同一目录下 并在目录中编写一个简单的 html文件用于超链接2个文件 再利用J2ME WTK的OTA Provisioning试验 打开html文件并下载jad和jar文件 确 认无误后 最后 利用开通GPRS功能的手机通过OTA下 载 下载到本地手机后就可以使用了 图3是J2ME WTK 手机模拟器下载成功后的主界面 5 小 结 基于XML标准的SVG矢量数据格式 具有无级缩放 灵活的文件格式 支持交互性以及内嵌动态字体等特性 将 其与J2ME结合 可以开发出满足一定功能需求的手机地理 信息系统 随着手机硬件成本的下降以及内嵌GPS模块的 智能手机逐渐普及 可以较好地实现随时随地的移动定位服 务 但由于手机内存 网络速度的限制 在数据压缩和保 密 多线程加快数据处

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论