适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法.pdf

上传人:1****2 文档编号:1489438 上传时间:2018-06-17 格式:PDF 页数:11 大小:1MB
返回 下载 相关 举报
摘要
申请专利号:

CN201310318325.X

申请日:

2013.07.24

公开号:

CN103425754A

公开日:

2013.12.04

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20130724|||公开

IPC分类号:

G06F17/30; G06F12/08

主分类号:

G06F17/30

申请人:

浙江大学

发明人:

杜震洪; 刘仁义; 张丰; 钱宸; 曹敏杰

地址:

310027 浙江省杭州市浙大路38号

优先权:

专利代理机构:

杭州求是专利事务所有限公司 33200

代理人:

张法高

PDF下载: PDF下载
内容摘要

本发明公开了一种适用于在线编辑的地图服务静态缓存局部动态更新方法。方法步骤为:1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;3)地图服务静态缓存服务器接收请求进行局部缓存更替操作;4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作。维护编辑后地图数据与网络发布呈现的同步性与一致性,在不影响地图数据编辑操作的前提下进行计算机自动交互式处理,提高了工作效率,在空间信息地图服务发布领域中应用前景非常广泛,能满足涉及空间数据频繁编辑的业务实际需求。

权利要求书

1.  一种适用于在线编辑的地图服务静态缓存局部动态更新方法,其特征在于包括如下步骤:
1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;
2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;
3)地图服务静态缓存服务器接收请求进行局部缓存更替操作,通过UpdateTiles方法传入预置的地图服务缓存基本参数与用户编辑区块外包矩形所属缓存图片的行列号,构建编辑区块对应的目标缓存路径,获取需替换的缓存图片及坐标范围属性进行定位与文件替换;
4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作,地图缓存服务器的缓存替换工作完成后,客户端通过指定的统一资源标识符URL访问更新后的地图数据缓存,此次访问后,通过浏览器的缓存机制,预取了更新后的缓存图片,刷新本地的浏览器缓存。

2.
  根据权利要求1所述的一种适用于在线编辑的地图服务静态缓存局部动态更新方法,其特征在于所述步骤1)为:
(1)地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存,设定多项参数建立地图服务静态缓存库,将参数的设定写入配置文件中;
(2)确定地图数据静态缓存空间范围,以二维象限坐标轴的X横轴方向的最大值和最小值、Y纵轴方向的最大值和最小值确定地图数据静态缓存的空间范围,即、MatrixMaxX、MatrixMinX、MatrixMaxY和MatrixMinY;
(3)确定地图数据缩放级数、分块大小和缓存图片格式,依据需发布的地图数据原始比例尺及全屏比例尺设定缩放级数,对于有叠加分析需求的地图服务,其缩放级数与各级比例尺应该统一定义,分块的大小为256×256,在特殊的行业要求情况下可以特殊设定;缓存图片格式为PNG、JPG或BMP。

3.
  根据权利要求1所述的一种适用于在线编辑的地图服务静态缓存局部动态更新方法,其特征在于所述步骤2)为:
(1)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务缓存服务器发送编辑及更新请求,依据不同的层级设定,多层级的操作需进行循环的重复操作,操作的方式相同,针对确定的一个层级,地理空间数据地图要素的编辑操作包括点、线和多边形面数据的编辑,针对不同的数据编辑操作,分别计算用户编辑区块外包矩形的角点坐标,确定编辑区块空间范围;
(2)确定点编辑外包矩形空间范围,点编辑操作包含单点或多点编辑,设单点编辑对象的点坐标为(X,Y),用户编辑区块矩形区块的设定以该点为中心,通过一个不影响坐标经度的极小值ε,ε>0,向四周扩展,得到的矩形区块左上角点坐标为(X-ε,Y+ε)、右上角坐标为(X+ε,Y+ε)、左下角坐标为(X-ε,Y-ε),右下角坐标为(X+ε,Y-ε),多点编辑操作中,通过横轴坐标和纵轴坐标分别比较获得所有点中的最高点、最低点、最左点和最右点,对应的分别为纵坐标最大值MaxY、纵坐标最小值MinY、横坐标最小值MinX和横坐标最大值MaxY,给定一个不影响坐标经度的极小值ε,ε>0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-ε,MaxY+ε)、右上角坐标为(MinX-ε,MaxY+ε)、左下角点坐标为(MinX-ε,MinY-ε)和右下角点坐标为(MinX+ε,MinY-ε);
(3)确定线编辑外包矩形空间范围,线编辑操作包含单个线要素或多个线要素编辑,设单个线要素端点坐标分别为(X1,Y1)和(X2,Y2),X1< X2, Y1< Y2,给定一个不影响坐标经度的极小值ε,ε>0,确定矩形区块的左上角坐标点为(X1-ε,Y2+ε)、右上角坐标点为(X2+ε, Y2+ε)、左下角坐标点位(X1-ε,Y1-ε)和右下角坐标点为(X2+ε,Y1-ε),多个线要素编辑操作中,依照步骤2)中的多点编辑处理方式可获得多个线要素的矩阵区块;
(4)确定多边形面编辑外包矩形空间范围,多边形面编辑操作包含单个多边形面要素或多个多边形面要素编辑,单个多边形面获取编辑对象的所有角点集合(X1,Y1)、(X2,Y2)……、(XN,YN),分别选取横坐标和纵坐标的最小值和最大值:MinX、MaxX、MinY和MaxY,给定一个不影响坐标经度的极小值ε,ε>0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-ε,MaxY+ε)、右上角坐标为(MinX-ε,MaxY+ε)、左下角点坐标为(MinX-ε,MinY-ε)和右下角点坐标为(MinX+ε,MinY-ε),多个多边形面要素编辑依照1)中的多点要素外包矩形角点坐标设定方法,确定其空间范围;
(5)根据步骤(2)至步骤(4)确定的用户编辑区块外包矩形在二维象限的空间覆盖横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY,根据用户编辑区块外包矩形的角点坐标计算所属的行列号范围,设定行号范围为MinRowIndex至MaxRowIndex,列号范围为MinColIndex至MaxRowIndex;
采用数学的浮点数取整方法Floor函数,计算如下:
                                                
