一种地图注记的标注方法及装置与流程

文档序号:12736281阅读:448来源:国知局
一种地图注记的标注方法及装置与流程

本发明涉及电子地图技术领域,尤其涉及一种地图注记的标注方法及装置。



背景技术:

注记是地图中非常重要的组成部分,而它的自动配置是计算机地图制图和地理信息系统的关键问题之一。注记配置的一个重要原则是注记不能与注记表示的地物之外的其他地物之间相互冲突。

其中,现有技术使用注记的外包矩形与地物绘制位置进行空间关系判定,或者使用注记外包矩形与地物的外包矩形进行非精确的覆盖关系判定。然而,判定注记外包矩形与地物精确空间关系,十分消耗中央处理器(CPU),而且内存占用高;使用注记的外包矩形与地物的外包矩形判定覆盖关系,其误差较大,重复使用对象会被多次计算,消耗资源,并且不能有效判定具有一定宽度的地物,例如线状的道路。



技术实现要素:

为了克服现有技术中存在的上述问题,本发明的实施例提供了一种地图注记的标注方法及装置,将地图显示画布的像素范围映射到内存块,通过内存块中相应位置的标记来判定地图注记是否与地物绘制位置冲突,在保证绘制精度的前提下,简化了注记覆盖判定算法,提高了程序运行效率。

为了解决上述技术问题,本发明采用如下技术方案:

依据本发明实施例的一个方面,提供了一种地图注记的标注方法,其特征在于,包括:

将预设地图画布范围映射到一内存块中;

将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记;

从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置,其中,所述目标注记是表示第二地物的地图注记,且所述第二地物是所述预设地图画布范围内的除所述第一地物之外的其他地物;

在所述标注位置上标注所述目标注记。

其中,上述方案中,所述将预设地图画布范围映射到一内存块中,具体为:

利用所述内存块中的比特位表示所述预设地图画布范围内的N*N个像素方框,其中,N为正整数。

其中,上述方案中,所述将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记,包括:

获取所述预设地图画布范围内的第一地物所覆盖的区域;

根据所述第一地物所覆盖的区域,确定所述区域包括的像素方框;

根据所述区域包括的像素方框,在所述内存块中对应的比特位上进行标记。

其中,上述方案中,所述从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置,包括:

确定所述目标注记的多个预设位置在所述内存块中对应的比特位;

分别判断多个所述预设位置在所述内存块中对应的比特位是否进行了标记;

将未进行标记的比特位对应的预设位置作为所述标注位置。

依据本发明实施例的另一个方面,还提供了一种地图注记的标注装置,包括:

映射模块,用于将预设地图画布范围映射到一内存块中;

标记模块,用于将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记;

选择模块,用于从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置,其中,所述目标注记是表示第二地物的地图注记,且所述第二地物是所述预设地图画布范围内的除所述第一地物之外的其他地物;

标注模块,用于在所述标注位置上标注所述目标注记。

其中,上述方案中,所述映射模块具体用于:

利用所述内存块中的比特位表示所述预设地图画布范围内的N*N个像素方框,其中,N为正整数。

其中,上述方案中,所述标记模块包括:

获取单元,用于获取所述预设地图画布范围内的第一地物所覆盖的区域;

第一确定单元,用于根据所述第一地物所覆盖的区域,确定所述区域包括的像素方框;

标记单元,用于根据所述区域包括的像素方框,在所述内存块中对应的比特位上进行标记。

其中,上述方案中,所述选择模块包括:

第二确定单元,用于确定所述目标注记的多个预设位置在所述内存块中对应的比特位;

判断单元,用于分别判断多个所述预设位置在所述内存块中对应的比特位是否进行了标记;

第三确定单元,用于将未进行标记的比特位对应的预设位置作为所述标注位置。

本发明实施例的有益效果是:

本发明实施例的地图注记的标注方法及装置,将所需要绘制的地图画布的范围映射到一内存块中,并将地图画布范围内的地物所覆盖的区域在该内存块中相应位置进行标记,进而通过内存块中相应位置的标记来判定地图注记是否与地物绘制位置冲突,在保证绘制精度的前提下,简化了注记覆盖判定算法,提高了程序运行效率。

附图说明

图1表示本发明第一实施例的地图注记的标注方法流程图;

图2表示本发明第二实施例的地图注记的标注装置的结构框图

图3表示本发明第三实施例的地图注记的标注装置的结构框图;

图4表示地图注记与地物位置相冲突的示意图;

图5表示地图注记与地物位置不相冲突的示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

第一实施例

依据本发明实施例的一个方面,提供了一种地图注记的标注方法,该方法首先,将预设地图画布范围映射到一内存块中;接着,将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记;再次,从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置;最后,在所述标注位置上标注所述目标注记。

因此,本发明实施例的地图注记的标注方法,对预设画布范围内的地物所覆盖的区域,在内存块中对应位置进行标记,从而使得在对地图注记进行标注时,寻找内存块中未进行标记的位置,进而使得地图注记的标记区域与地物所覆盖区域不会冲突。

如图1所示,该方法包括:

步骤S11、将预设地图画布范围映射到一内存块中。

其中,预设地图画布范围指的是进行地图注记标注的一个地图区域。在这个地图区域上包括各个建筑物、各条道路以及其他地物。

在本发明实施例的地图注记的标注方法中,将预设地图画布范围映射到一内存块中。即利用内存块中的比特(BIT)位表示预设地图画布范围内的N*N个像素方框,其中,N为正整数。例如,1024*1024个像素的画布范围,使用256*256个BIT位,即32*32个字节表达,每个BIT位表示实际绘制画布上的4*4个像素的方框。

步骤S13、将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记。

