专利名称:地图建立方法及地图系统的制作方法
技术领域:
本发明涉及数字地图技术领域,具体涉及地图建立方法及地图系统。
背景技术:
城市管理部件是指城市管理公共区域内的各项设施,包括市政公用设施类、道路 交通设施类、市容环卫设施类、园林绿化类、其它类如下水井盖,简称部件。城市管理事件 是指人为或自然因素导致城市市容环境和环境秩序受到影响或破坏,需要城市管理部门处 理并使之恢复正常的事情和行为的统称,比如乱贴小广告,简称事件。数字化城市管理新模 式,指采用万米单元网格管理法和城市部件、事件管理法相结合的方式,应用、整合多项数 字城市技术实现精确、敏捷、高效、全时段、全方位覆盖的数字化城市管理模式。通过开发专门针对嵌入式设备的地图转换工具,便于用户随时随地使用嵌入式设 备顺畅地进行地图浏览、事(部)件的拾取查看、定位、自定义兴趣点(POI)等。目前的地图都只针对一个视野,当要在地图中添加一个要素时,根据该要素的绝 对坐标如经纬度等确定该要素在地图上的位置,然后将该要素添加到地图上。当要在地图 中定位一个要素时,直接根据该要素的绝对坐标在地图上查找。现有的嵌入式地图实现模式具有以下缺点一、只针对一个视野,这样所有要素的数据都存储在同一地图数据库中,数据量较 大。二、采用绝对坐标标定要素。每个要素采用绝对坐标标定,由于绝对坐标占用的长 度较长,因此,也会增加数据库的数据量。嵌入式设备如智能移动终端除了在操作系统上与个人计算机(PC)的处理方式 有区别外,存储空间小、中央处理单元(CPU)计算能力弱也是必须要面对的问题。当地图数 据库存储的数据量较大时,势必会导致对数据库的访问速度变慢,影响用户体验。
发明内容
本发明提供地图建立方法及地图系统,以减少地图数据占用的存储空间。本发明的技术方案是这样实现的一种地图建立方法,该方法包括根据地图要素的属性,将地图要素划分为多个图层;设定不同的视野,确定在不同 视野下所能看到的图层;根据每个视野高度的从高到低,依次采用从大到小的坐标单位;当要在地图中添加一个要素时,确定该要素所属的图层,确定该图层所在的视野, 根据该视野下的地图的原点和坐标单位,将该要素的绝对坐标转换成在该视野下的地图上 的相对坐标,保存视野标识、该要素的绝对坐标、该要素的相对坐标的对应关系;根据该要 素的相对坐标,将该要素添加到该视野下的地图上。一种地图系统,该系统包括第一模块,根据地图要素的属性,将地图要素划分为多个图层,保存要素ID与图层ID的对应关系;设定不同的视野,确定在不同视野下所能看到的图层,保存视野ID与图 层ID的对应关系;根据每个视野高度的从高到低,依次采用从大到小的坐标单位,为每个 视野下的地图选择一个原点,保存视野ID、视野下的地图的原点的绝对坐标及坐标单位的 对应关系;第二模块,当要在地图中添加一个要素时,根据第一模块保存的要素ID与图层ID 的对应关系,确定该要素所属的图层;根据第一模块保存的视野ID与图层ID的对应关系, 确定该图层所在的视野;根据第一模块保存的视野ID、视野下的地图的原点的绝对坐标及 坐标单位的对应关系,确定该视野下的地图的原点和坐标单位,并将该要素的绝对坐标转 换成在该视野下的地图上的相对坐标,保存视野ID、该要素的绝对坐标、该要素的相对坐标 的对应关系;根据该要素的相对坐标,将该要素添加到该视野下的地图上。与现有技术相比,本发明中,当要在地图中添加一个要素时,确定该要素所属的图 层,确定该图层所在的视野,根据该视野下的地图的原点和坐标单位,将该要素的绝对坐标 转换成在该视野下的地图上的相对坐标,从而减少了地图数据占用的存储空间,同时,可提 高嵌入式系统地图的使用速率,可加快定位速度。
图1为本发明实施例提供的地图建立方法流程图;图2为本发明实施例提供的在地图中定位一个要素的流程图;图3为本发明实施例提供的地图系统的组成图。
具体实施例方式下面结合附图及具体实施例对本发明再作进一步详细的说明。图1为本发明实施例提供的地图建立方法流程图,如图1所示,其具体步骤如下步骤101 根据地图要素的属性,将地图要素划分为多个图层,将要素ID与图层ID 的对应关系保存到服务单元的索引数据库中。图层可以为基础地形图层、城市管理部件图层,等等。其中,基础地形图层可进一 步划分为道路图层、绿地图层、建筑物图层等,城市管理部件图层可进一步划分为路面 图层、井盖图层等。每个图层中包含多个要素,例如井盖图层中就包含所有的井盖,每个井 盖即为一个要素。步骤102 设定不同的视野,确定在每个视野下所能看到的图层,将视野ID与图层 ID的对应关系保存到服务单元的索引数据库中。例如可将视野按照高度划分为η类,设按照高度的从低到高依次为视野1 对应高度h1;即在离地平面Ii1高时,所能看到的地面上的所有要素组成的 范围;视野2 对应高度h2,即在离地平面h2高时,所能看到的地面上的所有要素组成的 范围;视野3 对应高度h3,即在离地平面h3高时,所能看到的地面上的所有要素组成的 范围;......;
视野n-1 对应高度Iv1,即在离地平面Iv1高时,所能看到的地面上的所有要素组 成的范围;视野η 对应高度hn,即在离地平面hn高时,所能看到的地面上的所有要素组成的 范围。这里需要指出的是,同一个图层可能会出现在两个视野中,例如井盖图层可能会 同时出现在视野ml和视野m2中。步骤103 根据每个视野高度的从高到低,依次为每个视野下的地图采用从大到 小的坐标单位,为每个视野下的地图设定坐标原点,将视野ID、该视野下的地图的坐标单 位、该视野下的地图的坐标原点的绝对坐标记录到服务单元的索引数据库中。视野高度越高,该视野下的地图的坐标单位越大。例如,视野1的高度小于视野2 的高度,设视野ι下的地图的坐标单位的长度为dl,视野2下的地图的坐标单位的长度为 d2,则 dl < d2。每个视野下的地图的坐标原点通常取该地图的中心点。步骤104 为不同的图层设定不同的显示样式,将图层ID与显示样式的对应关系 保存到样式数据库中。步骤105 用户确定要在地图中添加一个要素,嵌入式终端将该要素ID、该要素的 绝对坐标携带在添加请求中发送给服务单元。步骤106 服务单元接收添加请求,根据索引数据库中的要素ID与图层ID的对应 关系,确定添加请求中的要素ID对应的图层ID。步骤107 服务单元根据索引数据库中保存的视野ID与图层ID的对应关系,确定 该要素所属图层ID对应的视野ID,设为视野m。步骤108 服务单元根据视野m下的地图的坐标单位、原点的绝对坐标,将该要素 的绝对坐标转换成相对坐标,将视野m的ID、该要素ID、该要素的绝对坐标、该要素的相对 坐标的对应关系保存到索引数据库中。例如若要素的绝对坐标为(X,y),视野m下的地图的原点的绝对坐标为(xO,y0), 坐标单位为(dmx, dmy),则计算ρ = (x-x0)/dmx, q = (y-y0)/dmy,则(ρ, q)即为该要素在 视野m下的地图上的相对坐标,其中,dmx为水平坐标单位,dmy为垂直坐标单位,dmx、dmy可 以相同也可以不同。这里,若要素为非点要素的要素,例如线要素、标记要素或者面要素等,则需要分 别计算要素的每个点的相对坐标,并将视野m的ID、该要素ID、该要素的每个点的绝对坐 标、该要素的每个点的相对坐标的对应关系保存到索引数据库中。另外,为了进一步减少索引数据库的存储负担,对于非点要素的要素,在计算相对 坐标时可采用如下方法对于要素的第一个点,以该视野下的地图的原点为原点计算该第一个点的相对坐 标;对于该要素的其它点,以该第一个点为原点计算该其它点的相对坐标。例如若该要素 的第一个点的绝对坐标为(xl,yl),则第一个点的相对坐标(P,q)为P = (xl-x0)/dmx, q =(yl_y0)/dmy,对于该要素上的一个任意其它点s,设点s的绝对坐标为(xs,ys),则点s 的相对坐标(ps,qs)为ps = (xs-xl)/dmp,qs = (ys_yl)/dnv 其中,dmp 可等于 dmx,Clmtl 可 等于dmy。
步骤109 服务单元根据样式数据库中保存的图层ID与显示样式的对应关系,确 定该要素所属图层ID对应的显示样式。步骤110 服务单元根据该要素的相对坐标,并采用所确定的显示样式,将该要素 添加到视野m下的地图上。需要指出的是,若一个要素对应的图层分布在多个视野上,则需要针对每个视野 执行一次步骤108 110。图2为本发明实施例提供的在地图中定位一个要素的流程图,如图2所示,其具体 步骤如下步骤201 用户确定要在地图上定位一个要素f,嵌入式终端将要素f的ID、要素f 的绝对坐标携带在定位请求中发送给服务单元。步骤202 服务单元接收定位请求,根据索引数据库中的要素ID与图层ID的对应 关系,确定要素f的ID对应的图层ID。步骤203 服务单元根据索引数据库中保存的视野ID与图层ID的对应关系,确定 要素f所属图层ID对应的视野ID,设为视野m。步骤204 服务单元根据索引数据库中保存的视野ID、要素ID、要素的绝对坐标、 要素的相对坐标的对应关系,确定要素f的相对坐标。步骤205 服务单元根据样式数据库中保存的图层ID与显示样式的对应关系,确 定要素f所属图层ID对应的显示样式。步骤206 服务单元采用所确定的显示样式,并根据要素f的相对坐标,将要素f 显示在视野m下的地图上,将地图发送给嵌入式终端。若要素f为非点要素的要素,则在显示时,服务单元会根据每个点的相对坐标,将 各个点依次在地图上显示出来。在实际应用中,经常会将整个地图划分为多个责任区域,以在发生特殊事件时,确 定该事件中的要素位于哪个责任区域,针对这种需求,本发明实施例提供如下解决方案将每个视野下的地图划分为多个责任网格,对于每个责任网格,对于每个网格设 置一个网格原点,根据该视野下的地图的原点和坐标单位,确定每个网格原点的相对坐标, 然后根据每个网格原点,得到以相对于网格原点的相对坐标表示的该网格的范围。当要定 位一个要素所在的责任网格时,首先,根据索引数据库中保存的图层ID与要素ID的对应关 系,确定该要素所属的图层,然后根据索引数据库中的视野ID与图层ID的对应关系,确定 该图层所在的视野,之后,根据该视野下的地图的原点的绝对坐标及坐标单位,将该要素的 绝对坐标转换成该视野下的地图上的相对坐标,再根据该要素的相对坐标、各网格的原点 的相对坐标以及各网格的范围,确定该要素落在哪个网格的范围内,即得到该要素所在的 网格。在实际应用中,还会存在这样一种需求需要在地图中定位一个图层,此时,先根 据索引数据库中的图层ID与视野ID的对应关系,确定该图层所在的视野,然后根据索引数 据库中保存的图层ID与要素ID的对应关系,以及视野ID、要素的绝对坐标、要素的相对坐 标的对应关系,在该图层所在视野下的地图上查找到属于该图层的所有要素。本发明实施例中的服务单元可位于专门的地图服务器上,也可位于嵌入式终端自 身上。
图3为本发明实施例提供的地图系统的组成图,如图3所示,该系统包括第一模 块31、第二模块32和第三模块33,其中第一模块31 根据地图要素的属性,将地图要素划分为多个图层,保存要素ID与 图层ID的对应关系;设定不同的视野,确定在不同视野下所能看到的图层,保存视野ID与 图层ID的对应关系;根据每个视野高度的从高到低,依次采用从大到小的坐标单位,为每 个视野下的地图选择一个原点,保存视野ID、视野下的地图的原点的绝对坐标及坐标单位 的对应关系。第二模块32 当要在地图中添加一个要素时,根据第一模块31保存的要素ID与 图层ID的对应关系,确定该要素所属的图层;根据第一模块31保存的视野ID与图层ID的 对应关系,确定该图层所在的视野;根据第一模块31保存的视野ID、视野下的地图的原点 的绝对坐标及坐标单位的对应关系,确定该视野下的地图的原点和坐标单位,将该要素的 绝对坐标转换成在该视野下的地图上的相对坐标,保存视野ID、该要素的绝对坐标、该要素 的相对坐标的对应关系;根据该要素的相对坐标,将该要素添加到该视野下的地图上。当要添加的要素为非点要素的要素时,第二模块32还用于,对于该要素的第一个 点,将该点的绝对坐标转换为以该视野下的地图上的原点作为原点的相对坐标;对于该要 素的其它点,将该点的绝对坐标转换为以该要素的第一个点为原点的相对坐标。第三模块33 当要在地图中定位一个要素时,根据第一模块31保存的要素ID与 图层ID的对应关系,确定该要素所属的图层;根据第一模块31保存的视野ID与图层ID的 对应关系,确定该图层所在的视野;根据该视野ID、该要素的绝对坐标,在第二模块32保存 的视野ID、该要素的绝对坐标、该要素的相对坐标的对应关系中查找到该要素的相对坐标, 根据该相对坐标在该视野下的地图上查找到该要素。在实际应用中,图3所示系统还可包括第四模块,用于保存图层ID与显示样式的 对应关系。且,第二模块32根据所要添加的要素ID,在第四模块保存的图层ID与显示样式的 对应关系中,查找到该要素的显示样式,根据该显示样式将该要素添加到该要素所属图层 所在视野下的地图上。在实际应用中,图3所示系统还可包括第五模块和第六模块,其中第五模块将每个视野下的地图划分为多个网格,针对每个网格生成一个坐标原 点,根据该视野下的地图的原点和坐标单位,得到各网格的原点的相对坐标,并得到以相对 于网格的原点的相对坐标表示的该网格的范围,保存视野ID、网格ID、网格原点的相对坐 标、网格范围的对应关系。第六模块当要定位一个要素所在的网格时,根据第一模块保存的要素ID与图 层ID的对应关系,确定该要素所属的图层;根据第一模块保存的视野ID与图层ID的对应 关系,确定该图层所在的视野;根据该视野ID、该要素的绝对坐标,在第二模块保存的视野 ID、该要素的绝对坐标、该要素的相对坐标的对应关系中查找到该要素的相对坐标;根据第 五模块保存的视野ID、网格ID、网格原点的相对坐标、网格范围的对应关系,确定该要素所 在的网格。在实际应用中,图3所示系统还可包括第七模块,用于当要在地图中定位一个图 层时,根据第一模块保存的视野ID与图层ID的对应关系,确定该图层所在的视野;根据第二模块保存的视野ID、该要素的绝对坐标、该要素的相对坐标的对应关系,在该视野下的地 图上查找到属于该图层的所有要素。本发明实施例中,相对坐标可采用整数表示。以上所述仅为本发明的过程及方法实施例,并不用以限制本发明,凡在本发明的 精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种地图建立方法,其特征在于,该方法包括根据地图要素的属性,将地图要素划分为多个图层;设定不同的视野,确定在不同视野 下所能看到的图层;根据每个视野高度的从高到低,依次采用从大到小的坐标单位;当要在地图中添加一个要素时,确定该要素所属的图层,确定该图层所在的视野,根据 该视野下的地图的原点和坐标单位,将该要素的绝对坐标转换成在该视野下的地图上的相 对坐标,保存视野标识、该要素的绝对坐标、该要素的相对坐标的对应关系;根据该要素的 相对坐标,将该要素添加到该视野下的地图上。
2.如权利要求1所述的方法,其特征在于,所述方法进一步包括当要在地图中定位一个要素时,确定该要素所属的图层,确定该图层所在的视野,根据 该视野标识、该要素的绝对坐标,在所述视野标识、该要素的绝对坐标、该要素的相对坐标 的对应关系中查找到该要素的相对坐标,根据该相对坐标在该视野下的地图上查找到该要素。
3.如权利要求2所述的方法,其特征在于,预先为不同的图层设定不同的显示样式,所述将该要素添加到该视野下的地图上包括采用该要素所属图层对应的显示样式,将该要素添加到该视野下的地图上;所述根据该相对坐标在该视野下的地图上查找到该要素之后进一步包括根据该要素 所属图层对应的显示样式,将该要素在该视野下的地图上显示出来。
4.如权利要求1所述的方法,其特征在于,所述确定在不同视野下所能看到的图层之 后进一步包括将每个视野下的地图划分为多个网格,针对每个网格生成一个坐标原点,根据该视野 下的地图的原点和坐标单位,得到各网格的原点的相对坐标,并得到以相对于网格的原点 的相对坐标表示的该网格的范围;当要定位一个要素所在的网格时,确定该要素所属的图层,确定该图层所在的视野,将 该要素的绝对坐标转换成该视野下的地图上的相对坐标,根据该视野下的地图上的各网格 的原点的相对坐标以及各网格的范围,确定该要素所在的网格。
5.如权利要求1至4任一所述的方法,其特征在于,所述相对坐标以整数表示。
6.如权利要求2所述的方法,其特征在于,当要在地图中定位一个要素时,所述确定该 图层所在的视野为发现该图层所在的视野为多个,则选择高度最高的视野,将所选择的视 野作为该要素所在的视野。
7.如权利要求1至4、6任一所述的方法,其特征在于,所述方法进一步包括当要在地图中定位一个图层时,确定该图层所在的视野,在保存视野标识、该要素的绝 对坐标、该要素的相对坐标的对应关系中,在该视野下的地图上查找到属于该图层的所有 要素。
8.如权利要求1所述的方法,其特征在于,所述当要在地图中添加一个要素时为当要 在地图中添加一个非点要素的要素时,所述将该要素的绝对坐标转换成在该视野下的地图上的相对坐标为对于该要素的第一个点,将该点的绝对坐标转换为以该视野下的地图上的原点作为原 点的相对坐标;对于该要素的其它点,将该点的绝对坐标转换为以该要素的第一个点为原 点的相对坐标;所述保存视野标识、该要素的绝对坐标、该要素的相对坐标的对应关系为保存视野标 识、该要素的各个点的绝对坐标、相对坐标的对应关系;且,当要在地图中定位一个要素时,所述根据该视野标识、该要素的绝对坐标,在所述 对应关系中查找到该要素的相对坐标为根据该视野标识、该要素的各个点的绝对坐标查找到该要素的各个点的相对坐标。
9.一种地图系统,其特征在于,该系统包括第一模块,根据地图要素的属性,将地图要素划分为多个图层,保存要素ID与图层ID 的对应关系;设定不同的视野,确定在不同视野下所能看到的图层,保存视野ID与图层ID 的对应关系;根据每个视野高度的从高到低,依次采用从大到小的坐标单位,为每个视野下 的地图选择一个原点,保存视野ID、视野下的地图的原点的绝对坐标及坐标单位的对应关 系;第二模块,当要在地图中添加一个要素时,根据第一模块保存的要素ID与图层ID的对 应关系,确定该要素所属的图层;根据第一模块保存的视野ID与图层ID的对应关系,确定 该图层所在的视野;根据第一模块保存的视野ID、视野下的地图的原点的绝对坐标及坐标 单位的对应关系,确定该视野下的地图的原点和坐标单位,并将该要素的绝对坐标转换成 在该视野下的地图上的相对坐标,保存视野ID、该要素的绝对坐标、该要素的相对坐标的对 应关系;根据该要素的相对坐标,将该要素添加到该视野下的地图上。
10.如权利要求9所述的系统,其特征在于,该系统进一步包括第三模块,当要在地图中定位一个要素时,根据第一模块保存的要素ID与图层ID的对 应关系,确定该要素所属的图层;根据第一模块保存的视野ID与图层ID的对应关系,确定 该图层所在的视野;根据该视野ID、该要素的绝对坐标,在第二模块保存的视野ID、该要素 的绝对坐标、该要素的相对坐标的对应关系中查找到该要素的相对坐标,根据该相对坐标 在该视野下的地图上查找到该要素。
11.如权利要求9所述的系统,其特征在于,该系统进一步包括第四模块,保存图层ID与显示样式的对应关系;且所述第二模块根据所要添加的要素ID,在第四模块保存的图层ID与显示样式的对 应关系中,查找到该要素的显示样式,根据该显示样式将该要素添加到所述视野下的地图 上。
12.如权利要求9至11任一所述的系统,其特征在于,所述系统进一步包括第五模块,将每个视野下的地图划分为多个网格,针对每个网格生成一个坐标原点,根 据该视野下的地图的原点和坐标单位,得到各网格的原点的相对坐标,并得到以相对于网 格的原点的相对坐标表示的该网格的范围,保存视野ID、网格ID、网格原点的相对坐标、网 格范围的对应关系;第六模块,当要定位一个要素所在的网格时,根据第一模块保存的要素ID与图层ID的 对应关系,确定该要素所属的图层;根据第一模块保存的视野ID与图层ID的对应关系,确 定该图层所在的视野;根据该视野ID、该要素的绝对坐标,在第二模块保存的视野ID、该要 素的绝对坐标、该要素的相对坐标的对应关系中查找到该要素的相对坐标;根据第五模块 保存的视野ID、网格ID、网格原点的相对坐标、网格范围的对应关系,确定该要素所在的网 格。
13.如权利要求9至11任一所述的系统,其特征在于,所述系统进一步包括第七模块,当要在地图中定位一个图层时,根据第一模块保存的视野ID与图层ID的对 应关系,确定该图层所在的视野;根据第二模块保存的视野ID、该要素的绝对坐标、该要素 的相对坐标的对应关系,在该视野下的地图上查找到属于该图层的所有要素。
14.如权利要求9所述的系统,其特征在于,所述第二模块进一步包括用于在发现要 添加的要素为非点要素的要素时,对于该要素的第一个点,将该点的绝对坐标转换为以该 视野下的地图上的原点作为原点的相对坐标;对于该要素的其它点,将该点的绝对坐标转 换为以该要素的第一个点为原点的相对坐标的模块。
全文摘要
本发明公开了地图建立方法及地图系统。方法包括根据地图要素的属性,将地图要素划分为多个图层;设定不同的视野,确定在不同视野下所能看到的图层;根据每个视野高度的从高到低,依次采用从大到小的坐标单位;当要在地图中添加一个要素时,确定该要素所属的图层,确定该图层所在的视野,根据该视野下的地图的原点和坐标单位,将该要素的绝对坐标转换成在该视野下的地图上的相对坐标,保存视野标识、该要素的绝对坐标、该要素的相对坐标的对应关系;根据该要素的相对坐标,将该要素添加到该视野下的地图上。本发明减少了地图数据占用的存储空间,并且在很大程度上提高了对地图的使用速率。
文档编号G06F17/30GK102103600SQ20091024193
公开日2011年6月22日 申请日期2009年12月16日 优先权日2009年12月16日
发明者何英杰, 刘越, 李晟, 王洪深, 范晓晖 申请人:中国移动通信集团公司