其中,TileSpanY依据不同的层级设定,多层级的操作需进行循环的重复步骤(2)至步骤(5),到所有层级遍历结束为止。

说明书

适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法
技术领域
本发明涉及空间数据地图服务发布技术领域。尤其涉及一种适用于在线编辑的地图服务静态缓存局部动态更新方法。
背景技术
随着信息化的发展及数据采集方式的智能化,空间数据急速膨胀,数据量急速增长。由于数据共享等需要,空间数据的网络发布需求日益迫切。而用户对空间数据的网络浏览等操作引起的客户端与服务器端之间的频繁交互,引起网络负载量过大、用户响应慢等问题。
网络地图服务缓存可以部分或者完全减少客户端与服务器端之间的交互,增强用户的体验,静态的缓存尤其可以通过预取的方式事先设定用户的行为,提前进行客户端的请求与服务器端的响应。在已有的地图服务架构,如REST架构中,其缓存约束要求一个请求的响应中,资源被显式地或隐式地被标记为资源是否可缓存或者不可缓存。在资源设定为可缓存的情况下,客户端在第一次请求后就会对用户接下来对相同资源的请求重用本地的缓存数据,可以有效地避免网络传输量过大等问题。
虽然地图服务静态缓存的优势是可以通过一定的缓存机制减少或者完全避免客户端与服务器端某些频繁的交互操作,但是,当原有资源中的内容发生了改变,如地图数据要素编辑操作等,缓存中的陈旧数据与客户端通过请求直接发送给服务器而获取的数据有很大的区别,这就使得通过静态缓存机制提供的网络地图服务可靠性和准确性无法得到保障,即缓存机制的存在反而引起了实际数据与呈现的地图服务数据不一致,对于土地、水利等涉及空间数据频繁编辑的行业领域来说,影响了用户获取数据的准确性和及时性。
静态资源的变动需要一种机制去强制更新客户端的缓存,保证客户端获取最新的地图数据服务,不使用滞留的、过期的缓存服务。目前大多采用的静态缓存重新生成的方法耗时长、大量占用服务器软硬件资源,对应用于地图数据频繁编辑业务的缓存更新相关研究并不多。
发明内容
本发明的目的是为克服现有技术存在的问题,提供一种适用于在线编辑的地图服务静态缓存局部动态更新方法。
适用于在线编辑的地图服务静态缓存局部动态更新方法包括如下步骤:
1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;
2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;
3)地图服务静态缓存服务器接收请求进行局部缓存更替操作,通过UpdateTiles方法传入预置的地图服务缓存基本参数与用户编辑区块外包矩形所属缓存图片的行列号,构建编辑区块对应的目标缓存路径,获取需替换的缓存图片及坐标范围属性进行定位与文件替换;
4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作,地图缓存服务器的缓存替换工作完成后,客户端通过指定的统一资源标识符URL访问更新后的地图数据缓存,此次访问后,通过浏览器的缓存机制,预取了更新后的缓存图片,刷新本地的浏览器缓存。
所述步骤1)为:
(1)地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存。设定多项参数建立地图服务静态缓存库,将参数的设定写入配置文件中;
(2)确定地图数据静态缓存空间范围,以二维象限坐标轴的X横轴方向的最大值和最小值、Y纵轴方向的最大值和最小值确定地图数据静态缓存的空间范围,即、MatrixMaxX、MatrixMinX、MatrixMaxY和MatrixMinY;
(3)确定地图数据缩放级数、分块大小和缓存图片格式,依据需发布的地图数据原始比例尺及全屏比例尺设定缩放级数,对于有叠加分析需求的地图服务,其缩放级数与各级比例尺应该统一定义,分块的大小为256×256,在特殊的行业要求情况下可以特殊设定;缓存图片格式为PNG、JPG或BMP。
所述步骤2)为:
(1)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务缓存服务器发送编辑及更新请求,依据不同的层级设定,多层级的操作需进行循环的重复操作,操作的方式相同,针对确定的一个层级,地理空间数据地图要素的编辑操作包括点、线和多边形面数据的编辑,针对不同的数据编辑操作,分别计算用户编辑区块外包矩形的角点坐标,确定编辑区块空间范围;
(2)确定点编辑外包矩形空间范围,点编辑操作包含单点或多点编辑,设单点编辑对象的点坐标为(X,Y),用户编辑区块矩形区块的设定以该点为中心,通过一个不影响坐标经度的极小值ε,ε>0,向四周扩展,得到的矩形区块左 上角点坐标为(X-ε,Y+ε)、右上角坐标为(X+ε,Y+ε)、左下角坐标为(X-ε,Y-ε),右下角坐标为(X+ε,Y-ε),多点编辑操作中,通过横轴坐标和纵轴坐标分别比较获得所有点中的最高点、最低点、最左点和最右点,对应的分别为纵坐标最大值MaxY、纵坐标最小值MinY、横坐标最小值MinX和横坐标最大值MaxY,给定一个不影响坐标经度的极小值ε,ε>0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-ε,MaxY+ε)、右上角坐标为(MinX-ε,MaxY+ε)、左下角点坐标为(MinX-ε,MinY-ε)和右下角点坐标为(MinX+ε,MinY-ε);
(3)确定线编辑外包矩形空间范围,线编辑操作包含单个线要素或多个线要素编辑,设单个线要素端点坐标分别为(X1,Y1)和(X2,Y2),X1<X2,Y1<Y2,给定一个不影响坐标经度的极小值ε,ε>0,确定矩形区块的左上角坐标点为(X1-ε,Y2+ε)、右上角坐标点为(X2+ε,Y2+ε)、左下角坐标点位(X1-ε,Y1-ε)和右下角坐标点为(X2+ε,Y1-ε),多个线要素编辑操作中,依照步骤2)中的多点编辑处理方式可获得多个线要素的矩阵区块;
(4)确定多边形面编辑外包矩形空间范围,多边形面编辑操作包含单个多边形面要素或多个多边形面要素编辑,单个多边形面获取编辑对象的所有角点集合(X1,Y1)、(X2,Y2)……、(XN,YN),分别选取横坐标和纵坐标的最小值和最大值:MinX、MaxX、MinY和MaxY,给定一个不影响坐标经度的极小值ε,ε>0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-ε,MaxY+ε)、右上角坐标为(MinX-ε,MaxY+ε)、左下角点坐标为(MinX-ε,MinY-ε)和右下角点坐标为(MinX+ε,MinY-ε),多个多边形面要素编辑依照1)中的多点要素外包矩形角点坐标设定方法,确定其空间范围;
(5)根据步骤(2)至步骤(4)确定的用户编辑区块外包矩形在二维象限的空间覆盖横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY,根据用户编辑区块外包矩形的角点坐标计算所属的行列号范围,设定行号范围为MinRowIndex至MaxRowIndex,列号范围为MinColIndex至MaxRowIndex。采用数学的浮点数取整方法Floor函数,计算如下:
MinRowIndex=Floor((BBoxMinY-MatrixMinY)/TileSpanY)
MaxRowIndex=Floor((BBoxMaxY-MatrixMinY)/TileSpanY)
MinColIndex=Floor((BBoxMinX-MatrixMinX)/TileSpanX)
MaxColIndex=Floor((BBoxMaxX-MatrixMinY)/TileSpanX)
其中,TileSpanY依据不同的层级设定,多层级的操作需进行循环的重复步骤(2)至步骤(5),到所有层级遍历结束为止。
本发明与现有技术相比具有的有益效果:
1)维护了后台数据库中地图数据与网络发布的地图数据一致性,保证了网络发布地图数据的准确性、可靠性和实时性。
2)实现方法并不依赖于地图数据的来源、结构和格式等,具有通用性。
3)本发明实现方法简单,地图数据静态缓存局部更新,通过用户编辑区块外包矩形计算实现目标缓存定位,提高了缓存更新的效率。
附图说明
图1为地图数据编辑外包矩形示意图;
图2为方法整体运行流程图;
图3为地图服务静态缓存服务器的部分缓存图片替换流程图。
具体实施方式
适用于在线编辑的地图服务静态缓存局部动态更新方法包括如下步骤:
1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;
2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;
3)地图服务静态缓存服务器接收请求进行局部缓存更替操作,通过UpdateTiles方法传入预置的地图服务缓存基本参数与用户编辑区块外包矩形所属缓存图片的行列号,构建编辑区块对应的目标缓存路径,获取需替换的缓存图片及坐标范围属性进行定位与文件替换;
4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作,地图缓存服务器的缓存替换工作完成后,客户端通过指定的统一资源标识符URL访问更新后的地图数据缓存,此次访问后,通过浏览器的缓存机制,预取了更新后的缓存图片,刷新本地的浏览器缓存。
所述步骤1)为:
(1)地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存。设定多项参数建立地图服务静态缓存库,将参数的设定写入配置文件中;
(2)确定地图数据静态缓存空间范围,以二维象限坐标轴的X横轴方向的最大值和最小值、Y纵轴方向的最大值和最小值确定地图数据静态缓存的空间范围,即、MatrixMaxX、MatrixMinX、MatrixMaxY和MatrixMinY;
(3)确定地图数据缩放级数、分块大小和缓存图片格式,依据需发布的地图 数据原始比例尺及全屏比例尺设定缩放级数,对于有叠加分析需求的地图服务,其缩放级数与各级比例尺应该统一定义,分块的大小为256×256,在特殊的行业要求情况下可以特殊设定;缓存图片格式为PNG、JPG或BMP。
所述步骤2)为:
(1)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务缓存服务器发送编辑及更新请求,依据不同的层级设定,多层级的操作需进行循环的重复操作,操作的方式相同,针对确定的一个层级,地理空间数据地图要素的编辑操作包括点、线和多边形面数据的编辑,针对不同的数据编辑操作,分别计算用户编辑区块外包矩形的角点坐标,确定编辑区块空间范围;
(2)确定点编辑外包矩形空间范围,点编辑操作包含单点或多点编辑,设单点编辑对象的点坐标为(X,Y),用户编辑区块矩形区块的设定以该点为中心,通过一个不影响坐标经度的极小值ε,ε>0,向四周扩展,得到的矩形区块左上角点坐标为(X-ε,Y+ε)、右上角坐标为(X+ε,Y+ε)、左下角坐标为(X-ε,Y-ε),右下角坐标为(X+ε,Y-ε),多点编辑操作中,通过横轴坐标和纵轴坐标分别比较获得所有点中的最高点、最低点、最左点和最右点,对应的分别为纵坐标最大值MaxY、纵坐标最小值MinY、横坐标最小值MinX和横坐标最大值MaxY,给定一个不影响坐标经度的极小值ε,ε>0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-ε,MaxY+ε)、右上角坐标为(MinX-ε,MaxY+ε)、左下角点坐标为(MinX-ε,MinY-ε)和右下角点坐标为(MinX+ε,MinY-ε);
(3)确定线编辑外包矩形空间范围,线编辑操作包含单个线要素或多个线要素编辑,设单个线要素端点坐标分别为(X1,Y1)和(X2,Y2),X1<X2,Y1<Y2,给定一个不影响坐标经度的极小值ε,ε>0,确定矩形区块的左上角坐标点为(X1-ε,Y2+ε)、右上角坐标点为(X2+ε,Y2+ε)、左下角坐标点位(X1-ε,Y1-ε)和右下角坐标点为(X2+ε,Y1-ε),多个线要素编辑操作中,依照步骤2)中的多点编辑处理方式可获得多个线要素的矩阵区块;
(4)确定多边形面编辑外包矩形空间范围,多边形面编辑操作包含单个多边形面要素或多个多边形面要素编辑,单个多边形面获取编辑对象的所有角点集合(X1,Y1)、(X2,Y2)……、(XN,YN),分别选取横坐标和纵坐标的最小值和最大值:MinX、MaxX、MinY和MaxY,给定一个不影响坐标经度的极小值ε,ε>0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-ε,MaxY+ε)、右上角坐标为(MinX-ε,MaxY+ε)、左下角点坐标为(MinX-ε,MinY-ε)和右下 角点坐标为(MinX+ε,MinY-ε),多个多边形面要素编辑依照1)中的多点要素外包矩形角点坐标设定方法,确定其空间范围;
(5)根据步骤(2)至步骤(4)确定的用户编辑区块外包矩形在二维象限的空间覆盖横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY,根据用户编辑区块外包矩形的角点坐标计算所属的行列号范围,设定行号范围为MinRowIndex至MaxRowIndex,列号范围为MinColIndex至MaxRowIndex。采用数学的浮点数取整方法Floor函数,计算如下:
MinRowIndex=Floor((BBoxMinY-MatrixMinY)/TileSpanY)
MaxRowIndex=Floor((BBoxMaxY-MatrixMinY)/TileSpanY)
MinColIndex=Floor((BBoxMinX-MatrixMinX)/TileSpanX)
MaxColIndex=Floor((BBoxMaxX-MatrixMinY)/TileSpanX)
其中,TileSpanY依据不同的层级设定,多层级的操作需进行循环的重复步骤(2)至步骤(5),到所有层级遍历结束为止。
实施例:
第一步是预先生成地图数据的分层和分块缓存,缓存空间范围设定为一个矩形区块:左上角点坐标为(435792.333,3564678.561)、右上角点坐标为(636577.876,3564678.561)、左下角点坐标为(435792.333,3107522.773)和右下角坐标为(636577.876,3107522.773)。预设地图服务缓存的缩放级数TideLevel为16,分块大小为256×256,缓存图片格式为JPG。
第二步是捕捉用户编辑操作并获取编辑区块外包矩形的空间范围信息,设定横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY。假定用户进行多边形面要素删除的操作,删除操作包含两个四边形面要素。


设定BBoxMinX、BBoxMaxX、BBoxMinY和BBoxMaxY值为509384.655、509557.243、3195923.829和3196080.41。由于设定的缩放级数为16,以13级为例,TileSpanX和TileSpanY值为49.020、111.610。用户编辑外包矩形所属的行列号范围为:行号为792至793,列号为1501至1504;针对不同的缩放级别,可按照相同的方法计算获得用户编辑外包矩形所属的行列号范围。
第三步是通过UpdateTiles方法传入地图服务静态缓存的基本参数,包括计算获得的行列号范围和行列号范围对应缩放级别。针对缩放级别为13级的缓存图片更新操作,构建区块对应的目标缓存路径。根据构建的目标缓存路径定位到缓存图片进行文件的替换操作。

第四步是客户端浏览器访问服务器端地图服务静态缓存,进行缓存刷新操作。地图缓存服务器的缓存替换工作完成后,客户端通过不同缓存图片的URL访问第三步中更新的八张缓存图片,URL以发布网站地址与目标缓存相对路径构建。

适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法.pdf_第1页
第1页 / 共11页
适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法.pdf_第2页
第2页 / 共11页
适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法.pdf》由会员分享,可在线阅读,更多相关《适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法.pdf(11页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103425754 A(43)申请公布日 2013.12.04CN103425754A*CN103425754A*(21)申请号 201310318325.X(22)申请日 2013.07.24G06F 17/30(2006.01)G06F 12/08(2006.01)(71)申请人浙江大学地址 310027 浙江省杭州市浙大路38号(72)发明人杜震洪 刘仁义 张丰 钱宸曹敏杰(74)专利代理机构杭州求是专利事务所有限公司 33200代理人张法高(54) 发明名称适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法(57) 摘要本发明公开了一种适用于在线编辑的地图。

2、服务静态缓存局部动态更新方法。方法步骤为:1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;3)地图服务静态缓存服务器接收请求进行局部缓存更替操作;4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作。维护编辑后地图数据与网络发布呈现的同步性与一致性,在不影响地图数据编辑操作的前提下进行计算机自动交互式处理,提高了工作效率,在空间信息地图服务发布领域中应用前景非常广泛,能满足涉及空间数据频繁编辑的业务实际需求。(51)Int.Cl.权利要求书2页。

3、 说明书6页 附图2页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书6页 附图2页(10)申请公布号 CN 103425754 ACN 103425754 A1/2页21.一种适用于在线编辑的地图服务静态缓存局部动态更新方法,其特征在于包括如下步骤:1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;3)地图服务静态缓存服务器接收请求进行局部缓存更替操作,通过UpdateTiles方法传入预置的地图服务缓存基本参数与用户。

4、编辑区块外包矩形所属缓存图片的行列号,构建编辑区块对应的目标缓存路径,获取需替换的缓存图片及坐标范围属性进行定位与文件替换;4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作,地图缓存服务器的缓存替换工作完成后,客户端通过指定的统一资源标识符URL访问更新后的地图数据缓存,此次访问后,通过浏览器的缓存机制,预取了更新后的缓存图片,刷新本地的浏览器缓存。2.根据权利要求1所述的一种适用于在线编辑的地图服务静态缓存局部动态更新方法,其特征在于所述步骤1)为:(1)地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存,设定多项参数建立地图服务静态缓存库,将参数的设定写入配置文件。

5、中;(2)确定地图数据静态缓存空间范围,以二维象限坐标轴的X横轴方向的最大值和最小值、Y纵轴方向的最大值和最小值确定地图数据静态缓存的空间范围,即、MatrixMaxX、MatrixMinX、MatrixMaxY和MatrixMinY;(3)确定地图数据缩放级数、分块大小和缓存图片格式,依据需发布的地图数据原始比例尺及全屏比例尺设定缩放级数,对于有叠加分析需求的地图服务,其缩放级数与各级比例尺应该统一定义,分块的大小为256256,在特殊的行业要求情况下可以特殊设定;缓存图片格式为PNG、JPG或BMP。3.根据权利要求1所述的一种适用于在线编辑的地图服务静态缓存局部动态更新方法,其特征在于所。

