一种线实体的存储方法、装置及存储系统与流程

文档序号:15095848发布日期:2018-08-04 14:32阅读:来源:国知局

技术特征:

1.一种线实体的存储方法,其特征在于,包括:

S1:将实体坐标集按尺度遗漏规则划分成多层点集,并将每层存储空间均等划分成多个基本单元;

S2:根据设定阈值MAXPN,判断每层的点密度是否过大,如果点密度过大,则进行调整存储。

2.根据权利要求1所述的线实体存储方法,其特征在于,所述步骤S1包括以下步骤:

S101:设线实体L的坐标集有N个点坐标,分别为[(X0,Y0),(X1,Y1),….,(XN-1,YN-1)],设线实体L最小外接矩形边界为B,其四角坐标分别为(minX,minY),(minX,maxY),(maxX,maxY),(maxX,minY),其中minX=Min(X0,….,XN-1),minY=Min(Y0,…,YN-1),maxX=Max(X0,…,XN-1),maxY=Max(Y0,…,YN-1);

S102:按层划分不同的基本单元:将所述线实体在多个层进行存储,针对每一层,以上述最小外接矩形边界B为边界,分别沿X轴和Y轴将区域B均分成多个基本单元;

S103:将线实体L坐标集的N个点[(X0,Y0),(X1,Y1),….,(XN-1,YN-1)]依次存放入相应层,满足每一层中的任意两个相邻的点都不在该层的一个基本单元中。

3.根据权利要2所述的线实体存储方法,其特征在于,所述步骤S102中以上述最小外接矩形边界B为边界,分别沿X轴和Y轴将区域B均分成多个基本单元包括:

第1层以B为边界,将区域B分别沿X轴和Y轴均分为k等份,每份基本单位大小为(((maxX-minX)/((2^0)*k)),((maxY-minY)/((2^0)*k)));第2层以B为边界,将区域B分别沿X轴和Y轴均分为2k等份,每份基本单位大小为(((maxX-minX)/((2^1)*k)),((maxY-minY)/((2^1)*k)));...;以此推论,第i层以B为边界,将区域B分别沿X轴和Y轴均分为(2^(i-1))*k等份,每份基本单位大小为(((maxX-minX)/((2^(i-1))*k)),((maxY-minY)/((2^(i-1))*k))),以下简写为(LiX,LiY),其中i=1,...,D,D表示存储的层数,k为设定自然数。

4.根据权利要求2所述的线实体存储方法,其特征在于,所述步骤S103中将线实体L坐标集的N个点[(X0,Y0),(X1,Y1),….,(XN-1,YN-1)]依次存放入相应层包括:

依次存放线实体L坐标中每一个点(Xn,Yn),n=0,1,...,N-1;对于每一个点,从第1层开始,逐层判断该层是否能够存放该点,判断条件为:如果第i层不存在点,则直接将点(Xn,Yn)放入Li层,如果第i层已经存在节点,则判断点(Xn,Yn)是否满足[Xn/LiX]!=[Xm/LiX]或[Yn/LiY]!=[Ym/LiY];[·]表示对括号中数值取整,i为层序号,i=1,...,D,LiX、LiY分别表示第i层中每个基本单元的长度和宽度,Xm、Ym为点(Xn,Yn)存放之前,最后放在第i层上的点坐标;如果满足该条件说明(Xn,Yn)与该层中相邻的上一个节点不在一个基本单元中,则将点(Xn,Yn)存入第i层,如果不满足,说明(Xn,Yn)与该层中相邻的上一个节点在一个基本单元中,则需要将点(Xn,Yn)存放如下一层即第i+1层,存储时判断条件和第i层的判断条件相同,依次类推,直至存储完线实体的所有N个点。

5.根据权利要求1所述的线实体存储方法,其特征在于,所述步骤S2包括:

针对每一层Li(i=1,2,...,D),执行以下调整存储过程:

S201:统计第i层Li中的点个数LPN,如果LPN小于等于所述设定阈值MXPN,直接按坐标顺序进行存储;否则如果LPN大于所述设定阈值MAXPN时,设定划分基础区域DB为第i层的区域B,转到步骤S202;

S202:以划分基础区域DB的中心点为原点,分别按X,Y轴方向对点集外接矩形进行切割,生成新的四个象限,依次对划分基础区域DB中的第j(j=1,2,...,LPN)个点(Xj,Yj)判断是否满足条件1:(Xj-1,Yj-1),(Xj,Yj),(Xj+1,Yj+1)在同一象限;若满足条件1,则将点(Xi,LYi)放入其自身所在象限;若不满足条件1,则将点(Xj,Yj)存入跨象限部分,其中跨象限部分是新增加的不同于第一二三四象限的第五部分;其中,当j-1<0时默认Xj-1=Xj,Yj-1=Yj,当j+1>LPN时默认Xj+1=Xj,Yj+1=Yj,层内网格划分完成;

S203:对于划分后的四个网格(第一二三四象限),分别判断每个网格内的点个数LPN是否大于所述设定阈值MXPN,如果LPN小于等于所述设定阈值MXPN,直接按坐标顺序进行存储;否则如果LPN大于所述设定阈值MAXPN时,设定划分基础区域DB为该网格区域,转到步骤S202。

6.根据权利要求1所述的线实体存储方法,其特征在于,还包括以下步骤:

S3:根据当前调用参数,判断实体每块边界是否相交或包含,以及当前边界是否能满足显示比例,如果满足则调用。

7.根据权利要6所述的线实体存储方法,其特征在于,所述当前调用参数可以为对应数据边界和/或比例尺。

8.一种线实体的存储装置,其特征在于,包括:

