具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参阅图1,图1示出了一种可应用于本申请实施例中的电子设备100的结构框图。该电子设备100可以作为用户终端,也可以是计算机或服务器,所述用户终端可以为手机或平板电脑。如图1所示,电子设备100可以包括存储器110、存储控制器111、处理器112和管线表数据与空间数据转换装置。
存储器110、存储控制器111、处理器112各元件之间直接或间接地电连接,以实现数据的传输或交互。例如,这些元件之间可以通过一条或多条通讯总线或信号总线实现电连接。管线表数据与空间数据转换方法分别包括至少一个可以以软件或固件(firmware)的形式存储于存储器110中的软件功能模块,例如所述管线表数据与空间数据转换装置包括的软件功能模块或计算机程序。
存储器110可以存储各种软件程序以及模块,如本申请实施例提供的管线表数据与空间数据转换方法及装置对应的程序指令/模块。处理器112通过运行存储在存储器110中的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现本申请实施例中的管线表数据与空间数据转换方法。存储器110可以包括但不限于随机存取存储器(RandomAccess Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable ProgrammableRead-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable ProgrammableRead-Only Memory,EEPROM)等。
处理器112可以是一种集成电路芯片,具有信号处理能力。上述处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
第一实施例
请参阅图2,本发明实施例提供了一种管线表数据与空间数据转换方法,所述方法包括:
步骤S200:读取Access数据库格式的管线数据文件,获得数据库对象;
在本实施例中,定义以下术语:
Access关系数据库:APDB,图形化的输入数据,存储管线数据的mdb/accdb格式文件。
管线线表:APL_Table,APDB中存储线类型管线数据的数据表。
管线线记录行:APL_Row,APL_Table中的一行,记录一条管线数据的相关信息。
管线点表:APP_Table,APDB中存储点类型管线数据的数据表。
管线点记录行:APP_Row,APP_Table中的一行,记录一个管线点数据的相关信息。
地理空间数据库:GPDB,图形化的输出数据,APDB转换的结果数据,GDB格式的数据库。
管线点要素集:P_FeatureSet,管线点类型要素的集合,本质上为GPDB中的一个数据表,一个APP_Table的图形化即是转换为一个P_FeatureSet。
管线线要素集:L_FeatureSet,管线线类型要素的集合,本质上为GPDB中的一个数据表,一个APL_Table的图形化即是转换为一个L_FeatureSet。
管线点要素:P_Feature,P_FeatureSet中的一行,一个APP_Row图形化之后即为一个P_Feature。
管线线要素集:L_Feature,L_FeatureSet中的一行,一个APL_Row图形化之后即为一个L_Feature。
作为一种实施方式,读取Access数据库格式的管线数据文件,获得数据库对象,将所述数据库对象记为APDB。
步骤S210:获取一个地理空间数据库;
在本实施例中,获取一个地理空间数据库,所述地理空间数据库记为GPDB,且所述地理空间数据库与所述数据对象创建的文件名称相同。
步骤S220:判断所述数据库对象中是否存在未转换的数据表,若存在,则获取所述未转换的数据表;
在本实施例中,判断所述数据库对象(APDB)中是否存在未转换的数据表,若不存在,则终止转换;若存在,则获取所述未转换的数据表,将所述未转换的数据表记为Table;
基于预设的转换规则以及所述地理空间数据库,将所述获取到的未转换的数据表进行转换,获得所述获取到的未转换的数据表对应的地理空间数据库格式,以此实现Access数据库格式的管线数据表转换为地理空间数据库,包括:
步骤S220:判断所述获取到的未转换的数据表是否为管线点表;
步骤S240:若所述获取到的未转换的数据表为管线点表,则基于所述地理空间数据库,获取一个管线点要素集;
在本实施例中,若所述获取到的未转换的数据表为管线点表,所述管线点表记为APP_Table;在所述地理空间数据库(GPDB)中创建一个与APP_Table名称相同且属性结构的管线点要素集,所述管线点要素集记为P_FeatureSet。
步骤S250:读取所述管线点表中的一条点记录,并基于所述点记录,获取位置坐标;
在本实施例中,读取所述管线点表(APP_Table)中的一条点记录,所述点记录记为APP_Row,并从APP_Row获取位置坐标X,Y。
步骤S260:基于所述地理空间数据库,获取一个第一点类型几何对象,并将所述位置坐标赋予所述第一点类型几何对象;
在本实施例中,在所述地理空间数据库中,获取一个第一点类型几何对象,并将所述位置坐标赋予所述第一点类型几何对象,所述第一点类型几何对象记为GPoint(X,Y)。
步骤S270:基于所述管线点要素集,获取一个管线点要素以及将所述点记录的属性信息赋予所述管线点要素,并将所述管线点要素的几何对象信息设置为所述第一点类型几何对象,以此实现将Access数据库形式的管线点表转换为地理空间数据库。
在本实施例中,在所述管线点要素集(P_FeatureSet)中创建一个管线点要素,所述管线点要素记为P_Feature,并把将所述点记录(APP_Row)的属性信息赋予所述管线点要素(P_Feature),并将所述管线点要素(P_Feature)的几何对象信息设置为所述第一点类型几何对象GPoint(X,Y)。
基于步骤S250-步骤S270,直到APP_Table中的记录全部被转换完成。以此实现将Access数据库形式的管线点表转换为地理空间数据库。
地理空间数据库容纳的数据量特别大、具有地理空间数据和属性数据、数据应用层次多等优点。
本发明实施例提供的一种管线表数据与空间数据转换方法,通过读取Access数据库格式的管线数据文件,获得数据库对象;获取一个地理空间数据库;判断所述数据库对象中是否存在未转换的数据表,若存在,则获取所述未转换的数据表;基于预设的转换规则以及所述地理空间数据库,将所述获取到的未转换的数据表进行转换,获得所述获取到的未转换的数据表对应的地理空间数据库格式,以此实现Access数据库格式的管线数据表转换为地理空间数据库。
第二实施例
请参阅图3,本发明实施例提供了一种管线表数据与空间数据转换方法,所述方法包括:
步骤S300:读取Access数据库格式的管线数据文件,获得数据库对象;
步骤S310:获取一个地理空间数据库;
步骤S320:判断所述数据库对象中是否存在未转换的数据表,若存在,则获取所述未转换的数据表;
基于预设的转换规则以及所述地理空间数据库,将所述获取到的未转换的数据表进行转换,获得所述获取到的未转换的数据表对应的地理空间数据库格式,以此实现Access数据库格式的管线数据表转换为地理空间数据库,包括:
步骤S330:判断所述获取到的未转换的数据表是否为管线线表;
步骤S340:若所述获取到的未转换的数据表为管线线表,则基于所述地理空间数据库,获取一个管线线要素集;
在本实施例中,若所述获取到的未转换的数据表(Table)为管线线表,所述管线线表记为APL_Table;在所述地理空间数据库(GPDB)中创建一个与APL_Table名称相同且属性结构的管线线要素集,所述管线线要素集记为L_FeatureSet。
步骤S350:读取所述管线线表中的一条线记录,并基于所述线记录,获取线起点位置坐标和线终点位置坐标;
在本实施例中,读取所述管线线表(APL_Table)中的一条线记录,所述线记录记为APL_Row,并从所述线记录(APL_Row)获取管线起点位置坐标X1,Y1和终点位置坐标X2,Y2。
步骤S360:基于所述地理空间数据库,获取第二点类型几何对象和第三点类型几何对象,并将所述线起点位置坐标、所述线终点位置坐标分别赋予所述第二点类型几何对象、第三点类型几何对象;
在本实施例中,在所述地理空间数据库(GPDB)中创建第二点类型几何对象和第三点类型几何对象,所述第二点类型几何对象记为GPoint1,所述第三点类型几何对象记为GPoint2,并将所述线起点位置坐标、所述线终点位置坐标分别赋予所述第二点类型几何对象、第三点类型几何对象,即GPoint1(X1,Y1)和GPoint2(X2,Y2)。
步骤S370:基于所述地理空间数据库、所述第二点类型几何对象和第三点类型几何对象,获取一个线类型对象;
在本实施例中,获取一个线类型对象,所述线类型对象记为GLine(GPoint1,GPoint2)。
步骤S380:基于所述管线线要素集,获取一个管线线类型要素并将所述线记录的属性信息赋予所述管线线类型要素,并将所述管线线类型要素的几何对象信息设置为所述线类型对象,以此实现将Access数据库格式的管线线表转换为地理空间数据库。
在本实施例中,在所述管线线要素集(L_FeatureSet)中创建一个管线线类型要素,所述管线线类型要素记为L_Feature,并把所述线记录(APL_Row)的属性信息赋予所述管线线类型要素(L_Feature),将所述管线线类型要素(L_Feature)的几何对象信息设置为GLine(GPoint1,GPoint2)。
基于步骤S350-步骤S380,直到APL_Table中的记录全部被转换完成。以此实现将Access数据库形式的管线线表转换为地理空间数据库。
地理空间数据库容纳的数据量特别大、具有地理空间数据和属性数据、数据应用层次多等优点。
本发明实施例提供的一种管线表数据与空间数据转换方法,通过读取Access数据库格式的管线数据文件,获得数据库对象;获取一个地理空间数据库;判断所述数据库对象中是否存在未转换的数据表,若存在,则获取所述未转换的数据表;基于预设的转换规则以及所述地理空间数据库,将所述获取到的未转换的数据表进行转换,获得所述获取到的未转换的数据表对应的地理空间数据库格式,以此实现Access数据库格式的管线数据表转换为地理空间数据库。
第三实施例
请参阅图4,本发明实施例提供了一种管线表数据与空间数据转换装置400,所述装置400包括:
第一获取单元410,用于读取Access数据库格式的管线数据文件,获得数据库对象。
第二获取单元420,用于获取一个地理空间数据库。
判断单元430,用于判断所述数据库对象中是否存在未转换的数据表,若存在,则获取所述未转换的数据表。
管线点表判断单元440,用于判断所述获取到的未转换的数据表是否为管线点表。
转换单元450,用于基于预设的转换规则以及所述地理空间数据库,将所述获取到的未转换的数据表进行转换,获得所述获取到的未转换的数据表对应的地理空间数据库格式,以此实现Access数据库格式的管线数据表转换为地理空间数据库。
作为一种实施方式,所述转换单元450可以包括第三获取单元451、位置坐标获取子单元452、赋予子单元453以及第四获取子单元454。
第三获取子单元451,用于根据所述管线点表判断单元440获得的管线点表,则基于所述地理空间数据库,获取一个管线点要素集;
位置坐标获取子单元452,用于读取所述管线点表中的一条点记录,并基于所述点记录,获取位置坐标;
赋予子单元453,用于基于所述地理空间数据库,获取一个第一点类型几何对象,并将所述位置坐标赋予所述第一点类型几何对象;
第四获取子单元454,用于基于所述管线点要素集,获取一个管线点要素以及将所述点记录的属性信息赋予所述管线点要素,并将所述管线点要素的几何对象信息设置为所述第一点类型几何对象,以此实现将Access数据库格式的管线点表转换为地理空间数据库。
以上各单元可以是由软件代码实现,此时,上述的各单元可存储于存储器110内。以上各单元同样可以由硬件例如集成电路芯片实现。
本发明实施例提供的管线表数据与空间数据转换装置400,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
第四实施例
请参照图5,本发明实施例提供了一种管线表数据与空间数据转换装置500,所述装置500包括:
第一获取单元510,用于读取Access数据库格式的管线数据文件,获得数据库对象。
第二获取单元520,用于获取一个地理空间数据库。
判断单元530,用于判断所述数据库对象中是否存在未转换的数据表,若存在,则获取所述未转换的数据表。
管线线表判断单元540,用于判断所述获取到的未转换的数据表是否为管线线表。
转换单元550,用于基于预设的转换规则以及所述地理空间数据库,将所述获取到的未转换的数据表进行转换,获得所述获取到的未转换的数据表对应的地理空间数据库格式,以此实现Access数据库格式的管线数据表转换为地理空间数据库。
作为一种实施方式,所述转换单元550可以包括第五获取子单元551、线坐标获取子单元552、线坐标赋予子单元553、线类型对象获得子单元554以及第六获取子单元555。
第五获取子单元551,用于根据所述管线线表判断单元540获得的管线线表,则基于所述地理空间数据库,获取一个管线线要素集。
线坐标获取子单元552,用于读取所述管线线表中的一条线记录,并基于所述线记录,获取线起点位置坐标和线终点位置坐标。
线坐标赋予子单元553,用于基于所述地理空间数据库,获取第二点类型几何对象和第三点类型几何对象,并将所述线起点位置坐标、所述线终点位置坐标分别赋予所述第二点类型几何对象、第三点类型几何对象。
线类型对象获得子单元554,用于基于所述地理空间数据库、所述第二点类型几何对象和第三点类型几何对象,获取一个线类型对象。
第六获取子单元555,用于基于所述管线线要素集,获取一个管线线类型要素,并将所述线记录的属性信息赋予所述管线线类型要素,并将所述管线线类型要素的几何对象信息设置为所述线类型对象,以此实现将Access数据库格式的管线线表转换为地理空间数据库。
以上各单元可以是由软件代码实现,此时,上述的各单元可存储于存储器110内。以上各单元同样可以由硬件例如集成电路芯片实现。
本发明实施例提供的管线表数据与空间数据转换装置500,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。