一种基于S52标准海图水深符号的优化显示方法与流程

专利2022-06-29  65


本发明涉及一种基于s52标准海图水深符号的优化显示方法。



背景技术:

在实际航行中,海图中水深值的准确为航行安全保驾护航。在电子海图中高效准确显示海域中各个目标点的水深值,可以在宏观上为船长了解周围海域情况提供非常重要的依据。而当前对s52标准的实现方式各不相同,有更改符号的描述形式,使用svg矢量描述语言来进行优化符号显示;有的通过建立数据库来优化符号显示;但是这些方案都是对传统技术方案的另一种实现方式,本质上s52标准中的符号与优化后的符号还是保持一一对应关系。无法彻底解决海图中水深符号维护困难且易出错,显示效率低下的问题。

s52标准中给定了一系列坐标点记为符号绘制路径,每一个符号都有各自的符号绘制路径,依次将符号绘制路径连接起来,就绘制成0-9中每一个单独的数字,记为水深值十进制位符号。涉及到水深点的符号名称有sy(soundg00)~sy(soundg59)60个符号名称,sy(sounds00)~sy(sounds59)60个符号名称,总共120个符号名称。其中,sy表示该符号是点符号;“soundg01”表示符号的主体名称,必定为8个字符;最后面的1表示该符号显示的效果就是数字1;倒数第二个数字与符号枢轴点的位置有关,同时与水深值的十进制位对应,如附图1所示。

传统的技术方案中包括:获取需要显示的水深值value。分离得到水深值value中的每十进制数字。例如,value值为95.6,则分离得到9、5、6这三个数字。根据9、5、6这三个数字,查找对应的三个符号。9是十位上的数字,需要根据符号的倒数第二个数字查得表示十位上数字9的符号;同理,查得表示个位数字5的符号,小数位数字6的符号;这样就得到3个水深值十进制位符号。将得到的3个符号在同一点按照顺序绘制出来,就得到完整的水深值符号。

但是,传统技术方案对将所有十进制位上数字都生成0-9这10个符号,需要维护的符号总数量多达120个,符号不容易维护和扩展,数量的增多导致出错的机率变大,也增加定位错误符号的难度。在显示水深值符号时,需要从120个符号中查找所有对应的水深值十进制位符号,每有十进制位就需要查找一次,查找的效率太低。而且,实际上,每十进制位数字都是一个单独的水深值十进制位符号,组合在一起才是一个完整的水深值符号。如果单个水深值十进制位符号出现问题,也无法准确发现,导致显示的水深值出现问题,危害航行安全。



技术实现要素:

(一)要解决的技术问题

为了解决现有技术的上述问题,本发明提供一种基于s52标准海图水深符号的优化显示方法。

(二)技术方案

为了达到上述目的,本发明提供一种基于s52标准海图水深符号的优化显示方法,包括步骤:

a1、根据预先设定的第一集合,获取第二集合;

所述第一集合包括:120个水深值符号;

所述每一水深值符号均具有符号名称和与所述符号相应的s52海图显示标准的绘制路径;

所述符号名称具有12个字符;且所述水深值符号的符号名称中的从左至右的第11位字符为0至9中的任一数字;

a2、获取多个待显示的水深值,并根据预先设定的s52海图显示标准确定与所述待显示的水深值相应的第一颜色或第二颜色;

a3、基于所述待显示的水深值、第二集合,分别获取所述多个待显示的水深值相应的水深值符号并将所述多个待显示的水深值相应的水深值符号显示出来;

所述待显示的水深值的符号具有与所述待显示的水深值相应的第一颜色或第二颜色。

优选的,所述第二集合包括:第一集合中水深值符号的符号名称中从左至右的第11个字符为0的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为1的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为2的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为3的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为4的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为5的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为6的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为7的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为8的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为9的任一水深值符号。

优选的,所述步骤a3包括:

a3-1、基于所述待显示的水深值,在所述第二集合中确定与所述待显示的水深值相应的水深值符号;

a3-2、基于与所述待显示的水深值相应的水深值符号,确定与所述待显示的水深值相应的水深值符号的绘制路径;

a3-3、基于与所述待显示的水深值相应的水深值符号的绘制路径,分别绘制所述多个待显示的水深值符号。

4、根据权利要求3所述的方法,其特征在于,所述步骤a3-1包括:

a3-1-1、对所述待显示的水深值进行分离处理,获取所述待显示的水深值中的每十进制位中的数字;

a3-1-2、在所述第二集合中确定与所述待显示的水深值中的每十进制位中的数字相应的水深值符号;

其中,所述第二集合中与所述待显示的水深值中的每十进制位的数字相应的水深值符号的符号名称为:第二集合中深水值符号的符号名称中的第11个字符与待显示水深值中的十进制位中的数字相同的符号名称。

优选的,所述步骤a3-3包括:

采用与所述待显示的水深值相应的水深值符号的绘制路径、预先设定的间隔值和/或高度值、第一颜色和/或第二颜色,分别绘制所述多个待显示的水深值的符号。

优选的,所述步骤a3-3包括:

若待显示的水深值为小于或等于9的整数时,则采用与所述整数相应的水深值符号的绘制路径和与所述水深值相应的第一颜色或第二颜色,绘制出待显示的水深值的符号;

若待显示的水深值为大于9的整数时,则采用与所述待显示的水深值相应的多个水深值符号的绘制路径、预先设定的间隔值、与所述待显示水深值相应的第一颜色或第二颜色,绘制出待显示的水深值的符号;

其中,与所述待显示的水深值相应的水深值符号的绘制路径之间的横向间隔具有预先设定的间隔值;

若待显示的水深值为小于10,且具有小数位的数字时,则采用与所述待显示的水深值整数位的数字对应的水深值符号的绘制路径和小数位的数字对应水深值符号的绘制路径、预先设定的间隔值和高度值、与所述待显示水深值相应的第一颜色或第二颜色,绘制出待显示的水深值符号;

其中,所述待显示的水深值的整数位中的数字的水深值符号的绘制路径与小数位的数字的水深值符号的绘制路径之间的横向间隔均具有预先设定的间隔值;

且所述水深值小数位的数字对应的绘制路径与所述水深值整数位的数字对应的绘制路径具有预设高度值;

若待显示的水深值为大于或等于10,且具有小数位的数字时,则采用与所述待显示的水深值相应的整数位上的多个水深值符号的绘制路径和与所述待显示的水深值相应的小数位上的水深值符号的绘制路径、预先设定的间隔值和高度值、与所述待显示的水深值相应的第一颜色或第二颜色,确定待显示的水深值的符号;

其中,所述与待显示的水深值整数位的数字相应的多个水深值符号的绘制路径之间具有预先设定横向间隔的间隔值;

所述与待显示的水深值的个位上的数字相应的水深值符号的绘制路径与所述待显示的水深值的小数位上的数字相应的水深值符号绘制路径之间具有预先设定横向间隔的间隔值;

所述与待显示的水深值的个位上的数字相应的水深值符号的绘制路径与所述待显示的水深值的小数位上的数字相应的水深值符号的绘制路径之间具有预设高度值。

优选的,所述步骤a3包括:

基于第二集合中的10个水深值符号的绘制路径,采用造字程序获取与所述第二集合中10个水深值符号一一对应的10个第一字体的字符和10个第二字体的字符;

所述10个第一字体的字符包括从0到9的第一字体的字符;

所述10个第二字体的字符包括从0到9的第二字体的字符;

所述第一字体字符和第二字体字符的高度为2.5毫米,宽度为1.25毫米;

基于所述待显示的水深值,在所述10个第一字体的字符和/或10个第二字体的字符中确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;

基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;

基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,分别获取所述多个待显示的水深值符号。

优选的,基于所述待显示的水深值,在所述10个第一字体的字符和/或10个第二字体的字符中确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;具体包括:

对所述待显示的水深值进行分离处理,获取所述待显示的水深值中的每十进制位中的数字;

在所述第一字体的字符中确定与所述待显示的水深值的整数部分中的每十进制位中的数字相应的最终第一字体字符;

所述最终第一字体字符分别与所述待显示的水深值的整体部分中的每十进制位中的数字相同;

在所述第二字体的字符中确定与所述待显示的水深值的小数部分中的十进制位中的数字相应的最终第二字体字符;

所述最终第二字体字符与所述待显示的水深值的小数部分中的十进制位中的数字相同。

优选的,所述基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,分别获取所述多个待显示的水深值符号,具体包括:

若待显示的水深值为整数时,则采用与所述水深值相应的最终第一字体字符和预先设定的第一颜色或第二颜色,绘制出待显示的水深值符号;

其中,待显示的水深值中的最终第一字体字符之间具有预先设定的间隔值;

若待显示的水深值具有小数时,则采用与所述水深值相应的最终第一字体字符和最终第二字体字符和预先设定的第一颜色或第二颜色,绘制出待显示的水深值符号;

其中待显示的水深值符号中的最终第一字体字符和最终第二字体字符之间具有预先设定的高度值;

其中待显示的水深值符号中的每相邻字符之间均具有预先设定的间隔值。

优选的,所述预先设定的间隔值为1毫米;

所述预先设定的高度值为1.25毫米。

(三)有益效果

本发明的有益效果是:方便高效地对水深值符号进行维护和扩展。传统的方案需要维护多达120个符号,现在只需要维护10个符号即可,维护成本大大减少。传统的方案如果需要对水深值符号进行扩展,比如,简单的更改符号颜色,每多一种颜色,就需要多添加60个符号;不仅扩展的难度增大,容易出错,而且也会导致维护的难度加大;同时也为后续的测试工作带来麻烦。

传统方案显示水深值符号时,需要对水深值中的每十进制位的符号都绘制出来,如果是百位水深值,那么需要3个甚至是4个符号才能完全显示出该水深值。本发明只需从第二集合中查找对应的符号,获取相应的符号绘制路径,然后实时绘制成符号,只需要显示一个符号。提高显示单个完整水深值符号的效率。

传统的方案是在120个符号中查找每一个符号,本发明只需在第二集合中的10个符号中查找,查找的效率大大提高。因为海图中水深值的数量是成百上千,所以,这里即使提高的幅度微小,反映到整个海图系统中的效率的提高就会非常明显。

本发明将120个符号简化成10个符号,根据符号的名称来实时绘制水深值符号,且所得到的水深值符号是一个整体性的符号,而不是多个符号简单在相同位置上显示而成的组合符号。

附图说明

图1为现有技术中符号轴点的比较示意图;

图2为利用发明的水深值符号显示方法的水深值符号在海图中的显示效果图;

图3为现有技术中sy(soundg00)符号的示意图;

图4为现有技术中sy(sounds00)符号的示意图;

图5为本发明的基于s52标准海图水深符号的优化显示方法的流程图。

具体实施方式

为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。

实施例一

如附图5所示,一种基于s52标准海图水深符号的优化显示方法,包括步骤:

a1、根据预先设定的第一集合,获取第二集合。

所述第一集合包括:120个水深值符号。

所述每一水深值符号均具有符号名称和与所述符号相应的s52海图显示标准的绘制路径。

所述水深值符号的符号名称具有12个字符;且所述水深值符号的符号名称中的从左至右的第11位字符为0至9中的任一数字。

本实施例中第二集合包括:第一集合中水深值符号的符号名称中从左至右的第11个字符为0的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为1的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为2的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为3的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为4的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为5的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为6的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为7的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为8的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为9的任一水深值符号。