6、述步骤2)为:(1)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务缓存服务器发送编辑及更新请求,依据不同的层级设定,多层级的操作需进行循环的重复操作,操作的方式相同,针对确定的一个层级,地理空间数据地图要素的编辑操作包括点、线和多边形面数据的编辑,针对不同的数据编辑操作,分别计算用户编辑区块外包矩形的角点坐标,确定编辑区块空间范围;(2)确定点编辑外包矩形空间范围,点编辑操作包含单点或多点编辑,设单点编辑对象的点坐标为(X,Y),用户编辑区块矩形区块的设定以该点为中心,通过一个不影响坐标经度的极小值,0,向四周扩展,得到的矩形区块左上角点坐标为(X-,Y+)、。

7、右上角坐标为(X+,Y+)、左下角坐标为(X-,Y-),右下角坐标为(X+,Y-),多点编辑操作中,通过横轴坐标和纵轴坐标分别比较获得所有点中的最高点、最低点、最左点和最右点,对应的分别为纵坐标最大值MaxY、纵坐标最小值MinY、横坐标最小值MinX和横坐标最大值MaxY,给定一个不影响坐标经度的极小值,0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-,MaxY+)、右上角坐标为(MinX-,MaxY+)、左下角点坐标为权 利 要 求 书CN 103425754 A2/2页3(MinX-,MinY-)和右下角点坐标为(MinX+,MinY-);(3)确定线编辑外包矩形空间范围,线编辑。

8、操作包含单个线要素或多个线要素编辑,设单个线要素端点坐标分别为(X1,Y1)和(X2,Y2),X10,确定矩形区块的左上角坐标点为(X1-,Y2+)、右上角坐标点为(X2+, Y2+)、左下角坐标点位(X1-,Y1-)和右下角坐标点为(X2+,Y1-),多个线要素编辑操作中,依照步骤2)中的多点编辑处理方式可获得多个线要素的矩阵区块;(4)确定多边形面编辑外包矩形空间范围,多边形面编辑操作包含单个多边形面要素或多个多边形面要素编辑,单个多边形面获取编辑对象的所有角点集合(X1,Y1)、(X2,Y2)、(XN,YN),分别选取横坐标和纵坐标的最小值和最大值:MinX、MaxX、MinY和MaxY。

9、,给定一个不影响坐标经度的极小值,0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-,MaxY+)、右上角坐标为(MinX-,MaxY+)、左下角点坐标为(MinX-,MinY-)和右下角点坐标为(MinX+,MinY-),多个多边形面要素编辑依照1)中的多点要素外包矩形角点坐标设定方法,确定其空间范围;(5)根据步骤(2)至步骤(4)确定的用户编辑区块外包矩形在二维象限的空间覆盖横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY,根据用户编辑区块外包矩形的角点坐标计算所属的行列号范围,设定行号范围为MinRowIndex至Max。