分层存储单元,将实体坐标集按尺度遗漏规则划分成多层点集,并将每层存储空间均等划分成多个基本单元;

密度调整单元,根据设定阈值MAXPN,判断每层的点密度是否过大,如果点密度过大,则进行调整存储。

9.根据权利要求8所述的线实体的存储装置,其特征在于,所述分层存储单元执行以下步骤:

S101:设线实体L的坐标集有N个点坐标,分别为[(X0,Y0),(X1,Y1),….,(XN-1,YN-1)],设线实体L最小外接矩形边界为B,其四角坐标分别为(minX,minY),(minX,maxY),(maxX,maxY),(maxX,minY),其中minX=Min(X0,….,XN-1),minY=Min(Y0,…,YN-1),maxX=Max(X0,…,XN-1),maxY=Max(Y0,…,YN-1);

S102:按层划分不同的基本单元:将所述线实体在多个层进行存储,针对每一层,以上述最小外接矩形边界B为边界,分别沿X轴和Y轴将区域B均分成多个基本单元;

S103:将线实体L坐标集的N个点[(X0,Y0),(X1,Y1),….,(XN-1,YN-1)]依次存放入相应层,满足每一层中的任意两个相邻的点都不在该层的一个基本单元中。

10.根据权利要9所述的线实体的存储装置,其特征在于,所述步骤S102中以上述最小外接矩形边界B为边界,分别沿X轴和Y轴将区域B均分成多个基本单元包括:

第1层以B为边界,将区域B分别沿X轴和Y轴均分为k等份,每份基本单位大小为(((maxX-minX)/((2^0)*k)),((maxY-minY)/((2^0)*k)));第2层以B为边界,将区域B分别沿X轴和Y轴均分为2k等份,每份基本单位大小为(((maxX-minX)/((2^1)*k)),((maxY-minY)/((2^1)*k)));...;以此推论,第i层以B为边界,将区域B分别沿X轴和Y轴均分为(2^(i-1))*k等份,每份基本单位大小为(((maxX-minX)/((2^(i-1))*k)),((maxY-minY)/((2^(i-1))*k))),以下简写为(LiX,LiY),其中i=1,...,D,D表示存储的层数,k为设定自然数。

11.根据权利要求9所述的线实体的存储装置,其特征在于,所述步骤S103中将线实体L坐标集的N个点[(X0,Y0),(X1,Y1),….,(XN-1,YN-1)]依次存放入相应层包括:

依次存放线实体L坐标中每一个点(Xn,Yn),n=0,1,...,N-1;对于每一个点,从第1层开始,逐层判断该层是否能够存放该点,判断条件为:如果第i层不存在点,则直接将点(Xn,Yn)放入Li层,如果第i层已经存在节点,则判断点(Xn,Yn)是否满足[Xn/LiX]!=[Xm/LiX]或[Yn/LiY]!=[Ym/LiY];[·]表示对括号中数值取整,i为层序号,i=1,...,D,LiX、LiY分别表示第i层中每个基本单元的长度和宽度,Xm、Ym为点(Xn,Yn)存放之前,最后放在第i层上的点坐标;如果满足该条件说明(Xn,Yn)与该层中相邻的上一个节点不在一个基本单元中,则将点(Xn,Yn)存入第i层,如果不满足,说明(Xn,Yn)与该层中相邻的上一个节点在一个基本单元中,则需要将点(Xn,Yn)存放如下一层即第i+1层,存储时判断条件和第i层的判断条件相同,依次类推,直至存储完线实体的所有N个点。

12.根据权利要求8所述的线实体的存储装置,其特征在于,所述密度调整单元执行以下步骤:

针对每一层Li(i=1,2,...,D),执行以下调整存储过程:

S201:统计第i层Li中的点个数LPN,如果LPN小于等于所述设定阈值MXPN,直接按坐标顺序进行存储;否则如果LPN大于所述设定阈值MAXPN时,设定划分基础区域DB为第i层的区域B,转到步骤S202;

S202:以划分基础区域DB的中心点为原点,分别按X,Y轴方向对点集外接矩形进行切割,生成新的四个象限,依次对划分基础区域DB中的第j(j=1,2,...,LPN)个点(Xj,Yj)判断是否满足条件1:(Xj-1,Yj-1),(Xj,Yj),(Xj+1,Yj+1)在同一象限;若满足条件1,则将点(Xi,LYi)放入其自身所在象限;若不满足条件1,则将点(Xj,Yj)存入跨象限部分,其中跨象限部分是新增加的不同于第一二三四象限的第五部分;其中,当j-1<0时默认Xj-1=Xj,Yj-1=Yj,当j+1>LPN时默认Xj+1=Xj,Yj+1=Yj,层内网格划分完成;

S203:对于划分后的四个网格(第一二三四象限),分别判断每个网格内的点个数LPN是否大于所述设定阈值MXPN,如果LPN小于等于所述设定阈值MXPN,直接按坐标顺序进行存储;否则如果LPN大于所述设定阈值MAXPN时,设定划分基础区域DB为该网格区域,转到步骤S202。

13.根据权利要求8所述的线实体的存储装置,其特征在于,还包括以下单元:

调用单元,根据当前调用参数,判断实体每块边界是否相交或包含,以及当前边界是否能满足显示比例,如果满足则调用。

14.根据权利要13所述的线实体的存储装置,其特征在于,所述当前调用参数可以为对应数据边界和/或比例尺。

15.一种线实体的存储系统,包括处理器以及存储设备,处理器执行所述权利要求1-7中任一项的线实体存储方法,将线实体内容存储到存储设备中。

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