在本实施例的具体应用中的,通过在sy(soundg00)~sy(soundg59)这60个符号名称(使用第一颜色),与sy(sounds00)~sy(sounds59)这60个符号名称(使用第二颜色),总共120个符号名称中获取第二集合。符号sy(soundgxx)同符号sy(soundsxx)除了颜色外,完全相同,包括枢轴点的位置。如附图3所示,附图3中为sy(soundg00)符号,附图4中为sy(sounds00)符号。

本实施例中,对于sy(soundg00)~sy(soundg59)这60个符号中,具有6套0到9的水深值十进制位符号,每一套10个。

本实施例中,对于sy(sounds00)~sy(sounds59)这60个符号中,也具有6套0到9的水深值十进制位符号,每一套10个。

举例来说,sy(sounds20)、sy(sounds10)和sy(sounds50)这三个数字0完全相同,只是枢轴点的位置不同。因此,可以在sy(soundg00)~sy(soundg59)这60个符号和sy(sounds00)~sy(sounds59)这60个符号,总共120个符号中找到第二集合中的10个符号。

第二集合中的10个符号可以是sy(sounds00)~sy(sounds09)这10个符号,也可以是sy(soundg00)~sy(soundg09)这10个符号,还可以是sy(sounds00),sy(soundg51),sy(soundg32),sy(sounds03),sy(soundg44),sy(sounds15),sy(sounds16),sy(soundg37),sy(soundg28),sy(sounds59)。只要sy(soundg00)~sy(soundg59)这60个符号名称和sy(sounds00)~sy(sounds59)这60个符号名称,总共120个符号名称中任意10个符号名称中的末位数字,也就是符号名称中的第11个字符是0,1,2,3,4,5,6,7,8,9的10个符号,即可为第二集合。

a2、获取多个待显示的水深值,并基于所述待显示的水深值确定与所述待显示的水深值相应的第一颜色或第二颜色。

a3、基于所述待显示的水深值,在所述第二集合中确定与所述待显示的水深值相应的水深值符号的符号名称。

本实施例中所述步骤a3包括:

a3-1、对所述待显示的水深值进行分离处理,获取所述待显示的水深值中的每十进制位中的数字。

本实施例中,如待显示的水深值为158和95.6时,则将158分离成1,5,8。将95.6分离成9,5,6。

a3-2、在所述第二集合中确定与所述待显示的水深值中的每十进制位中的数字相应的水深值符号的符号名称。

其中,所述第二集合中与所述待显示的水深值中的每十进制位的数字相应的水深值符号的符号名称为:第二集合中第一深水值符号中的第11个字符与待显示水深值中的十进制位中的数字相同的水深值符号的符号名称。

举例来说,若第二集合为sy(sounds00)~sy(sounds09)这10个符号,若,待显示的水深值为158时,则第二集合中与待显示的水深值158对应的符号名称为sy(sounds01),sy(sounds05),sy(sounds08)。

a4、基于与所述待显示的水深值相应的水深值符号的符号名称,在预先设定的s52标准符号绘制路径中确定与所述待显示的水深值相应的水深值符号的绘制路径;

a5、采用与所述待显示的水深值相应的水深值符号的绘制路径、预先设定的间隔值和/或高度值、第一颜色和/或第二颜色,分别绘制所述多个待显示的水深值的符号。如附图2所示,海图中水深值的显示效果。

所述待显示的水深值的符号具有与所述待显示水深值相应的第一颜色或第二颜色。

在本实施例的具体应用中,若待显示的水深值为小于或等于9的整数时,则采用与所述整数相应的水深值符号的绘制路径和与所述水深值相应的第一颜色或第二颜色,绘制出待显示的水深值的符号。

举例说明,在本实施例中第二集合为sy(sounds00)~sy(sounds09)时,若待显示的水深值为8时,则采用sy(sounds08)的符号绘制路径,绘制水深值8的符号。

在本实施例的具体应用中,若待显示的水深值为大于9的整数时,则采用与所述待显示的水深值相应的多个水深值符号的绘制路径、预先设定的间隔值、与所述待显示水深值相应的第一颜色或第二颜色,绘制出待显示的水深值的符号。

举例说明,在本实施例中第二集合为sy(sounds00)~sy(sounds09)时,若待显示的水深值为158时,则采用sy(sounds01),sy(sounds05),sy(sounds08)这3个符号绘制路径,绘制水深值为158的1个符号。

其中,水深值158的1个符号中的1的绘制路径和5的绘制路径间隔1毫米,5的绘制路径和8的绘制路径间隔1毫米。

在本实施例的具体应用中,若待显示的水深值为小于10,且具有小数位的数字时,则采用与所述待显示的水深值整数位的数字对应的绘制路径和小数位的数字对应的绘制路径、预先设定的间隔值和高度值、与所述待显示水深值相应的第一颜色或第二颜色,绘制出待显示的水深值符号。

其中,所述待显示的水深值的整数位中的数字的水深值符号的绘制路径与小数位的数字的水深值符号的绘制路径之间的横向间隔均具有预先设定的间隔值。

且所述水深值小数位的数字对应的绘制路径与所述水深值个数位的数字对应的绘制路径具有预设高度值。

举例说明,在本实施例中第二集合为sy(sounds00)~sy(sounds09)时,若待显示的水深值为5.6时,则采用sy(sounds05),sy(sounds06),这2个符号的绘制路径,绘制水深值为5.6的1个符号。

其中,水深值5.6的1个符号中的5的绘制路径和6的绘制路径横向间隔1毫米,且5的绘制路径比6的绘制路径高出1.25毫米。

在本实施例的具体应用中,若待显示的水深值大于或等于10,且具有小数位的数字时,则采用与所述待显示的水深值相应的整数位上的多个水深值符号的绘制路径和与所述待显示的水深值相应的小数位上的水深值符号的绘制路径、预先设定的间隔值和高度值、与所述待显示的水深值相应的第一颜色或第二颜色,确定待显示的水深值的符号。

其中,所述与待显示的水深值整数位的数字相应的多个水深值符号的绘制路径之间具有预先设定横向间隔的间隔值。

所述与待显示的水深值的个位上的数字相应的水深值符号的绘制路径与所述待显示的水深值的小数位上的数字相应的水深值符号的绘制路径之间具有预先设定横向间隔的间隔值。

所述与待显示的水深值的个位上的数字相应的水深值符号的绘制路径与所述待显示的水深值的小数位上的数字相应的水深值符号的绘制路径之间具有预设高度值。

举例说明,在本实施例中第二集合为sy(sounds00)~sy(sounds09)时,若待显示的水深值为95.6时,则采用sy(sounds09),sy(sounds05),sy(sounds06),这3个符号的绘制路径,绘制出水深值95.6的1个符号。

其中,水深值95.6的1个符号中的9的绘制路径和5的绘制路径横向间隔1毫米,5的绘制路径和9的绘制路径高度相同,5的绘制路径和6的绘制路径横向间隔1毫米,且5的绘制路径比6的绘制路径高出1.25毫米。

本实施例中,将120个符号简化成10个符号,根据符号的名称来实时绘制完成的水深值符号,此时水深值符号实际是一个符号;而不是从120个符号中查得每十进制位的单个符号,进而组合显示为水深值符号,传统的水深值符号实际为多个符号。

本实施例中只着重于符号的绘制路径,只是保存坐标数据,每一个水深值符号都是实时计算生成的;而非注重于符号的本身,不保存符号的显示效果。

实施例二

参见附图5,本实施例二中基于s52标准海图水深符号的优化显示方法,包括步骤:

b1、根据预先设定的第一集合,获取第二集合。

所述第一集合包括:120个水深值符号。

所述每一水深值符号均具有符号名称和与所述符号相应的s52海图显示标准的绘制路径。

所述水深值符号的符号名称具有12个字符;且所述水深值符号的符号名称中的从左至右的第11位字符为0至9中的任一数字;

b2、获取多个待显示的水深值,并根据预先设定的s52海图显示标准确定与所述待显示的水深值相应的第一颜色或第二颜色。

b3、基于所述待显示的水深值、第二集合,分别获取所述多个待显示的水深值符号。

所述待显示的水深值的符号具有与所述待显示的水深值相应的第一颜色或第二颜色。

本实施例中,优选的第二集合包括:第一集合中水深值符号的符号名称中从左至右的第11个字符为0的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为1的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为2的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为3的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为4的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为5的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为6的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为7的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为8的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为9的任一水深值符号。

本实施例二中优选的,所述步骤a3包括:

基于第二集合中的10个水深值符号的绘制路径,采用造字程序获取与所述第二集合中10个水深值符号一一对应的10个第一字体的字符和10个第二字体的字符。

所述10个第一字体的字符包括从0到9的第一字体的字符。

所述10个第二字体的字符包括从0到9的第二字体的字符。

所述第一字体字符和第二字体字符的高度为2.5毫米,宽度为1.25毫米。

基于所述待显示的水深值,在所述10个第一字体的字符和/或10个第二字体的字符中确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符。

基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符。

基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,分别获取所述多个待显示的水深值符号。

本实施例中优选的,基于所述待显示的水深值,在所述10个第一字体的字符和/或10个第二字体的字符中确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;具体包括:

对所述待显示的水深值进行分离处理,获取所述待显示的水深值中的每十进制位中的数字。

在所述第一字体的字符中确定与所述待显示的水深值的整数部分中的每十进制位中的数字相应的最终第一字体字符。

所述最终第一字体字符分别与所述待显示的水深值的整体部分中的每十进制位中的数字相同。

在所述第二字体的字符中确定与所述待显示的水深值的小数部分中的十进制位中的数字相应的最终第二字体字符。

所述最终第二字体字符与所述待显示的水深值的小数部分中的十进制位中的数字相同。

本实施例二中优选的,所述基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,分别获取所述多个待显示的水深值符号,具体包括:

若待显示的水深值为整数时,则采用与所述水深值相应的最终第一字体字符和预先设定的第一颜色或第二颜色,绘制出待显示的水深值符号。

其中,待显示的水深值中的最终第一字体字符之间具有预先设定的间隔值。

若待显示的水深值具有小数时,则采用与所述水深值相应的最终第一字体字符和最终第二字体字符和预先设定的第一颜色或第二颜色,绘制出待显示的水深值符号。

其中待显示的水深值符号中的最终第一字体字符和最终第二字体字符之间具有预先设定的高度值。

其中待显示的水深值符号中的每相邻字符之间均具有预先设定的间隔值。

本实施例中优选的,预先设定的间隔值为1毫米,预先设定的高度值为1.25毫米。

本实施例将120个符号简化成10个第一字体的字符和10个第二字体的字符,根据字符来实时绘制水深值符号,使绘制水深值的符合更简便。

本实施例中将120个符号生成只包含0到9这10个字符的两种字体。一种字体用于显示水深值的整数部分。另一种字体用于显示水深值的小数部分.。如果需要显示水深值时。只需使用对应的字体来分别显示水深值的整数部分和小数部分即可。无需维护水深值符号。

以上结合具体实施例描述了本发明的技术原理,这些描述只是为了解释本发明的原理,不能以任何方式解释为对本发明保护范围的限制。基于此处解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明的保护范围之内。


技术特征:

1.一种基于s52标准海图水深符号的优化显示方法,其特征在于,包括步骤:

a1、根据预先设定的第一集合,获取第二集合;