10、RowIndex,列号范围为MinColIndex至MaxRowIndex;采用数学的浮点数取整方法Floor函数,计算如下:其中,TileSpanY依据不同的层级设定,多层级的操作需进行循环的重复步骤(2)至步骤(5),到所有层级遍历结束为止。权 利 要 求 书CN 103425754 A1/6页4适用于用户在线编辑的瓦片式地图服务缓存实时动态更新方法技术领域0001 本发明涉及空间数据地图服务发布技术领域。尤其涉及一种适用于在线编辑的地图服务静态缓存局部动态更新方法。背景技术0002 随着信息化的发展及数据采集方式的智能化,空间数据急速膨胀,数据量急速增长。由于数据共享等需要,空间数据的网。

11、络发布需求日益迫切。而用户对空间数据的网络浏览等操作引起的客户端与服务器端之间的频繁交互,引起网络负载量过大、用户响应慢等问题。0003 网络地图服务缓存可以部分或者完全减少客户端与服务器端之间的交互,增强用户的体验,静态的缓存尤其可以通过预取的方式事先设定用户的行为,提前进行客户端的请求与服务器端的响应。在已有的地图服务架构,如REST架构中,其缓存约束要求一个请求的响应中,资源被显式地或隐式地被标记为资源是否可缓存或者不可缓存。在资源设定为可缓存的情况下,客户端在第一次请求后就会对用户接下来对相同资源的请求重用本地的缓存数据,可以有效地避免网络传输量过大等问题。0004 虽然地图服务静态缓。

12、存的优势是可以通过一定的缓存机制减少或者完全避免客户端与服务器端某些频繁的交互操作,但是,当原有资源中的内容发生了改变,如地图数据要素编辑操作等,缓存中的陈旧数据与客户端通过请求直接发送给服务器而获取的数据有很大的区别,这就使得通过静态缓存机制提供的网络地图服务可靠性和准确性无法得到保障,即缓存机制的存在反而引起了实际数据与呈现的地图服务数据不一致,对于土地、水利等涉及空间数据频繁编辑的行业领域来说,影响了用户获取数据的准确性和及时性。0005 静态资源的变动需要一种机制去强制更新客户端的缓存,保证客户端获取最新的地图数据服务,不使用滞留的、过期的缓存服务。目前大多采用的静态缓存重新生成的方法。

13、耗时长、大量占用服务器软硬件资源,对应用于地图数据频繁编辑业务的缓存更新相关研究并不多。发明内容0006 本发明的目的是为克服现有技术存在的问题,提供一种适用于在线编辑的地图服务静态缓存局部动态更新方法。0007 适用于在线编辑的地图服务静态缓存局部动态更新方法包括如下步骤:0008 1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;0009 2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;0010 3)地图服务静态缓存服务器接收请求进行局部缓存更替操作,通过UpdateTiles说 明 书CN 。

14、103425754 A2/6页5方法传入预置的地图服务缓存基本参数与用户编辑区块外包矩形所属缓存图片的行列号,构建编辑区块对应的目标缓存路径,获取需替换的缓存图片及坐标范围属性进行定位与文件替换;0011 4)客户端浏览器获知服务器更替完成消息,进行缓存刷新操作,地图缓存服务器的缓存替换工作完成后,客户端通过指定的统一资源标识符URL访问更新后的地图数据缓存,此次访问后,通过浏览器的缓存机制,预取了更新后的缓存图片,刷新本地的浏览器缓存。0012 所述步骤1)为:0013 (1)地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存。设定多项参数建立地图服务静态缓存库,将参数的设。

15、定写入配置文件中;0014 (2)确定地图数据静态缓存空间范围,以二维象限坐标轴的X横轴方向的最大值和最小值、Y纵轴方向的最大值和最小值确定地图数据静态缓存的空间范围,即、MatrixMaxX、MatrixMinX、MatrixMaxY和MatrixMinY;0015 (3)确定地图数据缩放级数、分块大小和缓存图片格式,依据需发布的地图数据原始比例尺及全屏比例尺设定缩放级数,对于有叠加分析需求的地图服务,其缩放级数与各级比例尺应该统一定义,分块的大小为256256,在特殊的行业要求情况下可以特殊设定;缓存图片格式为PNG、JPG或BMP。0016 所述步骤2)为:0017 (1)地图要素在线编。

