新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 嵌入式车载导航电子地图的设计和实现

嵌入式车载导航电子地图的设计和实现

作者:时间:2013-05-14来源:网络收藏

1.3.1 的文件格式与数据组织
地理信息系统中,实行属性数据与空间数据的分开储存。其中,空间数据以的自身格式在文件中进行保存,而属性则以数据链形式在一份表中储存。且两者利用一定索引机制便可有效地关联。电子地图以土层为依据进行地理管理。每个图层均由属性数据表结构文件、属性数据文件、交叉索引文件、空间数据文件多个基本文件构成。空间数据包括空间对象的颜色信息、坐标信息、几何类型等,当用户对索引字段加以规定后,索引文件便会在地理信息系统中自动生成。
电子地图通过“Table”的形式来建立属性数据与空间实体间的对应关系,并以此为基础建立起电子地图的查询检索系统。通过定义空间数据结构,对空间实体类型进行确定。数据库关系模型选用一组逻辑严密、结构简单的二维平面表为操作对象,Table中严禁重复存储,从而保障空间内唯一的实体记录。在描述空间实体类型的多种属性时,将其进行多个Table的分解,从而使其形成多重的链表关系,多个Table属性信息同空间实体发生联系,进而构成属性数据同空间实体间多重对应的关系。
1.3.2 电子地图的数据索引机制
电子地图数据索引机制的索引过程如下:当从属性信息中进行空间信息的查询时,电子地图首先应在属性文件中找到数据库中的相应数据。此时就可在索引文件中选取相应指针,其所指的地图对象即为同数据库记录空间相对应的对象。从而能够在空间信息中进行属性信息的查询。(如对于某一空间对象已在地图上查出,电子地图便可在空间文件中读出同空间信息相对应的记录号,以此为依据,便可该地图对象底性信息在属性数据文件中的查询。)而MapInfo地理信息数据格式的应用,则可较好地落实上述索引思路,且能够按照土层间的叠加关系进行存放与显示。
1.3.3 电子地图的图层与图元
在MapX中,对于MapInfo表的地图标示均是以图层的形式进行显示的,这些图层中除有地物元素位置外,默认为透明。叠加图层后,便可看到地图的各种方面。图元则包括区域对象、点对象、线对象。在MapX中,通过对Feature对象的利用便可对上述地图对象的房问题,可完成创建、自定义、编辑、显示等操作。
1.3.4 应用Geoset,实现地图管理
对于满意的地图,便可进行保存,在驱动器中将其写入Geoset文件当中。将Geoset文件打开,全部地图的设置和土层均为保存时状态。此时,可应用MapX自带工具Geoset Manager可对.gst文件进行管理,来对管理缩放级别、图层、表和其他属性进行修改。

2 电子地图模块的二次开发
基于Active技术的MapX控件为开发人员的二次开发提供了方便。在VC++等可视化开发环境中,将MapX控件嵌入到窗体中即可进行编程、设置属性等操作,完成空间数据查询,地理空间数据的可视化,编码等地图信息系统功能。
2.1 安装MapX mobile
在MapX安装完毕后,添加MapX空间便可对地图进行显示。具体步骤为:建立标准exe于编程环境当中,从“工程”菜单中选取“部件”,随即将“部分对话框打开”,于部件列表内,将“MapX mobile V5.02”找到,完成复选后,点击“确定”。随后工具栏中便会将Map空间图标显示出来,此时,单击“控件”,便完成了工程中Map空间的引入。
2.2 地图的基本操作
中,主要通过DataSet对象和Layer对象操作来完成MapX地图操作。对同此类型对象的应用,仍可将地图土层添加到应用程序当中。而属性数据操作的完成,则可通过建立数据绑定、数据源设置的方式实现。而电子地图的加载主要通过以下两种形式实现。一是在MapX中加载一个Geoset对象,加载完成后,MapX将各个图层自动打开,在地图窗口中进行叠加,并对图层属性信息进行设置。二是在MapX中加载一个图层,该种方法是对一个MapInfo文件的直接加载,待图层打开后,其将在地图窗口内完成自动的叠加。
2.3 地图的刷新
MapX首先绘制动态图层以外的全部图层,并在某一地方进行存储,当其他图层未变而动态图层发生变化时,便可通过已存储的动态图层和数据来实施覆盖处理,进而现实处理结果。地图的刷新过程设计为依次全部刷新的形式,从最小外界矩形窗口区域开始,来完成整合刷新过程。该方法的优点是相比于整个地图窗口的刷新形式要更加快速。同时,因受地图刷新速度的影响,MapX难以同时完成多目标的刷新,这时iju可进行统一刷新闹钟的设置,从而使每个一定时间间隔,目标地图便会自动刷新一次。
2.4 地图调用
首先,在工程中加入MaoX.cpp和MapX.h文件。在菜单“Project”中选择“Files”命令,随后将对话框打开选取MaoX.cpp和MapX.h文件加入到MapX系统当中。将MapX对象头文件加入到视图(包含MapX)中。针对MapX进行一个资源ID的创建,通过“新建一名称输入”的操作来完成。进行消息映射函数SIZE和CREATE的创建,在“视图/类导向”中选择视图类,并将两个信息在消息框中完成分别选择,之后通过函数的条件,来对代码进行编辑,导入地图。通过类向导,来进行SETFOCUS映射函数的创建,使得窗口在获得焦点的同时,地图空间也可获取焦点。
2.5 图层的控制
GIS软件中,通常需对图层属性进行设置,而通过对显示图层控制方法的应用便可实现此项功能,借助于MapX中可选择、可显示、自动标注、可编辑的四种属性设置来实现地理信息维护与查询功能的发挥。
2.6 鹰眼图的实现
鹰眼图是基于电子地图的一项基本功能,其实现思路为:进行一个无模式对话框的创建,确立HAWK为ID。建立MapX空间来对鹰眼图进行控制,并创建一新图层于鹰眼图中,以此添加矩形框,对主视图中地图作出表示,且该矩形框的位置和大小不随主视图边界变化而发生变化。添加一个按钮于对话框,依据按钮下的相应函数来操作鹰眼图MapX空间,从而使其对Map空间的操作得以实现,且当按下对话框按钮后,便可对CLICK信息进行发送。依靠此设计程度的鹰眼图可在EVC模拟器上运行,并具备了车载电子地图的基本功能。

3 结束语
车载导航在车载导航领域中有广泛的应用,随着社会信息化的发展,嵌入式车载导航电子地图的功能必将进一步完善。因此,嵌入式车载导航的应用前景将十分广阔。

本文引用地址:http://www.amcfsurvey.com/article/148024.htm
linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