一种网络地图点标注优化显示方法

文档序号:2585951阅读:466来源:国知局
专利名称:一种网络地图点标注优化显示方法
技术领域
本发明涉及一种将网络地图复杂不规则地理位置的标注点按集合算法实现规则排列优化显示的方法,属于地理信息系统领域。
背景技术
随着地图服务的推广,点标注功能在众多领域得到了广泛的应用。然而,在地图缩放过程中,由于网络地图标注点位置信息录入的不确定性和复杂性,使得标注点位置无规律的分布在地图上,经常会出现互相重叠的现象,影响了地图的美观和操作。针对这种复杂标注点互相重叠问题,目前解决的方法是允许局部标注点相互遮盖或者是通过按标注点信息重要性加权隐藏掉一部分信息。这两种方法在功能上都有缺陷。首先,标注相互遮盖影响了标注在地图上显示的效果和操作,并且针对同一个地理位置的多个标注无法同时显示。其次,通过加权来隐藏部分标注的解决方法虽然可以解决地图标注互相遮盖的问题,但却丢失了大量的信息。因此,如何避免标注点在显示时不产生遮盖,是网络地图服务亟待解决的问题。

发明内容
本发明的目的是针对现有技术的不足,提供一种将网络地图复杂不规则地理位置的点标注按特定算法实现规则排列优化显示的方法,以解决在网络地图服务过程中复杂标注点重叠显示的问题。本发明的核心思想是以其中一个标注点为基准点,对其八临域的标注点做数学判断,如有重叠的标注点则按照集合算法对其进行微小的移动,致使达到最佳显示效果。依次遍历屏幕中其他标注点,完成每个点的优化显示,直至遍历结束。以下用集合的方式表示标注点算法的实现过程。本发明的具体步骤为(1)构建标注点数据集定义已知标注点和待求点的数据集,具体方法是令原始标注点的集合为A = Ia1, B2AfiiJ,位置微移后标注点的集合(结果集) 为B= {B1; B2J3…4},B中每个元素可表示为4= Ib1 ,IvbfbJ,其中k表示标注点相互重叠后所分组的个数,m表示每组重叠的标注点的个数。\表示标注点在计算机屏幕坐标系的投影面,bm表示标注点微移后在计算机屏幕坐标系的投影面,集合A中所有元素的投影面表示为a',(a' eA),集合B中的所有元素的投影面表示为b',(b' e B)。如图1 所示,左图中所有非阴影矩形即为a',右图中所有阴影矩形即为b'。设f(t)为标注点微移函数,Ck为参照点的集合,当A为全集时,Ckc为Ck的补集。(2)选取基准标注点选取标注点的基准点,判断该基准点是否在结果集中,初始结果集为空。如在结果集中程序继续向下执行,如不在结果集中则重新选取下一个基准点。
(3)判定并处理重叠的标注点获取与基准点相重叠的待定点,按照函数规则,把待定点移动到指定的候选位置。 判断移动后的待定点是否与其他点有重叠。如无重叠,程序继续向下执行,如有重叠,则移动候选点到下一个候选位置。算法原理和过程是①标注点算法原理令Ck = IaJ,Ckc = Ia1,... _” ak+1...aj (A = Ck+Ckc),如果 Eik Π ειη 乒 Φ 或 b' Π Φ,可得出 bn = f(an)jp & = {ak,... f (an)}。如果 Eik Π ειη 乒 Φ,那么把知放入Ck集合中,使得知e Ck,把参照点从集合A中移除,即A = A-Ck。②相交的判定方法其中% η知兴φ或b' η φ表示待判定标注点与参照标注点或已移动标注点相交,即有设标记点的屏幕坐标为(xp,yp),地理坐标为(xg,yg)。Xp = XgX 2level (level 为地图比例尺)yp = ygX2level (level 为地图比例尺)设标注点的长为1个像素,宽为w个像素,在地理坐标中的长为,宽为Ayg,带入上式可得Δ Xg = l/2levelAyg = w/2level设待判定标注与参考标注的几何中心地理坐标为(xgl,ygl),(xg2, yg2),已移动标注为的几何中心地理坐标为(xg3,yg3)。当且仅当|Xg2igl| < 且|yg2-ygl| < Δ yg时,待判定标注与参考标注相交。同理,当且仅当I I < Δ \且I yg3-ygl | < Δ yg时,待判定标注与已移动标注相交。③标注点微移函数标注点微移函数f(t)是一个分段函数,当标注点重叠时,依次判断标注点的候选移动位置是否被占用,如没占用使用其候选位置,如占用判定下一个候选位置,其算法为令t的投影面为t',λ表示标注点移动后的位置,λ ‘表示λ所占区域的投影面。标注点微移函数可表示为f(t) = λ其中,t'η (a' Ub' ) = Φ,λη = g(Xgn,ygn)。(4)储存已移动点并递归调用该算法把移动后的点放入结果集中,判断所有点的遍历是否结束。如是,则程序终止运行,如不是,则选取下一个标注点的基准点,程序跳转回第一步。其流程图如图3所示。本发明的优点是提高了标注点在网络地图中的显示效果,使得空间位置中临近点或同一地点的多个标注点可以自动的按规则排列,解决了标注点在显示时出现互相遮盖的问题。