16、辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务缓存服务器发送编辑及更新请求,依据不同的层级设定,多层级的操作需进行循环的重复操作,操作的方式相同,针对确定的一个层级,地理空间数据地图要素的编辑操作包括点、线和多边形面数据的编辑,针对不同的数据编辑操作,分别计算用户编辑区块外包矩形的角点坐标,确定编辑区块空间范围;0018 (2)确定点编辑外包矩形空间范围,点编辑操作包含单点或多点编辑,设单点编辑对象的点坐标为(X,Y),用户编辑区块矩形区块的设定以该点为中心,通过一个不影响坐标经度的极小值,0,向四周扩展,得到的矩形区块左上角点坐标为(X-,Y+)、右上角坐标为(X+,Y+。

17、)、左下角坐标为(X-,Y-),右下角坐标为(X+,Y-),多点编辑操作中,通过横轴坐标和纵轴坐标分别比较获得所有点中的最高点、最低点、最左点和最右点,对应的分别为纵坐标最大值MaxY、纵坐标最小值MinY、横坐标最小值MinX和横坐标最大值MaxY,给定一个不影响坐标经度的极小值,0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-,MaxY+)、右上角坐标为(MinX-,MaxY+)、左下角点坐标为(MinX-,MinY-)和右下角点坐标为(MinX+,MinY-);0019 (3)确定线编辑外包矩形空间范围,线编辑操作包含单个线要素或多个线要素编辑,设单个线要素端点坐标分别为(X1,。

18、Y1)和(X2,Y2),X10,确定矩形区块的左上角坐标点为(X1-,Y2+)、右上角坐标点为(X2+,Y2+)、左下角坐标点位(X1-,Y1-)和右下角坐标点为(X2+,Y1-),多个线要素编辑操作中,依照步骤2)中的多点编辑处理方式可获得多个线要素的矩阵区块;0020 (4)确定多边形面编辑外包矩形空间范围,多边形面编辑操作包含单个多边形面要素或多个多边形面要素编辑,单个多边形面获取编辑对象的所有角点集合(X1,Y1)、(X2,说 明 书CN 103425754 A3/6页6Y2)、(XN,YN),分别选取横坐标和纵坐标的最小值和最大值:MinX、MaxX、MinY和MaxY,给定一个不影。

19、响坐标经度的极小值,0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-,MaxY+)、右上角坐标为(MinX-,MaxY+)、左下角点坐标为(MinX-,MinY-)和右下角点坐标为(MinX+,MinY-),多个多边形面要素编辑依照1)中的多点要素外包矩形角点坐标设定方法,确定其空间范围;0021 (5)根据步骤(2)至步骤(4)确定的用户编辑区块外包矩形在二维象限的空间覆盖横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY,根据用户编辑区块外包矩形的角点坐标计算所属的行列号范围,设定行号范围为MinRowIndex至MaxRo。

20、wIndex,列号范围为MinColIndex至MaxRowIndex。采用数学的浮点数取整方法Floor函数,计算如下:0022 MinRowIndexFloor(BBoxMinY-MatrixMinY)/TileSpanY)0023 MaxRowIndexFloor(BBoxMaxY-MatrixMinY)/TileSpanY)0024 MinColIndexFloor(BBoxMinX-MatrixMinX)/TileSpanX)0025 MaxColIndexFloor(BBoxMaxX-MatrixMinY)/TileSpanX)0026 其中,TileSpanY依据不同的层级设定,。

21、多层级的操作需进行循环的重复步骤(2)至步骤(5),到所有层级遍历结束为止。0027 本发明与现有技术相比具有的有益效果:0028 1)维护了后台数据库中地图数据与网络发布的地图数据一致性,保证了网络发布地图数据的准确性、可靠性和实时性。0029 2)实现方法并不依赖于地图数据的来源、结构和格式等,具有通用性。0030 3)本发明实现方法简单,地图数据静态缓存局部更新,通过用户编辑区块外包矩形计算实现目标缓存定位,提高了缓存更新的效率。附图说明0031 图1为地图数据编辑外包矩形示意图;0032 图2为方法整体运行流程图;0033 图3为地图服务静态缓存服务器的部分缓存图片替换流程图。具体实施。

22、方式0034 适用于在线编辑的地图服务静态缓存局部动态更新方法包括如下步骤:0035 1)定义地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存;0036 2)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务静态缓存服务器发送编辑及更新请求;0037 3)地图服务静态缓存服务器接收请求进行局部缓存更替操作,通过UpdateTiles方法传入预置的地图服务缓存基本参数与用户编辑区块外包矩形所属缓存图片的行列号,构建编辑区块对应的目标缓存路径,获取需替换的缓存图片及坐标范围属性进行定位与文件替换;0038 4)客户端浏览器获知服务器更替完成消息,进。

23、行缓存刷新操作,地图缓存服务器说 明 书CN 103425754 A4/6页7的缓存替换工作完成后,客户端通过指定的统一资源标识符URL访问更新后的地图数据缓存,此次访问后,通过浏览器的缓存机制,预取了更新后的缓存图片,刷新本地的浏览器缓存。0039 所述步骤1)为:0040 (1)地图服务静态缓存文件组织方式,预先生成地图服务分层、分块的服务器缓存。设定多项参数建立地图服务静态缓存库,将参数的设定写入配置文件中;0041 (2)确定地图数据静态缓存空间范围,以二维象限坐标轴的X横轴方向的最大值和最小值、Y纵轴方向的最大值和最小值确定地图数据静态缓存的空间范围,即、MatrixMaxX、Mat。

24、rixMinX、MatrixMaxY和MatrixMinY;0042 (3)确定地图数据缩放级数、分块大小和缓存图片格式,依据需发布的地图数据原始比例尺及全屏比例尺设定缩放级数,对于有叠加分析需求的地图服务,其缩放级数与各级比例尺应该统一定义,分块的大小为256256,在特殊的行业要求情况下可以特殊设定;缓存图片格式为PNG、JPG或BMP。0043 所述步骤2)为:0044 (1)地图要素在线编辑事件监控,实时捕捉用户编辑区块信息及所属地图服务信息,向地图服务缓存服务器发送编辑及更新请求,依据不同的层级设定,多层级的操作需进行循环的重复操作,操作的方式相同,针对确定的一个层级,地理空间数据地。