所述第一集合包括:120个水深值符号;

所述每一水深值符号均具有符号名称和与所述符号相应的s52海图显示标准的绘制路径;

所述符号名称具有12个字符;且所述水深值符号的符号名称中的从左至右的第11位字符为0至9中的任一数字;

a2、获取多个待显示的水深值,并根据预先设定的s52海图显示标准确定与所述待显示的水深值相应的第一颜色或第二颜色;

a3、基于所述待显示的水深值、第二集合,分别获取所述多个待显示的水深值相应的水深值符号;

所述待显示的水深值的符号具有与所述待显示的水深值相应的第一颜色或第二颜色。

2.根据权利要求1所述的方法,其特征在于,所述第二集合包括:第一集合中水深值符号的符号名称中从左至右的第11个字符为0的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为1的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为2的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为3的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为4的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为5的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为6的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为7的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为8的任一水深值符号、水深值符号的符号名称中从左至右的第11个字符为9的任一水深值符号。

3.根据权利要求2所述的方法,其特征在于,所述步骤a3包括:

a3-1、基于所述待显示的水深值,在所述第二集合中确定与所述待显示的水深值相应的水深值符号;

a3-2、基于与所述待显示的水深值相应的水深值符号,确定与所述待显示的水深值相应的水深值符号的绘制路径;

a3-3、基于与所述待显示的水深值相应的水深值符号的绘制路径,分别绘制所述多个待显示的水深值符号。

4.根据权利要求3所述的方法,其特征在于,所述步骤a3-1包括:

a3-1-1、对所述待显示的水深值进行分离处理,获取所述待显示的水深值中的每十进制位中的数字;

a3-1-2、在所述第二集合中确定与所述待显示的水深值中的每十进制位中的数字相应的水深值符号;

其中,所述第二集合中与所述待显示的水深值中的每十进制位的数字相应的水深值符号的符号名称为:第二集合中深水值符号的符号名称中的第11个字符与待显示水深值中的十进制位中的数字相同的符号名称。

5.根据权利要求4所述的方法,其特征在于,所述步骤a3-3包括:

采用与所述待显示的水深值相应的水深值符号的绘制路径、预先设定的间隔值和/或高度值、第一颜色和/或第二颜色,分别绘制所述多个待显示的水深值的符号。

6.根据权利要求5所述的方法,其特征在于,所述步骤a3-3包括:

若待显示的水深值为小于或等于9的整数时,则采用与所述整数相应的水深值符号的绘制路径和与所述水深值相应的第一颜色或第二颜色,绘制出待显示的水深值的符号;

若待显示的水深值为大于9的整数时,则采用与所述待显示的水深值相应的多个水深值符号的绘制路径、预先设定的间隔值、与所述待显示水深值相应的第一颜色或第二颜色,绘制出待显示的水深值的符号;

其中,与所述待显示的水深值相应的水深值符号的绘制路径之间的横向间隔具有预先设定的间隔值;

若待显示的水深值为小于10,且具有小数位的数字时,则采用与所述待显示的水深值整数位的数字对应的水深值符号的绘制路径和小数位的数字对应水深值符号的绘制路径、预先设定的间隔值和高度值、与所述待显示水深值相应的第一颜色或第二颜色,绘制出待显示的水深值符号;

其中,所述待显示的水深值的整数位中的数字的水深值符号的绘制路径与小数位的数字的水深值符号的绘制路径之间的横向间隔均具有预先设定的间隔值;

且所述水深值小数位的数字对应的绘制路径与所述水深值整数位的数字对应的绘制路径具有预设高度值;

若待显示的水深值为大于或等于10,且具有小数位的数字时,则采用与所述待显示的水深值相应的整数位上的多个水深值符号的绘制路径和与所述待显示的水深值相应的小数位上的水深值符号的绘制路径、预先设定的间隔值和高度值、与所述待显示的水深值相应的第一颜色或第二颜色,确定待显示的水深值的符号;