地图画布范围内的建筑、道路等地物均具有各自的覆盖区域。由于在步骤S11中预设地图画布范围已经映射到了一内存块中。当在该内存块中,用一内 存块的BIT位表示预设地图画布范围的N*N个像素方框时,可首先获取预设地图画布范围内的第一地物所覆盖的区域;然后,根据第一地物所覆盖的区域,确定该区域包括的像素方框,即该区域包括多少个N*N像素方框;最后,根据该区域包括的像素方框,找到内存块中这些像素方框对应的BIT位,并在这些BIT位上进行标记,例如,将第一地物的覆盖区域包括的像素方框在内存块中对应的BIT位设置为1。当然,可以理解的是,对于在对BIT为进行标记时,具体标记为什么,本发明实施例的地图注记的标注方法,并不局限于此。

步骤S15、从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置。

其中,所述目标注记是表示第二地物的地图注记,且所述第二地物是所述预设地图画布范围内的除所述第一地物之外的其他地物。

如图5所示,“B道路”是一个地图注记,该地图注记标注在了其所表示的道路上。也就是说,所要标记的目标注记的标注位置可以和其表示的地物的覆盖区域相重叠,但是,目标注记的标注位置不能和其表示的地物之外的其他地物的覆盖区域相重叠。否则,如图4所示,“A大厦”这个地图注记的标注位置和B道路的覆盖区域之间有重叠部分,这样地图注记的标注会很混乱,无法清楚地说明哪个地图注记表示的是哪一个地物。

另外,由于地图注记由字体、字大或字级、字色、字隔及排列方向以及位置,五个因素构成。用不同字体和颜色区分不同事物;用注记的大小等级反映事物分级以及在图上的重要程度;用注记位置以及不同字隔和排列方向表现事物的位置、伸展方向和分布范围。地图注记主要由照相排字或激光排字而得。注记设计和剪贴,要求字形工整、美观、主次分明、易于区分、位置正确。

因此,地图注记的标注需要满足上述五个因素。其中,为了寻找地图注记的合适标注位置,一般需要预先设定几个位置,例如地图注记所表示的地物的上、下、左、右这四个位置等。

由于在步骤S13中,各个地物所覆盖的范围已在内存块中的对应位置进行了标记。因此,在从目标注记的多个预设位置中选择标注位置时,只需要确定目标注记的多个预设位置在内存块中对应的BIT位;然后,分别判断多个预设位置在内存块中对应的BIT位是否进行了标记,从而找到未进行标记的BIT 位对应的预设位置,并将其作为目标注记的标注位置即可。

例如,当内存块中的BIT位在需要标记时,均设置为1,则根据目标注记的多个预设位置(例如:右、上、下、左等),判定预设位置对应的内存块中BIT位中是否有为1,如果为1则表示该位置已经被占用(即表示如图4所示的A大厦的一个预设位置包括的像素方框与B道路覆盖区域的像素方框有重叠),否则该位置可以被使用(即表示如图5所示的A大厦的另一个预设位置包括的像素方框与B道路覆盖区域的像素方框没有重叠)。

步骤S17、在所述标注位置上标注所述目标注记。

通过步骤S15中找到目标注记的标注位置,在该位置处绘制目标注记即可。

因此,本发明实施例的地图注记的标注方法,将地图显示画布的像素范围映射到内存块,使用内存的BIT位表示N*N像素范围。通过BIT位的值判定注记是否与地物绘制位置冲突。所以,即使是具有一定宽度的地物,例如线状的道路,也可以有效判定目标注记与该类地物是否具有位置冲突。

综上所述,本发明实施例的地图注记的标注方法,在保证绘制精度的前提下,简化了注记覆盖判定算法,并提高了程序运行效率。

第二实施例

依据本发明实施例的另一个方面,还提供了一种地图注记的标注装置,如图2所示,该装置200包括:

映射模块201,用于将预设地图画布范围映射到一内存块中;

标记模块203,用于将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记;

选择模块205,用于从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置,其中,所述目标注记是表示第二地物的地图注记,且所述第二地物是所述预设地图画布范围内的除所述第一地物之外的其他地物;

标注模块207,用于在所述标注位置上标注所述目标注记。

第三实施例

依据本发明实施例的另一个方面,提供了一种地图注记的标注装置,如图3所示,该装置200包括:

映射模块201,用于将预设地图画布范围映射到一内存块中;

标记模块203,用于将所述预设地图画布范围中的第一地物所覆盖的区域在所述内存块中进行标记;

选择模块205,用于从所需标注的目标注记的多个预设位置中,选出一个在内存块中的对应位置上未进行标记的预设位置作为标注位置,其中,所述目标注记是表示第二地物的地图注记,且所述第二地物是所述预设地图画布范围内的除所述第一地物之外的其他地物;

标注模块207,用于在所述标注位置上标注所述目标注记。

可选地,所述映射模块201具体用于:

利用所述内存块中的比特位表示所述预设地图画布范围内的N*N个像素方框,其中,N为正整数。

可选地,所述标记模块203包括:

获取单元2031,用于获取所述预设地图画布范围内的第一地物所覆盖的区域;

第一确定单元2032,用于根据所述第一地物所覆盖的区域,确定所述区域包括的像素方框;

标记单元2033,用于根据所述区域包括的像素方框,在所述内存块中对应的比特位上进行标记。

可选地,所述选择模块205包括:

第二确定单元2051,用于确定所述目标注记的多个预设位置在所述内存块中对应的比特位;

判断单元2052,用于分别判断多个所述预设位置在所述内存块中对应的比特位是否进行了标记;

第三确定单元2053,用于将未进行标记的比特位对应的预设位置作为所述标注位置。

以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1