全球六边形离散格网上的矢量数据绘制方法

文档序号:6653990阅读:433来源:国知局
专利名称:全球六边形离散格网上的矢量数据绘制方法
技术领域
本发明属于地球空间信息技术领域,涉及一种用于全球六边形离散格网上的矢量 数据绘制方法。
背景技术
纸质地图作为地球空间信息的载体已有几千年的历史。步入信息社会,尽管存储 介质从纸张升级为磁盘、光盘,检索和使用方式从人工变为自动,但空间信息组织的理论基 础却从未改变,在三维笛卡尔坐标系、地图投影坐标系或地理坐标系下表达空间数据的模 式沿用至今。随着空间数据获取手段的不断提高,人们关注的区域逐渐从局部扩展至全球,传 统空间数据表达方法暴露出一些不足
1.采用空间连续的笛卡尔坐标表示地理位置并非最佳,因为计算机更适合处理离散化 的二进制编码,而非空间连续的浮点数;
2.基于地图投影的方式表示空间数据并不合适,在信息时代我们有能力按照地球本来 的面目建模;
3.地理坐标系在理论上并不完善,在两极存在畸点,不利于空间数据表达;
4.采用理想的几何概念(如没有形状、面积的点)表示现实中的地理实体不符合实际, 应给出精度信息;
5.空间数据的表达缺乏对尺度的直接支持,对数据整合不利。由此可见,传统空间数据表达方法已不能很好地满足全球海量空间数据多分辨率 管理和应用的需求,有必要建立适合计算机处理的表达方法。全球离散格网采用特定方法将地球均勻离散化,形成无缝无叠的多分辨率格网层 次结构,采用格网单元的地址编码代替传统地理坐标参与数据操作,其优势体现在
1.以整个地球为研究对象,更适合处理全球尺度的问题;
2.对地球空间的同构离散化,有助于数据统一建模、按需重组;
3.格网具有层次性,在结构上支持多尺度数据表达;
4.数据操作采用编码运算完成,更适合计算机处理。因此,我们认为全球离散格网为海量空间数据的有效表达提供了新方法,有望弥 补当前应用的不足。研究和分析表明,在三角形、四边形和六边形这三种能够规则覆盖平面的格网中, 六边形格网的结构最紧凑,具有如下优点
1.以最小的平均误差量化平面,具有最大的角分辨率;
2.有别于三角形格网或四边形格网,六边形格网单元一致相邻;
3.在表达相同信息量的前提下,六边形格网比四边形格网约节省约14%的采样量。显然,研究基于全球六边形离散格网的空间数据表达方法不仅具有重要的理论意 义,而且具有很高的实用价值。而从目前公开发表的文献来看,绝大多数成果关注的仅是平
6第二步对于任意两个节点^和!^竹之间进行六边形格网上的直线绘制令』
的坐标为仏F^1的坐标为(H),计算Δ; =absa- 和Ai= abs(A-L':
第三步根据^与^、惑I与A/的大小判断直线绘制的方向,并按照/方向或/方向逐一 填充单元绘制;
第四步按照第二步的方法,将矢量数据所有节点间直线绘制的六边形单元全部激活。
进一步的,所述第三步根据S4,与5;、i|与Δ/的大小判断直线绘制的方向,具体步骤 如下
(1)、丨A.= Sj,调用步骤(2);否则,初始化变量if = -dl- /,转到步骤(5);
(2)当M> Δ/,初始化变量flf =爾II,转到步骤(3);否则,初始化变量 = -Δ/ ,转到步骤(4);
(3)当|<
1 = 14- S1J = / + S
时,绘制过程结束;
(4)当
i i + Sjf/ = J + S
时,绘制过程结束;
(5)当k>
时,
r,令I
时,
r,令I
如果d < O’贝u !=4
i,激活fig/丨,转到步骤(3);当
Mi,如果 ckO,则 / = / ,激活转到步骤(4);当
< β,贝丨J I = I-SiJ = β -l·激活戟 +i+J+h转到步骤(5);当i
否则
否则
否则
> -M -Δ/时,如果
= ι 4*S1J = j ^Sni =d- 2M,令J = I _ 时,绘制过程结束。 本发明的面状矢量数据在平面六边形格网上的绘制方法步骤如下
第一步,根据面状实体的节点坐标范围,确定面状实体在单元斜坐标系上的范围; 第二步,标定节点利用与单元斜坐标系的ι轴平行的扫描线计算与面状数据任意两个
面六边形格网上栅格数据的表达和绘制,对全球六边形离散格网上矢量数据的表达和绘制 尚未提出较好的解决方法。

发明内容
本发明的目的是提供一种全球六边形离散格网上的矢量数据绘制方法,以解决全 球离散格网上大范围矢量绘制过程中的跨面难题,克服现有方法难以在全球六边形离散格 网上绘制矢量数据的问题。本发明的线状矢量数据在平面六边形格网上的绘制方法步骤如下 第一步在平面六边形离散格网的单元斜
1205坐标系中I轴与J轴成120:,将线实体的每一个节点及坐标即笛卡儿坐标(fO转换 成单元斜Ulf坐标系中的离散坐标其中矢量节点的个数为I =则节点间线段端点的相交情况,当该节点是极值点时,节点标记值2,当该节点是拐点时,节点 标记值1 ;
第三步,勾画轮廓线利用平面六边形格网的线状矢量数据绘制方法在任意两节点之 间绘制直线,在该过程中,当相邻多个连续的且/坐标相等的单元被激活时,只第一个单元 被标记,后面的单元直接跳过,既不激活也不标记。如果激活单元不是矢量的节点,则标记 1,如果是矢量的节点,则将节点的标记值+1 ;
第四步,格网行填充对面状矢量数据范围内平行于I轴的每一行扫描线进行计算,用 所有行被标记的单元作为标记进行行填充激活。本发明的线状矢量数据从平面格网绘制到球面六边形格网绘制的方法技术方案 如下全球六边形离散格网的构建是采用多面体代替球面的方式,在多面体上用六边形格 网绘制矢量数据的过程中,用(IU/)来记录面F上的单元斜1205坐标系l·/),对于全球离 散格网上绘制的线状矢量数据,每一个节点确定满足其精度的剖分格网并进行定位,得到 节点对应的单元;对相邻两个矢量节点卩和处于不同多面体展开面的情况,绘制步骤 如下
第一步在多面体展开面上,判断^所在的面^和Ppi所在的面^^!之间的相邻情况; 第二步如果展开后面和面Fii;^接相邻,直接将平移到(f{,0,0)为原点的 单元斜坐标系中即可,设在以记,ω)为原点的单元斜坐标系中的坐标为(4,/2),
则有 KfUpUe1) — (Hi ‘ ιχ in ^h);
第三步如果面I7i和面·F^1展开后不直接相邻,需要确定I^i相对于面巧的旋转角度^ ,则有:(U,i,jU) — (frcos^/:tISinIfI^1 - CosIxIl^ - /,
第四步利用平面六边形离散格网上线状矢量数据绘制方法,激活全球离散格网上 (jyE.4)和(U+iU间的所有单元。本发明的面状矢量数据从平面格网绘制到球面六边形格网绘制的方法步骤如 下
第一步确定球面二十面体表面多边形区域中心面I7fflid,以^Fsud面为中心面对多面体 进行展开;
第二步利用全球离散格网上线状矢量数据绘制过程中节点坐标转换过程,将面状实 体所有节点仍4,/:)的坐标,转换到以中心面(+Ffflid 为原点的统一单元斜坐标系统中, 将球面问题用展开的平面问题来计算;
第三步将多面体展开面上断裂的多边形区域,在平面上填补成封闭的区域,同样在断 裂处没有六边形单元的区域填补上虚拟单元,将球面的多边形填充转变成平面的填充;
第四步再将填充好的多边形区域中处于断裂部分的虚拟单元去掉,形成只存在于多 面体表面的多边形填充区域,完成球面面状矢量数据的填充绘制。本发明的全球六边形离散格网上的矢量数据绘制方法步骤如下
(1)采用矢量数据的精度和全球离散格网单元的大小判断矢量数据绘制时对应的全球 离散格网层次;(2)线状矢量数据在平面六边形格网上的绘制用直线段的方式激活任意两个节点单 元间的连接单元,形成连续的线条;
(3)面状矢量数据在平面六边形格网上的绘制
第一步,根据面状实体的节点坐标范围,确定面状实体在单元斜坐标系上的范围; 第二步,标定节点利用与单元斜坐标系的ι轴平行的扫描线计算与面状数据任意两个 节点间线段端点的相交情况,当该节点是极值点时,节点标记值2,当该节点是拐点时,节点 标记值1 ;
第三步,勾画轮廓线利用平面六边形格网的线状矢量数据绘制方法在任意两节点之 间绘制直线,在该过程中,当相邻多个连续的且/坐标相等的单元被激活时,只第一个单元 被标记,后面的单元直接跳过,既不激活也不标记。如果激活单元不是矢量的节点,则标记 1,如果是矢量的节点,则将节点的标记值+1 ;
第四步,格网行填充对面状矢量数据范围内平行于I轴的每一行扫描线进行计算,用 所有行被标记的单元作为标记进行行填充激活;
(4)线状矢量数据从平面格网绘制到球面六边形格网绘制的方法,全球六边形离散格 网的构建是采用多面体代替球面的方式,其特征在于,在多面体上用六边形格网绘制矢量 数据的过程中,用(f,<r,I)来记录面f上的单元斜i2{f坐标系(/./),对于全球离散格网上绘 制的线状矢量数据,每一个节点确定满足其精度的剖分格网并进行定位,得到节点对应的 单元;
(5)面状矢量数据从平面格网绘制到球面六边形格网绘制与步骤(3)中标定节点、勾 画轮廓线的过程相同,行格网填充过程不同,具体如下
第一步确定球面二十面体表面多边形区域中心面I7aid,以FieI面为中心面对多面体 进行展开;
第二步利用全球离散格网上线状矢量数据绘制过程中节点坐标转换过程,将面状实 体所有节点(jyj:)的坐标,转换到以中心面为原点的统一单元斜坐标系统中, 将球面问题用展开的平面问题来计算;
第三步将多面体展开面上断裂的多边形区域,在平面上填补成封闭的区域,同样在断 裂处没有六边形单元的区域填补上虚拟单元,将球面的多边形填充转变成平面的填充;
第四步再将填充好的多边形区域中处于断裂部分的虚拟单元去掉,形成只存在 于多面体表面的多边形填充区域,完成球面面状矢量数据的填充绘制;
(6)根据球面上任意两节点之间的距离,判断格网直线绘制过程中的节点内插方法, 以满足矢量数据绘制的精度需要。 进一步的,所述步骤(1)中格网层次的计算是通过公式
权利要求
1.线状矢量数据在平面六边形格网上的绘制方法,其特征在于,该方法的步骤如下 第一步在平面六边形离散格网的单元斜 議£坐标系中I轴与J轴成Of,将线实体的每一个节点6坐标即笛卡儿坐标CMO转换 成单元斜120'坐标系中的离散坐标其中矢量节点的个数为n,!' = Wn-L则有第二步对于任意两个节点巧和。之间进行六边形格网上的直线绘制令Ifi的坐 标为(4 /β), 的坐标为(Ws),计算 ΛΙ = abs(/. - IcI 和 Δ/ = ZbsiJs-16)' S1 = SiinCis- Q'第三步根据Si与5/、^与坊的大小判断直线绘制的方向,并按照/方向或/方向逐一填 充单元绘制;第四步按照第二步的方法,将矢量数据所有节点间直线绘制的六边形单元全部激活。
2.根据权利要求1所述的线状矢量数据在平面六边形格网上的绘制方法,其特征在 于,所述第三步根据&与5/、m与Δ/的大小判断直线绘制的方向,具体步骤如下(1)当S,·= S7,调用步骤(2);否则,初始化变量rf= -Μ-Δ/,转到步骤(5);(2)当1!5射,初始化变量“-射,转到步骤(3);否则,初始化变量“-Δ/,转到步骤(4);(3)当 κ 时,C = '^',如果 β:<0,则! = HSi,否则 i = ;+U=/-》y^-2ii,令 k=k+l,激活单元(i,j),转到步骤(3);当&公时,绘制过程结束;(4)当;《·< /时,δ= -2 ,如果 rf <◎,则//’5/,否贝丨= 勹令 k=k+l,激活单元(i, j),转到步骤(4);当11 i/时,绘制过程结束;(5 )当;,> -AI - ,V 时,如果 i < d,则η ‘ - - m,否则卜 S ▲ ^J = / - S1M =d- 2M,令 k=k-l, 激活单元(i,j),转到步骤(5);当时,绘制过程结束。
3.面状矢量数据在平面六边形格网上的绘制方法,其特征在于,该方法的步骤如下第一步,根据面状实体的节点坐标范围,确定面状实体在单元斜坐标系上的范围;第二步,标定节点利用与单元斜坐标系的I轴平行的扫描线计算与面状数据任意两个节点间线段端点的相交情况,当该节点是极值点时,节点标记值2,当该节点是拐点时,节 点标记值1 ;第三步,勾画轮廓线利用平面六边形格网的线状矢量数据绘制方法在任意两节点之 间绘制直线,在该过程中,当相邻多个连续的且I坐标相等的单元被激活时,只第一个单元 被标记,后面的单元直接跳过,既不激活也不标记;如果激活单元不是矢量的节点,则标记 1,如果是矢量的节点,则将节点的标记值+1 ;第四步,格网行填充对面状矢量数据范围内平行于I轴的每一行扫描线进行计算,用 所有行被标记的单元作为标记进行行填充激活。
4.线状矢量数据从平面格网绘制到球面六边形格网绘制的方法,全球六边形离散格网 的构建是采用多面体代替球面的方式,其特征在于,在多面体上用六边形格网绘制矢量数 据的过程中,用(f,/J)来记录面F上的单元斜i2(f坐标系(W),对于全球离散格网上绘制的线 状矢量数据,每一个节点确定满足其精度的剖分格网并进行定位,得到节点对应的单元;对 相邻两个矢量节点PfPiUi处于不同多面体展开面的情况,绘制步骤如下第一步在多面体展开面上,判断^所在的面f;和1 ;<所在的面Fpi之间的相邻情况; 第二步如果展开后面巧和面。直接相邻,直接将HJ平移到记,0对为原点的单 元斜坐标系中即可,设在以坑Λ0}为原点的单元斜坐标系中的坐标为Hh则有
5.面状矢量数据从平面格网绘制到球面六边形格网绘制的方法,其特征在于,该方法 的步骤如下第一步确定球面二十面体表面多边形区域中心面Fs^,以‘i面为中心面对多面体进 行展开;第二步利用全球离散格网上线状矢量数据绘制过程中节点坐标转换过程,将面状实 体所有节点汜以)的坐标,转换到以中心面0,0)为原点的统一单元斜坐标系统中,将球 面问题用展开的平面问题来计算;第三步将多面体展开面上断裂的多边形区域,在平面上填补成封闭的区域,同样在断 裂处没有六边形单元的区域填补上虚拟单元,将球面的多边形填充转变成平面的填充;第四步再将填充好的多边形区域中处于断裂部分的虚拟单元去掉,形成只存在于多 面体表面的多边形填充区域,完成球面面状矢量数据的填充绘制。
6.全球六边形离散格网上的矢量数据绘制方法,其特征在于,该方法的步骤如下(1)采用矢量数据的精度和全球离散格网单元的大小判断矢量数据绘制时对应的全球 离散格网层次;(2)线状矢量数据在平面六边形格网上的绘制用直线段的方式激活任意两个节点单 元间的连接单元,形成连续的线条;(3)面状矢量数据在平面六边形格网上的绘制第一步,根据面状实体的节点坐标范围,确定面状实体在单元斜坐标系上的范围;第二步,标定节点利用与单元斜坐标系的I轴平行的扫描线计算与面状数据任意两 个节点间线段端点的相交情况,当该节点是极值点时,节点标记值2,当该节点是拐点时,节 点标记值1 ;第三步,勾画轮廓线利用平面六边形格网的线状矢量数据绘制方法在任意两节点之 间绘制直线,在该过程中,当相邻多个连续的且J坐标相等的单元被激活时,只第一个单元 被标记,后面的单元直接跳过,既不激活也不标记;如果激活单元不是矢量的节点,则标记 1,如果是矢量的节点,则将节点的标记值+1 ;第四步,格网行填充对面状矢量数据范围内平行于I轴的每一行扫描线进行计算,用 所有行被标记的单元作为标记进行行填充激活;(4)线状矢量数据从平面格网绘制到球面六边形格网绘制的方法,全球六边形离散格 网的构建是采用多面体代替球面的方式,其特征在于,在多面体上用六边形格网绘制矢量数据的过程中,用(F,/J)来记录面F上的单元斜i2(f坐标系(U),对于全球离散格网上绘制 的线状矢量数据,每一个节点确定满足其精度的剖分格网并进行定位,得到节点对应的单 元;(5)面状矢量数据从平面格网绘制到球面六边形格网绘制与步骤(3)中标定节点、勾 画轮廓线的过程相同,行格网填充过程不同,具体如下第一步确定球面二十面体表面多边形区域中心面Fatd,以‘i面为中心面对多面体进 行展开;第二步利用全球离散格网上线状矢量数据绘制过程中节点坐标转换过程,将面状实 体所有节点(‘U)的坐标,转换到以中心面为原点的统一单元斜坐标系统中,将球 面问题用展开的平面问题来计算;第三步将多面体展开面上断裂的多边形区域,在平面上填补成封闭的区域,同样在断 裂处没有六边形单元的区域填补上虚拟单元,将球面的多边形填充转变成平面的填充;第四步再将填充好的多边形区域中处于断裂部分的虚拟单元去掉,形成只存在 于多面体表面的多边形填充区域,完成球面面状矢量数据的填充绘制;(6)根据球面上任意两节点之间的距离,判断格网直线绘制过程中的节点内插方法,以 满足矢量数据绘制的精度需要。
7.根据权利要求6所述的全球六边形离散格网上的矢量数据绘制方法,其特征在于 所述步骤(1)中格网层次的计算是通过公式
8.根据权利要求7所述的全球六边形离散格网上的矢量数据绘制方法,其特征在于, 所述步骤(2)中第三步根据^与5/、^与4Γ的大小判断直线绘制的方向,具体的绘制步骤如 下(1)当;=J;,调用步骤(2);否则,初始化变量d= -Δ/-Δ/,转到步骤(5);(2)当M> Is/,初始化变量纟=-M,转到步骤(3);否则,初始化变量 = -L·},转到步骤(4);(3)当“Μ时,d =如果 则'^r-Si,否则 SWU=Z-S^=Ui!,令 k=k+l,激活单元(i,j),转到步骤(3);当;时,绘制过程结束;(4)ci/W, i = i-2M,如果flr < O’ 贝"J/ = /-.5 ,否贝令 k=k+l,激活单元(i,j),转到步骤(4);当1&每时,绘制过程结束;(5)当J ? 时,如果 C’ <. C,贝1J! ^ -W C- Ii/,否则 = ! ^sIJ - i U = MI,令 k=k-l, 激活单元(i,j),转到步骤(5);当5^44时,绘制过程结束。
9.根据权利要求8所述的全球六边形离散格网上的矢量数据绘制方法,其特征在于, 所述步骤(4)中对相邻两个矢量节点卩和卩^处于不同多面体展开面的情况,绘制步骤如 下第一步在多面体展开面上,判断Pi所在的面巧和%,所在的面Fpi之间的相邻情况;第二步如果展开后面&和面直接相邻,直接将H1:!平移到広0,8)为原点的单 元斜坐标系中即可,设达a W))在以识,0Λ)为原点的单元斜坐标系中的坐标为OjJ,则有第三步如果面f;和面G1展开后不直接相邻,需要确定fUiffi对于面的旋转角度I,则有第四步利用平面六边形离散格网上线状矢量数据绘制方法,激活全球离散格网上 iK,UtJ间的所有单元。
10.根据权利要求6-9所述的全球六边形离散格网上的矢量数据绘制方法,其特征在 于,令球面多面体一个三角面内任意两点S3,的球面距离为ds,所述步骤(6)中两点间的格 网直线生成步骤如下第一步格网剖分层次7时,将三角面作为平面,直接进行格网直线生成;第二步格网剖分层次t, , 7,且直线两端点间的距离ds 0 = iiJ336fci时,内插节点的判断准则为当m 时,《J^d力,对球面大弧■进行2等分取中点,内插新的节点;循 环调用上面的步骤,直至时,内插节点结束;第三步直线两端点间的距离尖口·!^: 11.5336km,认为直线在层的一个单元 内,作为平面格网可以直接进行格网直线的生成。
全文摘要
本发明涉及全球六边形离散格网上的矢量数据绘制方法,该方法首先判断矢量数据绘制时对应的全球离散格网层次;线状、面状矢量数据在平面六边形格网上的绘制;线状、面状矢量数据从平面格网绘制到球面六边形格网的绘制;根据球面上任意两节点之间的距离,判断格网直线绘制过程中的节点内插方法,以满足矢量数据绘制的精度需要。本发明利用矢量数据的精度信息作为判断数据所对应的格网层次的基本依据,解决了不同类型矢量数据球面绘制过程中无缝表达的基础问题;完全采用整型运算易于并行,计算效率极高;解决了球面格网上矢量绘制过程中的跨面难题;将线状矢量数据在全球格网上的表达误差严格控制在一个格网单元内。
文档编号G06T17/20GK102096946SQ20111006701
公开日2011年6月15日 申请日期2011年3月21日 优先权日2011年3月21日
发明者汪滢, 童晓冲, 贲进 申请人:中国人民解放军信息工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1