CN117171283A - 地图服务的更新方法、系统和电子设备 - Google Patents
地图服务的更新方法、系统和电子设备 Download PDFInfo
- Publication number
- CN117171283A CN117171283A CN202311140589.0A CN202311140589A CN117171283A CN 117171283 A CN117171283 A CN 117171283A CN 202311140589 A CN202311140589 A CN 202311140589A CN 117171283 A CN117171283 A CN 117171283A
- Authority
- CN
- China
- Prior art keywords
- data
- geographic information
- vector
- real
- edited
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000006870 function Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 230000001172 regenerating effect Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 230000004927 fusion Effects 0.000 abstract description 2
- 230000001360 synchronised effect Effects 0.000 abstract 1
- 230000008569 process Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种地图服务的更新方法、系统和电子设备,涉及地图服务更新领域。该地图服务的更新方法包括:基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送实时矢量切片数据;获取要素编辑请求,并根据要素编辑请求,确定对应的待编辑地理信息矢量要素数据;将待编辑地理信息要素以要素服务的形式向目标终端发送;获取目标客户端基于要素服务编辑后的更新地理信息矢量要素数据,以完成地图服务的更新。使用本申请实施例提供的地图服务更新方法对矢量要素数据进行在线编辑和数据库的动态更新,各流程同步作业,并支持多人多机同时作业,极大提高数据生产、融合、建库及更新效率。
Description
技术领域
本申请涉及地图服务更新领域,具体而言,涉及一种地图服务的更新方法、系统和电子设备。
背景技术
地图服务是一种用于向应用程序、网站或用户提供地理空间数据的技术,它允许用户在应用程序、网站或地图应用中加载、浏览和使用地图数据。地图服务的数据源常常是地理信息矢量要素数据;更具体地,地理信息矢量要素数据是指在地理信息系统(GIS)中以矢量形式表示的地理现象或对象的数据;矢量数据使用几何图形(点、线、面)来描述地理要素的位置和形状,同时可以附带属性信息来描述这些要素的特征。
目前,地理信息矢量要素数据的生产技术流程为将任务按行政区划或影像图幅等进行拆分后分配给操作人员,使用本地单机软件进行基于本地影像文件的矢量要素采集、编辑,以及作业任务区的要素接边处理,最后融合多个数据集成一个文件。生成在线地图服务的过程为将地理信息矢量要素数据入库后,按标准裁切为栅格瓦片或矢量瓦片格式数据,实现矢量要素的地图服务发布。
但是,目前关于地理信息矢量要素数据的处理方式,以及在线地图生成的方式,存在作业效率低、无法在线动态编辑地理信息矢量要素数据的问题。
发明内容
本申请实施例的目的在于提供一种地图服务的更新方法、系统和电子设备,通过建立一套基于地图服务的矢量要素数据在线编辑与更新方法,实现地图服务中的矢量要素及成果数据库中的矢量要素数据的实时在线编辑与数据库动态更新,可一体化支撑数据生产、数据检查、数据建库等业务环节,各流程同步作业,并支持多人多机同时作业,极大提高数据生产、融合、建库及更新效率。
第一方面,本申请实施例提供一种地图服务的更新方法,所述方法包括:基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送所述实时矢量切片数据;获取要素编辑请求,并根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据;将所述待编辑地理信息要素以要素服务的形式向所述目标终端发送;获取所述目标客户端基于所述要素服务编辑后的更新地理信息矢量要素数据,以完成所述地图服务的更新。
在上述实现过程中,本申请提供的地图服务的更新方法通过生成实时矢量切片数据并发送至目标终端,实现了地图数据的实时更新和展示,保持地图信息的最新状态;通过要素服务实现了要素的可编辑性,服务器获取编辑后的更新地理信息矢量要素数据,使得地图服务能够及时更新,展示编辑结果。
可选地,在本申请实施例中,在所述基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据之前,所述方法还包括:获取初始地理信息矢量要素数据;根据所述初始地理信息矢量要素数据,建立要素状态辅助字段;其中,所述要素状态辅助字段用于记录要素数据的版本、要素数据的状态以及编辑要素数据的目标用户信息。
在上述实现过程中,本申请提供的地图服务的更新方法包括对数据的入库和对要素状态辅助字段的建立,要素状态辅助字段用于跟踪要素数据的不同版本、状态和编辑信息,从而使要素数据相关信息是可被追踪的;如锁定机制的建立可以确保一段时间内只有一个用户可以编辑某个要素,从而避免数据冲突和混乱;也就是说,本申请实施例提供的地图服务的更新方法,实现了对数据的高效管理,有利于多个用户对要素的协同编辑和版本管理。
可选地,在本申请实施例中,所述基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,包括:根据地理信息矢量要素数据,基于ST_AsMVTGeom函数和ST_AsMVT函数在PostGIS中,生成原始实时矢量切片数据;优化所述原始实时矢量切片数据,以获得所述实时矢量切片数据。
在上述实现过程中,通过对入库的地理信息矢量要素数据进行处理后生成原始实时矢量切片数据,对原始实时矢量切片数据进行优化后得到实时矢量切片数据;经过对数据的优化处理,实时矢量切片数据将变得更小、更适合网络传输和渲染,从而提高地图加载效率。
可选地,在本申请实施例中所述根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据,包括:根据要素编辑请求,确定对应的所述实时矢量切片数据;根据所述实时矢量切片数据,确定对应的所述待编辑地理信息矢量要素数据。
在上述实现过程中,本申请实施例提供的地图服务的更新方法,为了确定对应的待编辑地理信息矢量要素数据,需先从要素标编辑请求确定出对应的实时矢量切片数据,再从实时矢量切片数据确定出对应的待编辑地理信息矢量要素数据;通过该过程,准确地确定出待编辑要素数据,将切片数据还原为了空间信息和属性信息,从而为后续的编辑操作提供可准确的数据基础。
可选地,在本申请实施例中,在所述获取要素编辑请求,并根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据之后,所述方法还包括:将所述待编辑地理信息矢量要素数据的状态变化为除所述目标用户外不可编辑状态。
在上述实现过程中,本申请实施例提供的地图服务的更新方法在确定对应的待编辑地理信息矢量要素数据之后,会通过要素上锁的方式改变对应的待编辑地理信息矢量要素数据的状态,有效地管理并发编辑问题,确保地图数据的准确性和一致性。
可选地,在本申请实施例中,所述将所述待编辑地理信息要素以要素服务的形式向所述目标终端发送,包括:获取所述待编辑地理信息要素的空间信息和属性信息;将所述空间信息和属性信息以空间信息编码方式进行组织,并向所述目标终端发送。
在上述实现过程中,服务器获得了待编辑地理信息要素数据,并将空间信息和属性信息按照指定的编码方式进行组织,以便将其传送到目标终端。使用GeoJSON格式对空间信息进行组织,使得数据能够以轻量、易读的方式传输到前端地图库中,以满足地图库的展示和渲染需求。
可选地,在本申请实施例中,在所述获取更新地理信息矢量要素数据之后,所述方法还包括:将所述更新地理信息矢量要素数据存储于数据库中;根据所述更新地理信息矢量要素数据重新生成实时矢量切片数据,并向其他终端发送;其中,所述其他终端包括协同处理所述目标地图服务的终端。
在上述实现过程中,被编辑或新增的要素数被存储与数据库中,使服务器可以有效地管理更新后的地理信息矢量要素数据;更新后的切片数据被发送给其他终端和目标终端,确保多人协同编辑时各终端的数据一致性。
第二方面,本申请实施例提供一种地图服务的更新系统,所述地图服务更新系统包括:实时矢量切片生成模块、在线编辑模块和更新数据获取模块;所述实时矢量切片生成模块用于基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送所述实时矢量切片数据;所述在线编辑模块用于获取要素编辑请求,并根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据;所述在线编辑模块还用于将所述待编辑地理信息要素以要素服务的形式向所述目标终端发送;所述更新数据获取模块用于获取所述目标客户端基于所述要素服务编辑后的更新地理信息矢量要素数据,以完成所述地图服务的更新。
第三方面,本申请实施例提供一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器读取并运行所述程序指令时,执行上述任一实现方式中的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,所述可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述任一实现方式中的步骤。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的地图服务更新的流程图;
图2为本申请实施例提供的数据入库的流程图;
图3为本申请实施例提供的时矢量切片数据生成的流程图;
图4为本申请实施例提供的待编辑对象确定流程图;
图5为本申请实施例提供的可编辑方式生成流程图;
图6为本申请实施例提供的数据更新流程图;
图7为本申请实时提供的数据交互示意图;
图8为本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。例如,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
现有地理信息矢量要素数据的生产技术流程,一般采用按影像图幅分配生产任务的方式,由作业员用本地单机软件进行基于本地影像文件的矢量要素采集、编辑以及作业任务区之间的要素接边处理,完成区域任务的数据集生产后,再按一定的任务或测区范围将多个数据集融合成一个数据集文件。
将地理信息矢量要素数据处理为数据集之后,将矢量要素数据集发布为在线地图。具体地,将数据集按一定标准入库及处理,再将矢量要素数据按标准裁切处理成栅格瓦片格式数据或矢量瓦片格式数据,从而实现矢量要素的地图服务发布。
需要说明的是,栅格瓦片数据是将地图切分成一系列小的网格单元(像素)的图像,每个图像被称为一个瓦片。栅格瓦片数据是静态的,通常用于地图的基本显示和浏览。不同缩放级别的地图通常使用不同分辨率的栅格瓦片数据,这使得在不同缩放级别下可以快速加载适合的地图图像。
矢量瓦片数据则不是图像,而是包含地理要素的矢量数据,如点、线、面等。矢量数据以瓦片的方式进行存储,每个瓦片包含了一定区域内的地理要素的信息;要素可以根据地图缩放级别动态显示和渲染,以适应不同的地图显示需求。
申请人在研究过程中发现,通过以上方法构建的地图服务,若要对矢量要素数据集或者在线地图服务进行编辑更新,需要先通过单机软件对数据集进行编辑更新,再重复进行数据入库、构建索引等处理、裁切地图瓦片、地图服务发布等一系列处理流程。
一方面,采用按影像图幅分配生产任务的方式,任务分配时参考影像数据的分发拷贝耗时较长,采集后的要素空间及属性接边仅能单机单向操作,整个分配方式造成数据的处理非常耗时、繁琐;并且,在矢量要素数据集任务覆盖范围过大或者要素数量过多的情况下,单机软件难以对数据进行高效的读写、检索、编辑等处理,会出现软件卡顿甚至崩溃的情况。
另一方面,在地理信息矢量要素数据集成果汇交入库后,若发现入库数据仍存在空间位置或者属性信息错误的情况;由于数据被裁切为栅格瓦片或矢量瓦片的数据格式,从而无法基于裁切好的瓦片数据对矢量要素进行修改;修改需要频繁地进行数据集的编辑及重新入库操作,且在单机软件编辑修改过程中,容易移动其他要素导致引入新的错误。
并且,在作业过程中难以实现并行作业,即多人多机对同一矢量要素数据集同时进行编辑处理,导致作业效率较低。
基于此,本申请提供一种地图服务的更新方法、系统和电子设备;其中,该地图服务的更新方法建立了一套基于地图服务的矢量要素数据在线编辑与更新方法,先基于矢量要素数据,生成实时矢量切片;在确定好要编辑的矢量要素之后,基于要素服务实现要素的编辑,实现了动态更新;基于要素服务的方式,也能够实现多人在线协同编辑同一地图服务的不同要素。
请参看图1,图1为本申请实施例提供的地图服务更新的流程图;本申请第一方面提供一种地图服务的更新方法,该方法包括以下步骤:
步骤S100:基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送实时矢量切片数据。
在上述步骤S100中,根据目标地图服务对应的地理信息数量要素数据生成实时矢量切片数据,并向目标终端发送实时矢量切片数据;其中,实时矢量切片数据可以是栅格瓦片数据或矢量瓦片数据。
示例性地,可以将实时矢量切片数据以二进制流的形式存储,并通过HTTP请求提供给前端地图库。前端地图库(如Mapbox GL JS)可以解析和渲染这些切片数据,实现地图的展示。
步骤S200:获取要素编辑请求,并根据要素编辑请求,确定对应的待编辑地理信息矢量要素数据。
在上述步骤S200中,获取要素编辑请求,根据要素编辑请求确定对应的待编辑地理信息矢量要素数据。示例性地,终端的用户可通过矢量切片锁定待编辑要素,再通过要素服务获取锁定待编辑要素全部要素数据,包括几何空间和属性信息。
步骤S300:将待编辑地理信息要素以要素服务的形式向目标终端发送。
在上述步骤S300中,将待编辑地理信息要素以要素服务的形式下个目标终端发送,需要说明的是,要素服务是一种用于向前端地图库提供原始矢量要素数据的服务;通常基于特定的GIS服务协议(如OGC的WFS或Esri的Feature Service)或者HTTP API,使前端应用能够请求、获取并展示矢量要素数据。
步骤S400:获取目标客户端基于要素服务编辑后的更新地理信息矢量要素数据,以完成地图服务的更新。
在上述步骤S400中,在目标客户端基于要素服务编辑待更新的地理信息矢量要素数数据之后,被编辑的要素信息被服务器获取后,完成地图服务的更新。
通过图1可知,本申请提供的地图服务的更新方法通过生成实时矢量切片数据并发送至目标终端,实现了地图数据的实时更新和展示,保持地图信息的最新状态;通过要素服务实现了要素的可编辑性,服务器获取编辑后的更新地理信息矢量要素数据,使得地图服务能够及时更新,展示编辑结果。
请参看图2,图2为本申请实施例提供的数据入库的流程图;在本申请实施例的可选实施方式中,在步骤S100:基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据之前,还包括以下步骤:
步骤S01:获取初始地理信息矢量要素数据。
步骤S02:根据初始地理信息矢量要素数据,建立要素状态辅助字段。
在上述步骤S100之前,先经过步骤S01-步骤S02对地理信息矢量数据进行入库操作;需要入库的初始地理信息数量要素数据本身携带属性信息和空间信息,但在构建在线地图服务的过程中,除去要将数据本身的所有属性信息和空间信息导入数据库之外,还需要建立额外的字段,用来辅助后续数据编辑。
要素状态辅助字段,用于记录要素数据的版本、要素数据的状态以及编辑要素数据的目标用户信息。示例性地,创建Version字段,用于记录要素编辑版本;创建is_locked字段,用于确定标识该要素是否被锁定,例如,当某要素被一个用户选中并开启编辑,该要素即被锁定,其他用户无法同时对其进行编辑,编辑完成后记录其编辑版本信息;创建locked_user_id字段,用于记录该编辑该要素的用户信息。
通过图2可知,本申请提供的地图服务的更新方法包括对数据的入库和对要素状态辅助字段的建立,要素状态辅助字段用于跟踪要素数据的不同版本、状态和编辑信息,从而使要素数据相关信息是可被追踪的;如锁定机制的建立可以确保一段时间内只有一个用户可以编辑某个要素,从而避免数据冲突和混乱;也就是说,本申请实施例提供的地图服务的更新方法,实现了对数据的高效管理,有利于多个用户对要素的协同编辑和版本管理。
请参看图3,图3为本申请实施例提供的时矢量切片数据生成的流程图;在本申请实施例的可选实施方式中,上述的步骤S100中的基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,可以通过以下步骤实现:
步骤S110:根据地理信息矢量要素数据,基于ST_AsMVTGeom函数和ST_AsMVT函数在PostGIS中,生成原始实时矢量切片数据。
在上述步骤S110中,入库后的地理信息矢量要素数据在PostGIS(在PostgreSQL数据库上添加地理空间功能的扩展,允许存储和查询地理信息数据)中,使用ST_AsMVTGeom函数和ST_AsMVT函数生成原始实时矢量切片。
需要说明的是,ST_AsMVTGeom函数和ST_AsMVT函数是PostGIS提供的功能,用于将矢量要素数据转换为Mapbox Vector Tiles(MVT)格式,ST_AsMVTGeom用于将矢量要素进行投影和转换,而ST_AsMVT则将这些要素转换为MVT格式的二进制数据。
步骤S120:优化原始实时矢量切片数据,以获得实时矢量切片数据。
在上述步骤S120中,将原始实时矢量切片数据进行优化,得到实时矢量切片数据。
示例性地,对二进制数据:实时矢量切片数据,进行抽稀简化,保证每一个二进制文件的大小。
需要说明的是,对于大规模的矢量要素数据,为了减少数据传输和加载的负担,通常会对数据进行抽稀化简。这意味着在较低的缩放级别下,某些细节会被省略,以确保瓦片数据大小适中,从而提高地图加载性能。
通过图3可知,通过对入库的地理信息矢量要素数据进行处理后生成原始实时矢量切片数据,对原始实时矢量切片数据进行优化后得到实时矢量切片数据;经过对数据的优化处理,实时矢量切片数据将变得更小、更适合网络传输和渲染,从而提高地图加载效率。
请参看图4,图4为本申请实施例提供的待编辑对象确定流程图;在本申请实施例的可选实施方式中,步骤S200中根据要素编辑请求,确定对应的待编辑地理信息矢量要素数据,可以通过以下步骤实现:
步骤S210:根据要素编辑请求,确定对应的实时矢量切片数据。
步骤S220:根据实时矢量切片数据,确定对应的待编辑地理信息矢量要素数据。
在上述步骤S220-S220中,当目标终端选择了需要编辑的要素,并将对一个的要素编辑请求发送给服务器,执行本方法的服务器获取到要素编辑请求之后,根据要素编辑请求确定出对应的实时矢量切片数据;进一步地,再由切片确定出对应的待编辑的地理信息矢量要素数据。
通过图4可知,本申请实施例提供的地图服务的更新方法,为了确定对应的待编辑地理信息矢量要素数据,需先从要素标编辑请求确定出对应的实时矢量切片数据,再从实时矢量切片数据确定出对应的待编辑地理信息矢量要素数据;通过该过程,准确地确定出待编辑要素数据,将切片数据还原为了空间信息和属性信息,从而为后续的编辑操作提供可准确的数据基础。
在一可选的实施例中,在获取要素编辑请求,并根据要素编辑请求,确定对应的待编辑地理信息矢量要素数据之后,该地图服务的更新方法还包括:将待编辑地理信息矢量要素数据的状态变化为除目标用户外不可编辑状态。
示例性地,使用行级锁机制对要素进行上锁解决并发问题,上锁标识要素编辑状态,同时记录要素编辑信息,对于多人协同编辑提供编辑用户标识记录。也就是说,当某个用户开始编辑一个特定的要素时,服务器会将该要素的编辑状态锁定,确保其他用户无法同时编辑该要素,从而防止编辑冲突和数据混乱。
由此可知,本申请实施例提供的地图服务的更新方法在确定对应的待编辑地理信息矢量要素数据之后,会通过要素上锁的方式改变对应的待编辑地理信息矢量要素数据的状态,有效地管理并发编辑问题,确保地图数据的准确性和一致性。
请参看图5,图5为本申请实施例提供的可编辑方式生成流程图;在本申请实施例的可选实施方式中,步骤S300:将待编辑地理信息要素以要素服务的形式向目标终端发送,可以包括以下步骤:
步骤S310:获取待编辑地理信息要素的空间信息和属性信息。
步骤S320:将空间信息和属性信息以空间信息编码方式进行组织,以获得待展示空间数据,并向目标终端发送。
在上述步骤S310-步骤S320中,为了将待编辑地理信息要素以要素服务的形式向目标终端发送;需要获取待编辑地理信息要素的空间信息和属性信息(空间信息和属性信息为要素数据本身的信息),再将空间信息和属性信息以空间信息编码方式进行组织,从而获得待展示空间数据。
示例性地,以GeoJSON格式对空间信息进行组织。需要说明的是,GeoJSON格式是一种轻量级的、易于阅读的文本格式,适合在网络传输中使用。它支持点、线、面等地理几何类型,能够准确地表示地理要素的位置和形状,同时也支持属性信息的附加。在矢量要素服务中,GeoJSON格式可以用于将空间信息编码为几何类型(如点、线、面)以及其坐标信息,从而在前端地图库中进行展示和渲染。
通过图5可知,服务器获得了待编辑地理信息要素数据,并将空间信息和属性信息按照指定的编码方式进行组织,以便将其传送到目标终端。使用GeoJSON格式对空间信息进行组织,使得数据能够以轻量、易读的方式传输到前端地图库中,以满足地图库的展示和渲染需求。
请参看图6,图6为本申请实施例提供的数据更新流程图;在本申请实施例的可选实施方式中,在步骤S300在获取更新地理信息矢量要素数据之后,该方法还包括以下步骤:
步骤S03:将更新地理信息矢量要素数据存储于数据库中。
在上述步骤S03中,服务器获取到更新后的地理信息矢量要素数据之后,空间数据以GeoJSON在终端被编辑绘制之后记录新要素的空间信息和属性信息,通过HTTP请求将数据传回服务器,服务器通过数据库接口将新要素的空间信息和属性信息更新或新增存入数据库中。
由于采用的实时矢量切片服务对外提供服务,数据库中数据变化之后,下一个请求过来生成矢量切片的时候取到的数据就已经是更新后的数据,从而实现数据更新之后的地图服务的更新。
步骤S04:根据更新地理信息矢量要素数据重新生成实时矢量切片数据,并向其他终端发送。
在上述步骤S04中,将更新后的最新结果推送给其他终端;其中,其他终端包括协同处理目标地图服务的终端。当多人编辑的时候,每一次刷新页面就等同于重新请求数据,从而获取到数据库中更新后的矢量要素数据。
通过图6可知,被编辑或新增的要素数据被存储与数据库中,使服务器可以有效地管理更新后的地理信息矢量要素数据;更新后的切片数据被发送给其他终端和目标终端,确保多人协同编辑时各终端的数据一致性。
请参看图7,图7为本申请实时提供的数据交互示意图;如8所示,用户前端为本申请中的终端,具体过程如下:
用户前端首先开启在线编辑模式,启动要素的编辑状态。用户开启编辑的时候选择对象是后台服务提供的矢量切片服务,可以看到数据但不是编辑的对象。
服务器,矢量切片服务将空间数据以矢量切片标准规范组织成二进制流的方式提供前端地图展示,矢量切片服务主要是提供展示用。
进一步地,用户选择编辑要素,矢量切片支持前端对要素进行选择高亮,由于要支持多人协同,此时系统通过后台服务将选中的要素进行上锁,上锁的目的是保证该要素只被一个用户占用。
服务器端使用行级锁机制对要素进行上锁解决并发问题,上锁标识要素编辑状态,同时记录要素编辑信息,对于多人协同编辑提供编辑用户标识记录。
进一步地,用户通过矢量切片锁定要素,再通过要素服务获取锁定要素全部要素数据,包括空间信息和属性信息。
服务器要素服务提供要素的全部内容,包括完整的几何信息和属性信息。要素服务才能支持数据的编辑更新。
进一步地,要素服务通过前端渲染到地图界面,支持几何信息、属性信息、属性字段的新增修改删除。支持保持拓扑关系的节点编辑、支持编辑动作的逐步退回和一键还原、支持矢量要素的版本回溯。
服务器动态更新包括两部分内容:将一端编辑的结果动态更新到数据库中和将编辑最新结果推送给多端用户。
请参看图8,图8为本申请实施例提供的地图服务的更新系统;本申请第二方面还公开了一种地图服务的更新系统;该地图服务的更新系统100包括实时矢量切片生成模块110、在线编辑模块120和更新数据获取模块130。
实时矢量切片生成模块110用于基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送实时矢量切片数据;
在线编辑模块120用于获取要素编辑请求,并根据要素编辑请求,确定对应的待编辑地理信息矢量要素数据;
在线编辑模块120还用于将待编辑地理信息要素以要素服务的形式向目标终端发送;
更新数据获取模块130用于获取目标客户端基于要素服务编辑后的更新地理信息矢量要素数据,以完成地图服务的更新。
在一可选地实施例中,矢量切片生成模块110用于根据地理信息矢量要素数据,基于ST_AsMVTGeom函数和ST_AsMVT函数在PostGIS中,生成原始实时矢量切片数据;优化原始实时矢量切片数据,以获得实时矢量切片数据。
在一可选地实施例中,在线编辑模块120根据要素编辑请求,确定对应的实时矢量切片数据;根据实时矢量切片数据,确定对应的待编辑地理信息矢量要素数据。
在一可选地实施例中,在线编辑模块120获取待编辑地理信息要素的空间信息和属性信息;将空间信息和属性信息以空间信息编码方式进行组织,并向目标终端发送。
在一可选地实施例中,该地图服务的更新系统100还用于将更新地理信息矢量要素数据存储于数据库中;根据更新地理信息矢量要素数据重新生成实时矢量切片数据,并向其他终端发送;其中,其他终端包括协同处理目标地图服务的终端。
在一可选地实施例中,该地图服务的更新系统100还用于获取初始地理信息矢量要素数据;根据初始地理信息矢量要素数据,建立要素状态辅助字段;其中,要素状态辅助字段用于记录要素数据的版本、要素数据的状态以及编辑要素数据的目标用户信息。
在一可选地实施例中,该地图服务的更新系统100还用于将所述待编辑地理信息矢量要素数据的状态变化为除所述目标用户外不可编辑状态。
请参见图8,图8为本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备300,包括:处理器301和存储器302,存储器302存储有处理器301可执行的机器可读指令,机器可读指令被处理器301执行时执行如上的方法。
基于同一发明构思,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述任一实现方式中的步骤。
所述计算机可读存储介质可以是随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等各种可以存储程序代码的介质。其中,存储介质用于存储程序,所述处理器在接收到执行指令后,执行所述程序,本发明实施例任一实施例揭示的过程定义的电子终端所执行的方法可以应用于处理器中,或者由处理器实现。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
可以替换的,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。
所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种地图服务的更新方法,其特征在于,所述方法包括:
基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送所述实时矢量切片数据;
获取要素编辑请求,并根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据;
将所述待编辑地理信息要素以要素服务的形式向所述目标终端发送;
获取所述目标客户端基于所述要素服务编辑后的更新地理信息矢量要素数据,以完成所述地图服务的更新。
2.根据权利要求1所述的方法,其特征在于,所述基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,包括:
根据地理信息矢量要素数据,基于ST_AsMVTGeom函数和ST_AsMVT函数在PostGIS中,生成原始实时矢量切片数据;
优化所述原始实时矢量切片数据,以获得所述实时矢量切片数据。
3.根据权利要求1所述的方法,其特征在于,所述根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据,包括:
根据要素编辑请求,确定对应的所述实时矢量切片数据;
根据所述实时矢量切片数据,确定对应的所述待编辑地理信息矢量要素数据。
4.根据权利要求1所述的方法,其特征在于,所述将所述待编辑地理信息要素以要素服务的形式向所述目标终端发送,包括:
获取所述待编辑地理信息要素的空间信息和属性信息;
将所述空间信息和属性信息以空间信息编码方式进行组织,并向所述目标终端发送。
5.根据权利要求1所述的方法,其特征在于,在所述获取更新地理信息矢量要素数据之后,所述方法还包括:
将所述更新地理信息矢量要素数据存储于数据库中;
根据所述更新地理信息矢量要素数据重新生成实时矢量切片数据,并向其他终端发送;其中,所述其他终端包括协同处理所述目标地图服务的终端。
6.根据权利要求1所述的方法,其特征在于,在所述基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据之前,所述方法还包括:
获取初始地理信息矢量要素数据;
根据所述初始地理信息矢量要素数据,建立要素状态辅助字段;其中,所述要素状态辅助字段用于记录要素数据的版本、要素数据的状态以及编辑要素数据的目标用户信息。
7.根据权利要求6所述的方法,其特征在于,在所述获取要素编辑请求,并根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据之后,所述方法还包括:
将所述待编辑地理信息矢量要素数据的状态变化为除所述目标用户外不可编辑状态。
8.一种地图服务的更新系统,其特征在于,所述地图服务更新系统包括:实时矢量切片生成模块、在线编辑模块和更新数据获取模块;
所述实时矢量切片生成模块用于基于目标地图服务对应的地理信息矢量要素数据,生成实时矢量切片数据,并向目标终端发送所述实时矢量切片数据;
所述在线编辑模块用于获取要素编辑请求,并根据所述要素编辑请求,确定对应的待编辑地理信息矢量要素数据;
所述在线编辑模块还用于将所述待编辑地理信息要素以要素服务的形式向所述目标终端发送;
所述更新数据获取模块用于获取所述目标客户端基于所述要素服务编辑后的更新地理信息矢量要素数据,以完成所述地图服务的更新。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器中存储有程序指令,所述处理器运行所述程序指令时,执行权利要求1-7中任一项所述方法中的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器运行时,执行权利要求1-7任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311140589.0A CN117171283A (zh) | 2023-09-05 | 2023-09-05 | 地图服务的更新方法、系统和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311140589.0A CN117171283A (zh) | 2023-09-05 | 2023-09-05 | 地图服务的更新方法、系统和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117171283A true CN117171283A (zh) | 2023-12-05 |
Family
ID=88946509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311140589.0A Pending CN117171283A (zh) | 2023-09-05 | 2023-09-05 | 地图服务的更新方法、系统和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117171283A (zh) |
-
2023
- 2023-09-05 CN CN202311140589.0A patent/CN117171283A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wood et al. | Interactive visual exploration of a large spatio-temporal dataset: Reflections on a geovisualization mashup. | |
EP1247209B1 (en) | Geographic maps on a personal digital assistant (pda) and server | |
CN109388791B (zh) | 图表动态展示方法、装置、计算机设备及存储介质 | |
US10013799B2 (en) | Portable globe creation for a geographical information system | |
EP2539833A2 (en) | Portable globe creation for a geographical information system | |
CN115079872B (zh) | 一种文档处理方法、装置、设备和介质 | |
CN102929483A (zh) | 终端和资源分享方法 | |
CN111354084A (zh) | 一种基于三维模型瓦片的网络地理信息服务系统 | |
CN108536467B (zh) | 代码的定位处理方法、装置、终端设备及存储介质 | |
CN110209748B (zh) | 索引地理围栏的方法和装置 | |
CN114911807A (zh) | 一种露天矿山无人化系统地图更新系统及方法 | |
CN113495933A (zh) | 一种矢量瓦片显示方法及系统 | |
CN113347276B (zh) | 一种基于gis的移动式访问系统 | |
CN117171283A (zh) | 地图服务的更新方法、系统和电子设备 | |
CN114756228A (zh) | 页面处理方法、装置、设备及存储介质 | |
CN102663134B (zh) | 一种热点图片加载方法、控制服务器、客户端及系统 | |
CN107193891B (zh) | 内容推荐方法及装置 | |
CN113656506B (zh) | 一种电子说明书获取方法、装置及可读介质 | |
CN114357093A (zh) | 一种基于数字实景地图的区域资源管理与运用系统 | |
CN116737852A (zh) | 一种基于矢量瓦片数据的矢量绘图方法、装置和电子设备 | |
CN112905164B (zh) | 一种项目代码处理方法和装置 | |
CN114153631A (zh) | 一种WebGIS数据共享方法、装置和系统 | |
CN112860725A (zh) | Sql自动生成方法和装置、存储介质及电子设备 | |
US8601012B2 (en) | Automatic search and transfer apparatus and automatic search and transfer system | |
KR20190130959A (ko) | 크로마 서브 샘플링된 이미지들에 대한 빠른 참조 객체 저장 형식에 대한 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |