CN102568302B - 一种地图标注的方法和装置 - Google Patents

一种地图标注的方法和装置 Download PDF

Info

Publication number
CN102568302B
CN102568302B CN 201110460492 CN201110460492A CN102568302B CN 102568302 B CN102568302 B CN 102568302B CN 201110460492 CN201110460492 CN 201110460492 CN 201110460492 A CN201110460492 A CN 201110460492A CN 102568302 B CN102568302 B CN 102568302B
Authority
CN
China
Prior art keywords
point
submodule
line section
triangle
continuity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN 201110460492
Other languages
English (en)
Other versions
CN102568302A (zh
Inventor
孙成宝
李团宏
曹刚
李嵩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Datum Science & Technology Development Co Ltd
Original Assignee
Beijing Datum Science & Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Datum Science & Technology Development Co Ltd filed Critical Beijing Datum Science & Technology Development Co Ltd
Priority to CN 201110460492 priority Critical patent/CN102568302B/zh
Publication of CN102568302A publication Critical patent/CN102568302A/zh
Application granted granted Critical
Publication of CN102568302B publication Critical patent/CN102568302B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Abstract

本申请提供了一种地图标注的方法和装置,其中,所述的方法包括:按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形;对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。本申请能够提高地图标注点定位的计算效率及准确率。

Description

一种地图标注的方法和装置
技术领域
本申请涉及地图标注的技术领域,特别是涉及一种地图标注的方法,以及,一种地图标注的装置。
背景技术
地图标注就是确定地图标注点(POI:Point of Interest)的过程,是在地图上标注:名称、类别、经度、纬度等信息,是一个带位置信息的综合信息。地图上为地理信息标注名称为“注记”。有定位点的地理实体,一般标注其名称。在数字地图中,还包含众多的其它属性。
随着地理信息系统的广泛应用,地图的标注作为一个基本的地图显示问题也越来越受到人们的重视,因为无论应用在哪个具体的行业,地图的显示质量都直接影响着软件的质量。地图标注是地理信息系统中最基础也是最重要的研究问题之一。该问题已经被认定为离散计算几何研究领域里的重要问题。地图标注可以区分为三类:(1)点状要素的标注(如城市或者山峰);(2)线状要素的标注(如河流或者道路);(3)面状要素的标注(如国家或者海洋)。本申请针对的是面状要素的标注的方面。
现有技术中面状要素的标注的方法因为原始图形的中的点多,处理过程复杂,需要大量的计算来获取目标信息。如:在实际软件应用中,要实时的计算出由100万个点组成的中国国界多边形的标注点位置以显示出国家名称。现有图形标注点位置的算法,对由大量点组成的图形,在实际应用中实时性、可行性表现为计算效率低,且计算结果不够准确。
所以目前本领域技术人员迫切需要解决的问题是:提高地图标注点定位的计算效率及准确率。
发明内容
本申请所要解决的技术问题是提供一种地图标注的方法,提高地图标注点定位的计算效率及准确率。
相应的,本申请还提供了一种地图标注的装置,用以保障上述方法在实际中的应用。
为了解决上述问题,本申请公开了一种地图标注的方法,具体可以包括:
按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形,包括:
步骤S11、选取所述原始多线段图形上的任一已知点为目标点;
步骤S12、从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
步骤S13、判断所述第一连续点或第二连续点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则执行步骤S14;
步骤S14、形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
步骤S15、判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则执行步骤S16;若否,则执行步骤S17;
步骤S16、将所述目标点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S17、判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则执行步骤S16,若否,则执行步骤S18;
步骤S18、将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S19、将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则返回步骤S12;
步骤S20、结束循环;
对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;
遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。
优选的是,所述按预置规则删减原始多线段图形中的已知点还可以包括:
按照预设的简化次数m,针对原始多线段图形迭代m次执行所述步骤S11-S20,获得最终的简化多线段图形,其中,所述m大于或等于1。
优选的是,所述遍历n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点的步骤可以包括:
步骤S21、选取一个未遍历的三角形为目标三角形;
步骤S22、计算所述目标三角形的面积;
步骤S23、判断所述目标三角形的面积是否小于面积参考变量,若是,则返回执行步骤S21,若否,则执行步骤S24;
步骤S24、计算所述目标三角形的质心;
步骤S25、判断所述目标三角形的质心是否在所述简化多线段图形内,若是,则执行步骤S26,若否,则返回执行步骤S21;
步骤S26、将所述目标三角形的面积作为新的面积参考变量,并将所述质心作为标注点,返回步骤S21。
优选的是,所述原始多线段图形为封闭图形,图形中不包括其它封闭图形。
本申请同时公开了一种地图标注的装置,具体可以包括:
图形简化模块,用于按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形,包括:
目标点选取子模块,用于选取所述原始多线段图形上的任一已知点为目标点;
连续点选取子模块,用于从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
连续点判断子模块,用于判断所述第一连续点或第二连续点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用线段生成子模块;
线段生成子模块,用于形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
夹角判断子模块,用于判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则调用两点添加子模块;若否,则调用长度判断子模块;
两点添加子模块,用于将所述目标点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
长度判断子模块,用于判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则调用两点添加子模块,若否,则调用三点添加子模块;
三点添加子模块,用于将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
目标点判断子模块,用于将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用所述连续点选取子模块;
循环结束子模块,用于结束循环。
三角形划分模块,用于对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;
标注点确定模块,用于遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。
优选的是,所述标注点确定模块可以包括:
目标三角形选取子模块,用于选取一个未遍历的三角形为目标三角形;
面积计算子模块,用于计算所述目标三角形的面积;
面积判断子模块,用于判断所述目标三角形的面积是否小于面积参考变量,若是,则调用所述目标三角形选取子模块,若否,则调用质心计算子模块;
质心计算子模块,用于计算所述目标三角形的质心;
质心判断子模块,用于判断所述目标三角形的质心是否在所述简化多线段图形内,若是,则调用标注点选取子模块,若否,则调用所述目标三角形选取子模块;
标注点选取子模块,用于将所述目标三角形的面积作为新的面积参考变量,并将所述质心作为标注点,调用所述目标三角形选取子模块。
优选的是,所述原始多线段图形为封闭图形,图形中不包括其它封闭图形。
与现有技术相比,本申请具有以下优点:
本申请将在地图标前先将原始多线段图形简化,将原始多线段图形的已知点按预设预置的规则进行简化。以连续三个已知点为一组,通过连接三个已知点的线段的夹角,和线段的长度,与预置的阈值比较。删减条件在阈值范围内的点。再以简化的多线段图形为基础,计算多线段图形的标注点。从而提高地图标注点定位的计算效率及准确率。
本申请还通过计算出多线段图形中,面积最大的三角形的质心,将所述质心作为标注点,提高地图标注点定位的准确率。
附图说明
图1是本申请一种地图标注的方法实施例的流程图;
图2是本申请一种地图标注的装置实施例的结构框图;
图3是通过角度比较舍弃第一连续点的示意图;
图4是通过长度比较舍弃第一连续点的示意图;
图5是已知点数为10000的原始多线段图形示意图;
图6是多次精简处理后的简化多线段图形示意图;
图7是三角剖分划分三角形的示意图;
图8是最大面积且质心在多边形内的三角形质心位置为标注点的示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例的核心构思之一在于,通过将在地图标前先将原始多线段图形简化,将原始多线段图形的已知点按预设预置的规则进行简化。以连续三个已知点为一组,通过连接三个已知点的线段的夹角,和线段的长度,与预置的阈值比较。删减条件在阈值范围内的点。再以简化的多线段图形为基础,计算多线段图形的标注点。从而提高地图标注点定位的计算效率及准确率。
参照图1,示出了本申请一种地图标注的方法实施例1的流程图,具体可以包括:
步骤101、按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形,包括步骤S11、选取所述原始多线段图形上的任一已知点为目标点;
步骤S12、从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
步骤S13、判断所述第一连续点或第二连续点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则执行步骤S14;
步骤S14、形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
步骤S15、判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则执行步骤S16;若否,则执行步骤S17;
步骤S16、将所述目标点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S17、判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则执行步骤S16,若否,则执行步骤S18;
步骤S18、将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S19、将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则返回步骤S12;
步骤S20、结束循环。
在本申请的一种优选实施例中,所述原始多线段图形为封闭图形,图形中不包括其它封闭图形。
在具体实现中,原始多线段图形是由非常多的点组成的多线段图形,并且是封闭的多线段图形。譬如,在实际软件应用中,原始多线段图形可以为由100万个点组成的中国国界图形。但是,对多个多线段组成的图形,也就是外面的大圈里有洞(小圈)情况,本申请不适用。
在本发明的一种优选实施例中,所述步骤101具体可以包括以下子步骤:
子步骤S11、选取所述原始多线段图形上的任一已知点为目标点;
步骤S12、从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
在具体实现中,在目标点后依次取两个连续的已知点,可以按顺时针方向选取,也可以按逆时针方向选取。
步骤S13、判断所述第一连续点或第二连续点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则执行步骤S14;
在具体实现中,整个简化过程是一个循环进行的过程,选取每三个已知点组成一个循环处理小单元,三个已知点分别为目标点、第一连续点和第二连续点。所以当初始选取的目标点再次被选取为第一连续点或第二连续点时,表示完成了一轮简化。
步骤S14、形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
步骤S15、判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则执行步骤S16;若否,则执行步骤S17;
在具体实现中,只选取第一线段和第二线段组成的劣角,角度阈值的范围在0°到180°之间,角度阈值越接近180°,简化多线段图形越接近原始多线段图形。
步骤S16、将所述目标点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S17、判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则执行步骤S16,若否,则执行步骤S18;
在具体实现中,长度阈值大于0,预置的长度阈值越接近0,得到的简化多线段图形越接近原始多线段图形。
步骤S18、将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S19、将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则返回步骤S12;
在具体实现中,整个简化过程是一个循环进行的过程,选取每三个已知点组成一个循环处理小单元,三个已知点分别为目标点、第一连续点和第二连续点。所以当初始选取的目标点再次被选取为目标点时,表示完成了一轮简化。
步骤S20、结束循环。
在具体实现中,结束循环后将简化多线段图形中的点用线段连接,获得简化的多线段图形。
在本申请的一种优选实施例中,所述步骤101,还可以进一步包括:
按照预设的简化次数m,针对原始多线段图形迭代m次执行所述步骤S11-S20,获得最终的简化多线段图形,其中,所述m大于或等于1。
在具体实现中,也许对原始多线段图形一次简化后,简化的多线段图形还包括许多已知点。这时候可以对原始多线段图形再次进行简化,可以在执行时预置重复简化的次数。
步骤102、对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;
在具体实现中,使用Deluanay三角剖分算法,对得到简化的多线段图形进行三角网划分,得到一系列的三角形,由n个三角形组成,n大于或等于1。
步骤103、遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。
在本申请的一种优选实施例中,所述步骤103具体可以包括以下子步骤:
步骤S21、选取一个未遍历的三角形为目标三角形;
步骤S22、计算所述目标三角形的面积;
步骤S23、判断所述目标三角形的面积是否小于面积参考变量,若是,则返回执行步骤S21,若否,则执行步骤S24;
在具体实现中,第一次遍历的时候,所述预设的参考变量可以设置为0。
步骤S24、计算所述目标三角形的质心;
步骤S25、判断所述目标三角形的质心是否在所述简化多线段图形内,若是,则执行步骤S26,若否,则返回执行步骤S21;
在具体实现中,可以采用“水平/垂直交叉点数判别法”计算质心是否在简化多线段图形内。
步骤S26、将所述目标三角形的面积作为新的面积参考变量,并将所述质心作为标注点,返回步骤S21。
为了方便本领域技术人员更好地理解本申请,以下结合图3至图8,通过一个完整示例更进一步说明本申请:
1、对由m个已知点组成的原始多线段图形B,任意取一点P1作为目标点。
2、以顺时针方向,取原始的多线段图形点P1后的2个连续点,分别是第一连续点P2与第二连续点P3(3个点作为一个循环处理小单元)。
3、计算线段P1P2与线段P2P3的夹角,设置角度阀值w,比较线段P1P2与线段P2P3的夹角大于阀值w,将目标点P1和第二连续点P3作为简化多线段图形中的点进行添加。
如图3所示:在具体实现中,计算出线段P1P2与线段P2P3夹角为175°,设置的角度阈值为170°,因为线段P1P2与线段P2P3的夹角大于设置的角度阈值,所以忽略第一连续点P2,目标点P1和第二连续点P3作为简化多线段图形中的点进行添加,连接目标点P1和第二连续点P3的线段为简化多线段图形的边。
4、取第二连续点P3作为新的目标点,以顺时针方向,取原始的多线段图形点P3后的2个连续点,分别是新的第一连续点P4与新的第二连续点P5(这3个点作为一个新的循环处理小单元)。
5、计算线段P3P4与线段P4P5的夹角,比较线段P3P4与线段P4P5的夹角小于阀值w。
6、计算线段P3P4与线段P4P5的长度,分别为L1,L2。设置长度阀值v,比较L1大于v,并且L2大于v;新的第一连续点P4作为简化多线段图形中的点进行添加。
如图4所示:在具体实现中,计算出线段P3P4与线段P4P5的长度,分别为8,9;设置的长度阈值为10。由于线段P3P4与线段P4P5的长度都小于设置的长度阈值,所以忽略第一连续点P4,目标点P3和第二连续点P5作为简化多线段图形中的点进行添加,连接目标点P3和第二连续点P5的线段为简化多线段图形的边。
当夹角判断完毕后P5为目标点,P6为第一连续点,P7为第二连续点,作为新的循环处理小单元。在判断夹角小于设置的角度阈值后,计算出线段P5P6与线段P6P7的长度,分别为12,15;均大于长度阈值10。则目标点P5、第一连续点P6和第二连续点P7作为简化多线段图形中的点进行添加,线段P5P6与线段P6P7为简化多线段图形的边。
7、取原始多线段图形点P5后的2个连续点P6与P7。将P5、P6与P7点作为下个循环处理的3个目标点、第一连续点和第二连续点,对应过程1里的P1,P2,P3的3个点,再循环进行1至6的操作,直到到循环处理中目标点、第一连续点或第二连续点再次出现P1。
8、将所有保留的已知点用线段连接,得到第一个简化多线段图形C。
9、简化多线段图形C中的点还是太多,再次按照过程1至过程7进行简化,得到第二个简化多线段图形D;第二个简化多线段图形D的已知点已经很少,符合需要,确定第二个简化多线段图形D为简化多线段图形。
在具体实现中,原始多线段图形的已知点较多,原始多线段图形的边相对圆滑,为曲线,如图5;经过多次简化的简化多线段图形中的已知点减少,简化多线段图形的边有已知点之间连接的线段构成,如图6。
10、使用Deluanay三角剖分算法,对得到简化的多线段图形D进行三角网划分,得到一系列的三角形组E,组E由3个三角形组成。
在具体实现中,简化多线段图形可以剖分成一个个点在简化多线段图形的边上的三角形,如图7。
11、先设定一个参考变量T=0。
12、遍历三角形组E里的每个3角形,计算其面积,其中,遍历第一三角形的面积A1大于参考变量T。
13、计算第一三角形质心P1。采用“水平/垂直交叉点数判别法”计算质心P1不在简化的多线段图形D内。遍历下一个三角形。
14、遍历第二三角形的面积A2大于参考变量T。
15、计算第二三角形质心P2。采用“水平/垂直交叉点数判别法”计算质心P2在简化的多线段图形D内。
16、标注点设为P2,同时参考变量T值重新设为A2。
17、遍历第三三角形的面积A3小于参考变量T。
遍历结束,三个三角形中只有第二三角形满足面积大于T,质心在多线段图形D内的要求,所以选定第二三角形质心P2为多线段图形的标注点。
在具体实现中,所有三角形遍历之后,必然得到面积最大,且质心在简化多线段图形中的三角形,取其质心的坐标点为标注点,如图8。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。
参照图2,示出了本申请一种地图标注的装置实施例的结构框图,具体可以包括:
图形简化模块201,用于按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形,包括:
目标点选取子模块,用于选取所述原始多线段图形上的任一已知点为目标点;
连续点选取子模块,用于从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
连续点判断子模块,用于判断所述第一连续点或第二连续点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用线段生成子模块;
线段生成子模块,用于形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
夹角判断子模块,用于判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则调用两点添加子模块;若否,则调用长度判断子模块;
两点添加子模块,用于将所述目标点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
长度判断子模块,用于判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则调用两点添加子模块,若否,则调用三点添加子模块;
三点添加子模块,用于将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
目标点判断子模块,用于将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用所述连续点选取子模块;
循环结束子模块,用于结束循环
在本申请的一种优选实施例中,所述原始多线段图形为封闭图形,图形中不包括其它封闭图形。
在本申请的一种优选实施例中,所述图形简化模块201具体可以包括以下子模块:
目标点选取子模块,用于选取所述原始多线段图形上的任一已知点为目标点;
连续点选取子模块,用于从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
连续点判断子模块,用于判断所述第一连续点或第二连续点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用线段生成子模块;
线段生成子模块,用于形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
夹角判断子模块,用于判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则调用两点添加子模块;若否,则调用长度判断子模块;
两点添加子模块,用于将所述目标点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
长度判断子模块,用于判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则调用两点添加子模块,若否,则调用三点添加子模块;
三点添加子模块,用于将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
目标点判断子模块,用于将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用所述连续点选取子模块;
循环结束子模块,用于结束循环。
在本申请的一种优选实施例中,所述图形简化模块101还可以包括以下子模块:
简化次数设定子模块,用于按照预设的简化次数m,针对原始多线段图形迭代m次执行所述图形简化模块,获得最终的简化多线段图形,其中,所述m大于或等于1。
三角形划分模块202,用于对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;
标注点确定模块203,用于遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。
在本申请的一种优选实施例中,所述标注点确定模块203具体可以包括以下子模块:
目标三角形选取子模块,用于选取一个未遍历的三角形为目标三角形;
面积计算子模块,用于计算所述目标三角形的面积;
面积判断子模块,用于判断所述目标三角形的面积是否小于面积参考变量,若是,则调用所述目标三角形选取子模块,若否,则执行质心计算子模块;
质心计算子模块,用于计算所述目标三角形的质心;
质心判断子模块,用于判断所述目标三角形的质心是否在所述简化多线段图形内,若是,则调用标注点选取子模块,若否,则调用所述目标三角形选取子模块;
标注点选取子模块,用于将所述目标三角形的面积作为新的面积参考变量,并将所述质心作为标注点,调用所述目标三角形选取子模块。
由于所述装置实施例基本相应于前述方法实施例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此就不赘述了。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种地图标注的方法和一种地图标注的装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种地图标注的方法,其特征在于,包括:
按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形,包括:
步骤S11、选取所述原始多线段图形上的任一已知点为目标点;
步骤S12、从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
步骤S13、判断所述第一连续点或第二连续点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则执行步骤S14;
步骤S14、形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
步骤S15、判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则执行步骤S16;若否,则执行步骤S17;
步骤S16、将所述目标点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S17、判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则执行步骤S16,若否,则执行步骤S18;
步骤S18、将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;转步骤S19;
步骤S19、将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述步骤S11初始选定的目标点,若是,则执行步骤S20;若否,则返回步骤S12;
步骤S20、结束循环;
对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;
遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。
2.如权利要求1所述的方法,其特征在于,所述按预置规则删减原始多线段图形中的已知点还包括:
按照预设的简化次数m,针对原始多线段图形迭代m次执行所述步骤S11-S20,获得最终的简化多线段图形,其中,所述m大于或等于1。
3.如权利要求2所述的方法,其特征在于,所述遍历n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点的步骤包括:
步骤S21、选取一个未遍历的三角形为目标三角形;
步骤S22、计算所述目标三角形的面积;
步骤S23、判断所述目标三角形的面积是否小于面积参考变量,若是,则返回执行步骤S21,若否,则执行步骤S24;
步骤S24、计算所述目标三角形的质心;
步骤S25、判断所述目标三角形的质心是否在所述简化多线段图形内,若是,则执行步骤S26,若否,则返回执行步骤S21;
步骤S26、将所述目标三角形的面积作为新的面积参考变量,并将所述质心作为标注点,返回步骤S21。
4.如权利要求3所述的方法,其特征在于,所述原始多线段图形为封闭图形,图形中不包括其它封闭图形。
5.一种地图标注的装置,其特征在于,包括:
图形简化模块,用于按预置规则删减原始多线段图形中的已知点,转换为简化多线段图形,包括:
目标点选取子模块,用于选取所述原始多线段图形上的任一已知点为目标点;
连续点选取子模块,用于从目标点开始,依次取两个连续的已知点:第一连续点与第二连续点;
连续点判断子模块,用于判断所述第一连续点或第二连续点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用线段生成子模块;
线段生成子模块,用于形成当前目标点和第一连续点之间的第一线段,以及,第一连续点和第二连续点之间的第二线段;
夹角判断子模块,用于判断所述第一线段和第二线段之间的夹角是否大于或等于预设的角度阈值,若是,则调用两点添加子模块;若否,则调用长度判断子模块;
两点添加子模块,用于将所述目标点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
长度判断子模块,用于判断所述第一线段和第二线段的长度是否小于或等于预设的长度阈值,若是,则调用两点添加子模块,若否,则调用三点添加子模块;
三点添加子模块,用于将所述目标点、第一连续点和第二连续点作为简化多线段图形中的点进行添加;然后调用目标点判断子模块;
目标点判断子模块,用于将所述第二连续点确定为新的目标点,判断所述新的目标点是否为所述目标点选取子模块初始选定的目标点,若是,则调用循环结束子模块;若否,则调用所述连续点选取子模块;
循环结束子模块,用于结束循环;
三角形划分模块,用于对所述简化多线段图形进行三角网划分,获得n个三角形;所述n为大于1的正整数;
标注点确定模块,用于遍历所述n个三角形,提取其中面积最大且质心位于所述简化多线段图形内的三角形,将所述三角形的质心确定为标注点。
6.如权利要求5所述的装置,其特征在于,所述图形简化模块还包括:
简化次数设定子模块,用于按照预设的简化次数m,针对原始多线段图形迭代m次执行所述图形简化模块,获得最终的简化多线段图形,其中,所述m大于或等于1。
7.如权利要求6所述的装置,其特征在于,所述标注点确定模块包括:
目标三角形选取子模块,用于选取一个未遍历的三角形为目标三角形;
面积计算子模块,用于计算所述目标三角形的面积;
面积判断子模块,用于判断所述目标三角形的面积是否小于面积参考变量,若是,则调用所述目标三角形选取子模块,若否,则调用质心计算子模块;
质心计算子模块,用于计算所述目标三角形的质心;
质心判断子模块,用于判断所述目标三角形的质心是否在所述简化多线段图形内,若是,则调用标注点选取子模块,若否,则调用所述目标三角形选取子模块;
标注点选取子模块,用于将所述目标三角形的面积作为新的面积参考变量,并将所述质心作为标注点,调用所述目标三角形选取子模块。
8.如权利要求7所述的装置,其特征在于,所述原始多线段图形为封闭图形,图形中不包括其它封闭图形。
CN 201110460492 2011-12-31 2011-12-31 一种地图标注的方法和装置 Expired - Fee Related CN102568302B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110460492 CN102568302B (zh) 2011-12-31 2011-12-31 一种地图标注的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110460492 CN102568302B (zh) 2011-12-31 2011-12-31 一种地图标注的方法和装置

Publications (2)

Publication Number Publication Date
CN102568302A CN102568302A (zh) 2012-07-11
CN102568302B true CN102568302B (zh) 2013-10-16

Family

ID=46413607

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110460492 Expired - Fee Related CN102568302B (zh) 2011-12-31 2011-12-31 一种地图标注的方法和装置

Country Status (1)

Country Link
CN (1) CN102568302B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978895B (zh) * 2014-04-03 2018-03-30 北京四维图新科技股份有限公司 一种地图线状注记的标记方法及装置
CN109427237B (zh) * 2017-09-04 2022-02-22 阿里巴巴(中国)有限公司 一种道路文字标注位置确定方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325475A (en) * 1992-09-09 1994-06-28 Massachusetts Institute Of Technology Computer method and apparatus for matching between line drawings
CN101183461A (zh) * 2007-11-16 2008-05-21 武汉大学 计算机制图中的面状要素配置方法
CN101533525A (zh) * 2008-03-12 2009-09-16 中国科学院计算技术研究所 一种点面叠加分析方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004078867A (ja) * 2002-08-16 2004-03-11 Eiji Kurihara 多角形の内外判定方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325475A (en) * 1992-09-09 1994-06-28 Massachusetts Institute Of Technology Computer method and apparatus for matching between line drawings
CN101183461A (zh) * 2007-11-16 2008-05-21 武汉大学 计算机制图中的面状要素配置方法
CN101533525A (zh) * 2008-03-12 2009-09-16 中国科学院计算技术研究所 一种点面叠加分析方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JP特开2004-78867A 2004.03.11
朱正国,柳荣其.地图中面状要素标注算法的设计与改进.《西华大学学报(自然科学版)》.2009,第28卷(第2期), *

Also Published As

Publication number Publication date
CN102568302A (zh) 2012-07-11

Similar Documents

Publication Publication Date Title
Chen et al. TrajCompressor: An online map-matching-based trajectory compression framework leveraging vehicle heading direction and change
CN103927934B (zh) 一种闭合围栏绘制的方法及系统
US10921136B2 (en) Efficient processing for vector tile generation
CN105550199A (zh) 一种基于多源地图的点位聚合方法及装置
CN103533501A (zh) 一种地理围栏生成方法
CN109241846A (zh) 遥感影像的时空变化估测方法、装置与存储介质
CN111858820A (zh) 用地性质识别方法、装置、电子设备及存储介质
CN106931974A (zh) 基于移动终端gps定位数据记录计算个人通勤距离的方法
CN102142215A (zh) 一种顾及位置与速度的地理信息自适应语音讲解方法
US20170186225A1 (en) Method and apparatus for generating a composite indexable linear data structure to permit selection of map elements based on linear elements
Wang et al. Adaptively exploring population mobility patterns in flow visualization
CN105589875A (zh) 一种多轨迹绘制的方法及装置
CN112395745B (zh) 地下暗河储集体地质模型建立方法、处理设备
CN102568302B (zh) 一种地图标注的方法和装置
CN105096589A (zh) 一种选取交通道路中代表性节点的方法、系统及客户端
US8554475B2 (en) Static and dynamic contours
CN108536695A (zh) 一种地理位置信息点的聚合方法以及装置
CN115525642A (zh) 逆地理编码方法、装置及电子设备
Du Using GIS for analysis of urban systems
US20150339837A1 (en) Method and apparatus for non-occluding overlay of user interface or information elements on a contextual map
CN110046210B (zh) 地图信息更新方法、装置、电子设备和存储介质
CN108810036B (zh) 地理位置信息的处理方法、装置与系统
KR100412023B1 (ko) 전자지도에서의 위치정보를 이용한 광고 표시 방법
CN103092878B (zh) 一种聚合展示中的要素智能规避的方法和装置
CN106153038A (zh) 一种建立地磁指纹地图的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20131016