图1为本发明标注点移动前后对比效果示意图。
图2为本发明标注点微移优化函数模型图。图3为本发明实施例标注点微移算法流程图。图4为本发明实施例标注点优化前后对比效果图。
具体实施例方式实施例本发明针对网络地图环境下点标注显示问题编写了优化算法。本算法的研究旨在解决地图中复杂标注点重叠显示问题,为了提高网络计算速度,每组互相重叠的的标注点的个数尽量少于10个。本实施例选择桂林附近地区地图的小范围区域。具体实施步骤和程序代码如下(1)构建标注点数据集定义已知标注点、待求标注点的集合,使已知标注点的数量等于待求标注点的数量。为集合A = {ai,a2,ivan}赋初值,本实施例选取10对经纬度坐标点,赋值情况如下B1 = (25. 1742300000,110. 0978000000)a2 = (25. 1775600000,110. 8267000000)a3 = (25. 6353400000,110.4945000000)a4 = (25.4485600000,110.9384000000)a5 = (25.5557800000,110. 4663000000)a6 = (25. 3194400000,110.1195000000)a7 = (25. 8468400000,110.2118000000)a8 = (25.9318900000,110. 5983000000)a9 = (25. 2303600000,110.7347000000)a10 = (25. 2574500000,110. 2046000000)(2)选取基准标注点选取标注点的基准点,判断该基准点是否在结果集中,初始结果集为空。如在结果集中程序继续向下执行,如不在结果集中则重新选取下一个基准点。本实施例把%作为初始基准点,按下标大小递增的顺序依次执行,到截止。(3)判定并处理重叠的标注点获取与基准点相重叠的待定点,按照函数规则,把待定点移动到指定的候选位置。 判断移动后的待定点是否与其他点有重叠。如无重叠,程序继续向下执行,如有重叠,则移动候选点到下一个候选位置。当判定标注点重是否叠时,由上述可知当且仅当|Xg2igl| <八\且|yg2-ygl < Ayg时,待判定标注与参考标注相交。同理,当且仅当I ^3Igl I < 且|yg3-ygl| < Ayg 时,待判定标注与已移动标注相交。把集合A= Ia1, a2, … }中的元素的坐标值依次带入这两个不等式,可判定标注点的重叠情况。标注点微移函数f(t)是一个分段函数,当标注点重叠时,依次判断标注点的候选移动位置是否被占用,如没占用使用其候选位置,如占用判定下一个候选位置,其表达形式如下令t的投影面为t',λ表示标注点移动后的位置,λ ‘表示λ所占区域的投影
当1 < η < 10时,由上述可知标注点微移函数可表示为
权利要求
1. 一种网络地图点标注优化显示方法,其特征在于具体步骤为(1)构建标注点数据集定义已知标注点和待求点的数据集,具体方法是令原始标注点的集合为A= Ia1,a2, …an},位置微移后标注点的集合(结果集)为B ={B1; B2J3…4},B中每个元素可表示为4= Ib1, IvbfbJ,其中k表示标注点相互重叠后所分组的个数,m表示每组重叠的标注点的个数表示标注点在计算机屏幕坐标系的投影面,bm表示标注点微移后在计算机屏幕坐标系的投影面,集合A中所有元素的投影面表示为a' , (a' eA),集合B中的所有元素的投影面表示为b',(b' e B);设f(t)为标注点微移函数,Ck为参照点的集合,当A为全集时,Ckc为Ck的补集;(2)选取基准标注点选取标注点的基准点,判断该基准点是否在结果集中,初始结果集为空;如在结果集中程序继续向下执行,如不在结果集中则重新选取下一个基准点;(3)判定并处理重叠的标注点获取与基准点相重叠的待定点,按照函数规则,把待定点移动到指定的候选位置;判断移动后的待定点是否与其他点有重叠;如无重叠,程序继续向下执行,如有重叠,则移动候选点到下一个候选位置;算法原理和过程是①标注点算法原理令 Ck= {ak},Ckc= {a^—a^^a^ — aj (A = Ck+Ckc), ak Π Φ 或 b' Dan^ Φ , 可得出bn= f (an),即4 = {ak,... f (an)};如果Eik Π 乒Φ,那么把an放入Ck集合中,使得知e Ck,把参照点从集合A中移除,即A = A-Ck ;②相交的判定方法其中% Π Φ或b' Π Φ表示待判定标注点与参照标注点或已移动标注点相交,即有设标记点的屏幕坐标为(xp,yp),地理坐标为(xg,yg);Xp = xgX2level ,其中level为地图比例尺;Yp = ygX2level ,其中devel为地图比例尺;设标注点的长为1个像素,宽为w个像素,在地理坐标中的长为Axg,宽为Δν带入上式可得Axg = l/2levelAyg = w/2level设待判定标注与参考标注的几何中心地理坐标为(xgl,ygl),(xg2,yg2),已移动标注为的几何中心地理坐标为(xg3,yg3);当且仅当I^-XglI < 且|yg2-ygl| < Ayg时,待判定标注与参考标注相交;同理,当且仅当I ^3Igl I < 且|yg3-ygl| < Ayg时,待判定标注与已移动标注相交;③标注点微移函数标注点微移函数f(t)是一个分段函数,当标注点重叠时,依次判断标注点的候选移动位置是否被占用,如没占用使用其候选位置,如占用判定下一个候选位置,其算法为令t的投影面为t',λ表示标注点移动后的位置,λ ‘表示λ所占区域的投影面; 标注点微移函数表示为f(t) = λ其中,t' η (a' Ub' ) = Φ,λη = g(xgn,ygn); (4)储存已移动点并递归调用该算法把移动后的点放入结果集中,判断所有点的遍历是否结束;如是,则程序终止运行,如不是,则选取下一个标注点的基准点,程序跳转回第一步。
全文摘要
本发明公开了一种网络地图点标注优化显示方法。该方法属于地理信息系统领域。在地图缩放过程中,由于网络地图标注点位置信息的不确定性和不规则性,使得标注点位置无规律的分布在地图上,经常会出现互相重叠的现象。本发明提出一种点标注显示优化方法,使标注点可以自动判断是否重叠并通过微移函数调整其显示效果,解决了网络地图中标注点互相重叠时的显示问题。
文档编号G09B29/00GK102411613SQ201110331780
公开日2012年4月11日 申请日期2011年10月25日 优先权日2011年10月25日
发明者孟城, 李婷, 李景文, 苏浩, 苏鸿 申请人:广西科技信息网络中心, 桂林理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1