一种多分辨率可扩展海岸线库的建立与调用方法转让专利

申请号 : CN201310330625.X

文献号 : CN103400533B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吴自银李守军尚继宏赵荻能周洁琼

申请人 : 国家海洋局第二海洋研究所

摘要 :

本发明公开了一种多分辨率可扩展海岸线库的建立与调用方法,针对目前海洋地理信息系统和成图系统中海岸线库数据范围不全、分辨率单一和数据库扩容性差的问题,通过多分辨率海岸线库的设计与管理、多分辨率海岸线库的调用、裁剪并形成海岸线用户库、裁剪后的海岸线的嵌套排序等技术步骤流程,有效解决了这些问题,实现了多分辨率海岸线的可扩展建库与用户任意调用,兼顾了用户需求与大数据量多分辨率的海岸线库高效调用,在海底地形地貌制图、海洋测绘、海洋信息系统、计算机图形学与海底科学研究中具有非常重要的实际应用价值。

权利要求 :

1.一种多分辨率可扩展海岸线库的建立与调用方法,其特征在于,包括下列步骤:步骤1:多分辨率海岸线库的建立

1.1)建立多种分辨率的海岸线总库数据集合 ,n为自然数,当i=1至6时,对应的海岸线子库 依次用于保存01.km、0.2km、0.5km、1km、5km和10km六种分辨率的海岸线子库;分辨率是指海岸线中相邻两点的距离值;当用户新增加不同于上述六种分辨率的海岸线子库时,n>6;

1.2)每个海岸线子库 ,m为自然数, 为可充填多边形,;

为海岸线测量时间,用于区别不同测量时间的海岸线;

为海岸线库数据来源;

为海岸线编号,为自然数,是一种海岸线子库中海岸线的标识;

为海岸线的类型,为1代表大陆或岛屿岸线,为2代表内陆湖岸线,为3代表内陆湖岛屿岸线,为4代表内陆湖上水道岸线,为5代表河流岸线;

是海岸线多边形的西、南、东和北的范围包围盒值;

为海岸线多边形的拐点个数,为自然数,用于系统调用;

为海岸线多边形点串坐标值;

步骤2:多分辨率海岸线库的调用

2.1)根据需要采用交互模式从海岸线总库 中调用不同分辨率的海岸线子库 ;

2.2)输入待调用海岸线库的范围值Bound={West,South,East,North}, West,South, East和North分别为海岸线调用的西、南、东和北的范围值;

步骤3:裁剪并形成海岸线用户库

3.1)建立用户海岸线子库 , 结构与步骤1.2)相同;

3.2)遍历海岸线子库 ,依次取出海岸线多边形 ,并使用包围盒bound与Bound进行相交运算,当j=m时进入步骤4;

3.3)当 时,将 放入子库 ,返回步骤3.2);

3.4)当 时,返回步骤3.2);

3.5)当 时,将 与Bound进行相交裁剪运算,保留落入Bound的拐点,形成新的裁剪多边形 ,将 放入子库,返回步骤3.2);

步骤4:裁剪后的海岸线的嵌套排序

4.1)通过步骤3形成的用户海岸线子库 ,J为自然数;

4.2)当J=0时,表明在用户需求范围内无可用海岸线,结束工作;

4.3)当 时,按照每个多边形 的类型值type自小向大,按照冒泡排序法排序,形成新的用户海岸线库 ,以避免河流、湖泊和岛屿被大陆岸线所覆盖而无法显示。

说明书 :

一种多分辨率可扩展海岸线库的建立与调用方法

技术领域

[0001] 本发明涉及海底地形地貌制图、海洋测绘、海洋地理信息系统、计算机图形学和海底科学等技术领域。

背景技术

[0002] 海岸线是海底地形地貌制图的基本组成部分,如果一幅海底地形图或地貌图的图幅中涉及到海岸线,而又不能绘制或不能详细绘制出海岸线,不仅图面不美观,还给图件的使用造成较大困难,更难以被人们接受为一幅合格的海底地形图或地貌图。此外,在海洋地理信息系统中,如果缺乏海岸线将难以称之为地理信息系统,如果缺乏多种分辨率的海岸线库,也给海洋地理信息系统的使用造成困难。因此,无论在整个有关海底地形图或海图的修饰对象中,还是在海洋地理信息系统建设中,海岸线是最基本的,也是极其重要的。
[0003] 建立适用性强的多分辨率海岸线库面临诸多困难。首先,面临的是需求和效率兼顾的困难。用户要求的海岸线覆盖的范围广、分辨率高,而为了提高工作效率,海洋地理信息系统或成图系统则要求海岸线覆盖的范围小、分辨率低。从用户的角度出发,仅一种分辨率的海岸线子库,如包含全球区域,其数据量将很庞大,如果包括全球区域的多种分辨率的海岸线库,其数据量将异常庞大,如何合理地调用海岸线库将是一个较为困难的技术问题。此外,如何在一个系统中同时高效调用多种分辨率的海岸线库也是一个难题,目前的多数海洋地理信息系统仅针对一种或少数几种分辨率的海岸线建立数据库。其次,就是如何使海岸线库变成动态可扩展的,这不仅体现在海岸线区域的扩展和数据库容量的扩展,还体现在海岸线子库的可扩展,也就是用户可新增加不同分辨率的海岸线子库,还体现在海岸线库的时序变化上,也就是说在人类活动比较频繁的区域,海岸线可随时间的改变而不断改变,导致即使在一种分辨率的海岸线子库中也会存在时序变化问题。还有,如何根据用户的需求,对海岸线库进行高效调用和裁剪,以满足局部制图需求。
[0004] 如何建立和调用动态可扩展的多分辨率海岸线库,目前尚未查询到科学的解决方案或公开文献。