25、图要素的编辑操作包括点、线和多边形面数据的编辑,针对不同的数据编辑操作,分别计算用户编辑区块外包矩形的角点坐标,确定编辑区块空间范围;0045 (2)确定点编辑外包矩形空间范围,点编辑操作包含单点或多点编辑,设单点编辑对象的点坐标为(X,Y),用户编辑区块矩形区块的设定以该点为中心,通过一个不影响坐标经度的极小值,0,向四周扩展,得到的矩形区块左上角点坐标为(X-,Y+)、右上角坐标为(X+,Y+)、左下角坐标为(X-,Y-),右下角坐标为(X+,Y-),多点编辑操作中,通过横轴坐标和纵轴坐标分别比较获得所有点中的最高点、最低点、最左点和最右点,对应的分别为纵坐标最大值MaxY、纵坐标最小值M。

26、inY、横坐标最小值MinX和横坐标最大值MaxY,给定一个不影响坐标经度的极小值,0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-,MaxY+)、右上角坐标为(MinX-,MaxY+)、左下角点坐标为(MinX-,MinY-)和右下角点坐标为(MinX+,MinY-);0046 (3)确定线编辑外包矩形空间范围,线编辑操作包含单个线要素或多个线要素编辑,设单个线要素端点坐标分别为(X1,Y1)和(X2,Y2),X10,确定矩形区块的左上角坐标点为(X1-,Y2+)、右上角坐标点为(X2+,Y2+)、左下角坐标点位(X1-,Y1-)和右下角坐标点为(X2+,Y1-),多个线要素编辑操作。

27、中,依照步骤2)中的多点编辑处理方式可获得多个线要素的矩阵区块;0047 (4)确定多边形面编辑外包矩形空间范围,多边形面编辑操作包含单个多边形面要素或多个多边形面要素编辑,单个多边形面获取编辑对象的所有角点集合(X1,Y1)、(X2,Y2)、(XN,YN),分别选取横坐标和纵坐标的最小值和最大值:MinX、MaxX、MinY和MaxY,给定一个不影响坐标经度的极小值,0,确定用户编辑外包的矩阵区块左上角点坐标为(MinX-,MaxY+)、右上角坐标为(MinX-,MaxY+)、左下角点坐标为(MinX-,MinY-)和右下角点坐标为(MinX+,MinY-),多个多边形面要素编辑依照1)中的。

28、多点说 明 书CN 103425754 A5/6页8要素外包矩形角点坐标设定方法,确定其空间范围;0048 (5)根据步骤(2)至步骤(4)确定的用户编辑区块外包矩形在二维象限的空间覆盖横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY,根据用户编辑区块外包矩形的角点坐标计算所属的行列号范围,设定行号范围为MinRowIndex至MaxRowIndex,列号范围为MinColIndex至MaxRowIndex。采用数学的浮点数取整方法Floor函数,计算如下:0049 MinRowIndexFloor(BBoxMinY-MatrixMi。

29、nY)/TileSpanY)0050 MaxRowIndexFloor(BBoxMaxY-MatrixMinY)/TileSpanY)0051 MinColIndexFloor(BBoxMinX-MatrixMinX)/TileSpanX)0052 MaxColIndexFloor(BBoxMaxX-MatrixMinY)/TileSpanX)0053 其中,TileSpanY依据不同的层级设定,多层级的操作需进行循环的重复步骤(2)至步骤(5),到所有层级遍历结束为止。0054 实施例:0055 第一步是预先生成地图数据的分层和分块缓存,缓存空间范围设定为一个矩形区块:左上角点坐标为(435。

30、792.333,3564678.561)、右上角点坐标为(636577.876,3564678.561)、左下角点坐标为(435792.333,3107522.773)和右下角坐标为(636577.876,3107522.773)。预设地图服务缓存的缩放级数TideLevel为16,分块大小为256256,缓存图片格式为JPG。0056 第二步是捕捉用户编辑操作并获取编辑区块外包矩形的空间范围信息,设定横轴最小值BBoxMinX、最大值为BBoxMaxX;纵轴最小值为BBoxMinY、最大值为BBoxMaxY。假定用户进行多边形面要素删除的操作,删除操作包含两个四边形面要素。0057 0058。

31、 0059 设定BBoxMinX、BBoxMaxX、BBoxMinY和BBoxMaxY值为509384.655、509557.243、3195923.829和3196080.41。由于设定的缩放级数为16,以13级为例,TileSpanX和TileSpanY值为49.020、111.610。用户编辑外包矩形所属的行列号范围为:行号为792至说 明 书CN 103425754 A6/6页9793,列号为1501至1504;针对不同的缩放级别,可按照相同的方法计算获得用户编辑外包矩形所属的行列号范围。0060 第三步是通过UpdateTiles方法传入地图服务静态缓存的基本参数,包括计算获得的行列号范围和行列号范围对应缩放级别。针对缩放级别为13级的缓存图片更新操作,构建区块对应的目标缓存路径。根据构建的目标缓存路径定位到缓存图片进行文件的替换操作。0061 0062 第四步是客户端浏览器访问服务器端地图服务静态缓存,进行缓存刷新操作。地图缓存服务器的缓存替换工作完成后,客户端通过不同缓存图片的URL访问第三步中更新的八张缓存图片,URL以发布网站地址与目标缓存相对路径构建。说 明 书CN 103425754 A1/2页10图1图2说 明 书 附 图CN 103425754 A10。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1