其中,所述与待显示的水深值整数位的数字相应的多个水深值符号的绘制路径之间具有预先设定横向间隔的间隔值;

所述与待显示的水深值的个位上的数字相应的水深值符号的绘制路径与所述待显示的水深值的小数位上的数字相应的水深值符号绘制路径之间具有预先设定横向间隔的间隔值;

所述与待显示的水深值的个位上的数字相应的水深值符号的绘制路径与所述待显示的水深值的小数位上的数字相应的水深值符号的绘制路径之间具有预设高度值。

7.根据权利要求2所述的方法,其特征在于,所述步骤a3包括:

基于第二集合中的10个水深值符号的绘制路径,采用造字程序获取与所述第二集合中10个水深值符号一一对应的10个第一字体的字符和10个第二字体的字符;

所述10个第一字体的字符包括从0到9的第一字体的字符;

所述10个第二字体的字符包括从0到9的第二字体的字符;

所述第一字体字符和第二字体字符的高度为2.5毫米,宽度为1.25毫米;

基于所述待显示的水深值,在所述10个第一字体的字符和/或10个第二字体的字符中确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;

基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;

基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,分别获取所述多个待显示的水深值符号。

8.根据权利要求7所述的方法,其特征在于,基于所述待显示的水深值,在所述10个第一字体的字符和/或10个第二字体的字符中确定与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符;具体包括:

对所述待显示的水深值进行分离处理,获取所述待显示的水深值中的每十进制位中的数字;

在所述第一字体的字符中确定与所述待显示的水深值的整数部分中的每十进制位中的数字相应的最终第一字体字符;

所述最终第一字体字符分别与所述待显示的水深值的整体部分中的每十进制位中的数字相同;

在所述第二字体的字符中确定与所述待显示的水深值的小数部分中的十进制位中的数字相应的最终第二字体字符;

所述最终第二字体字符与所述待显示的水深值的小数部分中的十进制位中的数字相同。

9.根据权利要求8所述的方法,其特征在于,所述基于与所述待显示的水深值相应的第一字体的字符和/或第二字体的字符,分别获取所述多个待显示的水深值符号,具体包括:

若待显示的水深值为整数时,则采用与所述水深值相应的最终第一字体字符和预先设定的第一颜色或第二颜色,绘制出待显示的水深值符号;

其中,待显示的水深值中的最终第一字体字符之间具有预先设定的间隔值;

若待显示的水深值具有小数时,则采用与所述水深值相应的最终第一字体字符和最终第二字体字符和预先设定的第一颜色或第二颜色,绘制出待显示的水深值符号;

其中待显示的水深值符号中的最终第一字体字符和最终第二字体字符之间具有预先设定的高度值;

其中待显示的水深值符号中的每相邻字符之间均具有预先设定的间隔值。

10.根据权利要求6或9任一所述的方法,其特征在于,所述预先设定的间隔值为1毫米;

所述预先设定的高度值为1.25毫米。

技术总结
本发明涉及一种基于S52标准海图水深符号的优化显示方法,包括步骤:根据预先设定的第一集合,获取第二集合;所述第一集合包括:120个水深值符号;所述每一水深值符号均具有符号名称和与所述符号相应的S52海图显示标准的绘制路径;所述水深值符号的符号名称具有12个字符;且所述水深值符号的符号名称中的从左至右的第11位字符为0至9中的任一数字;获取多个待显示的水深值,并根据预先设定的S52海图显示标准确定与所述待显示的水深值相应的第一颜色或第二颜色;基于所述待显示的水深值、第二集合,分别获取所述多个待显示的水深值符号并显示。

技术研发人员:王晓原;夏媛媛;姜雨函;董晓斐;李嗣邦
受保护的技术使用者:智慧航海(青岛)科技有限公司
技术研发日:2020.01.19
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-48641.html

最新回复(0)