发明内容

[0005] 本发明针对存在的海洋地理信息系统或制图系统普遍缺乏多分辨率海岸线库问题,提出一种多分辨率海岸线库的建立与调用方法,通过建立多种分辨率的可扩展海岸线库及结构,根据用户需求,可快速调用任意海岸线子库中任意范围的海岸线,并通过裁剪与排序形成用户海岸线,从而为用户需求提供便利。
[0006] 本发明是通过下述技术方案得以实现的:
[0007] 一种多分辨率可扩展海岸线库的建立与调用方法,包括下列步骤:
[0008] 步骤1:多分辨率海岸线库的建立
[0009] 1.1) 建 立 多 种 分 辨 率 的 海 岸 线 总 库 数 据 集 合 ,n为自然数,当i=1至6时,对应的海岸线子库 依次用于保存01.km、0.2km、0.5km、1km、5km和10km六种分辨率的海岸线子库;分辨率是指海岸线中相邻两点的距离值;当用户新增加不同于上述六种分辨率的的海岸线子库时,n>6; [0010] 1.2)每个海岸线子库 ,m为自然数, 为可充填多边形,

[0011] 为海岸线测量时间,用于区别不同测量时间的海岸线;
[0012] 为海岸线库数据来源;
[0013] 为海岸线编号,为自然数,是一种海岸线子库中海岸线的标识;
[0014] 为海岸线的类型,为1代表大陆或岛屿岸线,为2代表内陆湖岸线,为3代表内陆湖岛屿岸线,为4代表内陆湖上水道岸线,为5代表河流岸线;
[0015] 是海岸线多边形的西、南、东和北的范围包围盒值;
[0016] 为海岸线多边形的拐点个数,为自然数,用于系统调用;
[0017] 为海岸线多边形点串坐标值;
[0018] 步骤2:多分辨率海岸线库的调用
[0019] 2.1)根据需要采用交互模式从海岸线总库 中调用不同分辨率的海岸线子库 ;
[0020] 2.2)输入待调用海岸线库的范围值Bound={West, South, East, North}, West, South, East和North分别为海岸线调用的西、南、东和北的范围值;
[0021] 步骤3:裁剪并形成海岸线用户库
[0022] 3.1)建立用户海岸线子库 , 结构与步骤1.2)相同;
[0023] 3.2)遍历海岸线子库 ,依次取出海岸线多边形 ,并使用包围盒bound与Bound进行相交运算,当j=m时进入步骤4);
[0024] 3.3)当 时,将 放入子库 ,返回步骤3.2);
[0025] 3.4)当 时,返回步骤3.2);
[0026] 3.5)当 时,将 与Bound进行相交裁剪运算,保留落入Bound的拐点,形成新的裁剪多边形 ,将 放入子库
,返回步骤3.2);
[0027] 步骤4:裁剪后的海岸线的嵌套排序
[0028] 4.1)通过步骤3形成的用户海岸线子库 ,J为自然数;
[0029] 4.2)当J=0时,表明在用户需求范围内无可用海岸线,结束工作;
[0030] 4.3)当 时,按照每个多边形 的类型值type自小向大,按照冒泡排序法排序,形成新的用户海岸线库 ,以避免河流、湖泊和岛屿被大陆岸线所覆盖而无法显示。
[0031] 本发明的有益效果
[0032] 本发明公开了一种多分辨率可扩展海岸线库的建立与调用方法,针对目前海洋地理信息系统和成图系统中海岸线库数据范围不全、分辨率单一和数据库扩容性差的问题,通过多分辨率海岸线库的设计与管理、多分辨率海岸线库的调用、裁剪并形成海岸线用户库、裁剪后的海岸线的嵌套排序等技术步骤流程,有效解决了这些问题,实现了多分辨率海岸线的可扩展建库与用户任意调用,兼顾了用户需求与大数据量多分辨率的海岸线库高效调用,在海底地形地貌制图、海洋测绘、海洋信息系统、计算机图形学与海底科学研究中具有非常重要的实际应用价值。

附图说明

[0033] 图1本发明实施例中的工作流程图;
[0034] 图2本发明实施例中凸多边形海岸线裁剪图;
[0035] 图3本发明实施例中凹多边形海岸线裁剪图;
[0036] 图4本发明的实施例中四种不同类型岸线排序图;
[0037] 图5本发明的实施例中实际海岸线调用效果图;
[0038] 图2中,B是裁剪矩形,a~d是裁剪矩形的四角坐标编号;L是待裁剪的海岸线,1~4是指海岸线与裁剪矩形的交点坐标编号;
[0039] 图3中,B是裁剪矩形,a~d是裁剪矩形的四角坐标编号;L是待裁剪的海岸线,1~8是海岸线与裁剪矩形的交点坐标编号, 后形成两个新的海岸线L1和L2;
[0040] 图4中,A是大陆岸线,B是河流岸线,C是湖泊岸线,D是湖中岛屿岸线。

具体实施方式

[0041] 下面结合附图和实施例对本发明做进一步的说明。实施例
[0042] 一种多分辨率可扩展海岸线库的建立与调用方法,包括下列步骤:
[0043] 本发明实例完成的技术流程图见图1;
[0044] 步骤1:多分辨率海岸线库的设计与管理
[0045] 1.1) 建立多种分辨率的海岸线总库数据集合 ,n为自然数,当i=1至6时,对应的海岸线子库 依次用于保存01.km、0.2km、0.5km、1km、5km和10km等六种分辨率的海岸线子库,当用户新增加不同于上述六种分辨率的的海岸线子库时,n>6;分辨率是指海岸线中相邻两点的距离值;
[0046] 1.2)每个海岸线子库 ,m为自然数, 为可充填多边形,;
[0047] 为海岸线测量时间,用于区别不同测量时间的海岸线;
[0048] 为海岸线库数据来源;
[0049] 为海岸线编号,为自然数,是一种海岸线子库中海岸线的标识;
[0050] 为海岸线的类型,为1代表大陆或岛屿岸线,为2代表内陆湖岸线,为3代表内陆湖岛屿岸线,为4代表内陆湖上水道岸线,为5代表河流岸线;
[0051] 是海岸线多边形的西、南、东和北的范围包围盒值;
[0052] 为海岸线多边形的拐点个数,为自然数,用于系统调用;
[0053] 为海岸线多边形点串坐标值;
[0054] 步骤2:多分辨率海岸线库的调用
[0055] 2.1)根据需要采用交互模式从海岸线总库 中调用不同分辨率的海岸线子库 ;
[0056] 2.2)输入待调用海岸线库的范围值Bound={West,South,East,North}, West,South,East和North分别为海岸线调用的西、南、东和北的范围值;
[0057] 步骤3:裁剪并形成海岸线用户库
[0058] 3.1)建立用户海岸线子库 ,其结构与步骤1.2相同;
[0059] 3.2)遍历海岸线子库 ,依次取出多边形 ,并使用其包围盒bound与Bound进行相交运算,当j=m时进入步骤4;
[0060] 3.3)当 时,将 放入子库 ,返回步骤3.2;
[0061] 3.4)当 时,返回步骤3.2;
[0062] 3.5)当 时,将 与Bound进行相交裁剪运算,保留落入Bound的拐点,形成新的裁剪多边形 ,将 放入子库
,返回步骤3.2;
[0063] 本发明实例凸多边形岸线裁剪见图2;图2中,B是裁剪矩形,a~d是裁剪矩形的四角坐标编号;L是待裁剪的海岸线,1~4是指海岸线与裁剪矩形的交点坐标编号; 后形成新的海岸线填充多边形,其坐标编号依次为为1-2-3-c-4;
[0064] 本发明实例凹多边形岸线裁剪见图3;图3中,B是裁剪矩形,a~d是裁剪矩形的四角坐标编号;L是待裁剪的海岸线,1~8是海岸线与裁剪矩形的交点坐标编号,后形成两个新的海岸线L1和L2;L1坐标编号依次为为1-2-3-8-a;L2坐标编号依次为为4-c-5-6-7;
[0065] 步骤4:裁剪后的海岸线的嵌套排序
[0066] 4.1)通过步骤3形成的用户海岸线子库 ,J为自然数;
[0067] 4.2)当J=0时,表明在用户需求范围内无可用海岸线,结束工作;
[0068] 4.3)当 时,按照每个多边形 的类型值type自小向大,按照冒泡排序法排序,形成新的用户海岸线库 ,以避免河流、湖泊和岛屿被大陆岸线所覆盖而无法显示。
[0069] 本发明实例中四种类型海岸线嵌套排序见图4;图4中,A是大陆岸线,B是河流岸线,C是湖泊岸线,D是湖中岛屿岸线,经嵌套排序为A-B-C-D,以避免顺序错误而不可见;
[0070] 本发明实例中调用的中国海局部海岸线库见图5,在该图中有大陆与岛屿岸线、河流岸线、湖泊岸线和湖中岛屿岸线。