一种将矢量数据转换为栅格切片的方法及装置制造方法及图纸

技术编号:20622498 阅读:30 留言:0更新日期:2019-03-20 14:23
本发明专利技术提供了一种将矢量数据转换为栅格切片的方法及装置,该方法,包括:获取待处理的矢量数据;利用分布式处理的方式,将所述矢量数据转换为至少一个矢量切片;利用分布式处理的方式,将所述至少一个矢量切片转换为栅格切片。本发明专利技术提供了一种将矢量数据转换为栅格切片的方法及装置,能够更快的完成转换。

A Method and Device for Converting Vector Data into Raster Slices

The invention provides a method and device for converting vector data into grid slices. The method includes acquiring vector data to be processed, converting the vector data into at least one vector slice by means of distributed processing, and converting at least one vector slice into grid slice by means of distributed processing. The invention provides a method and device for converting vector data into grid slices, which can complete the conversion faster.

【技术实现步骤摘要】
一种将矢量数据转换为栅格切片的方法及装置
本专利技术涉及计算机
,特别涉及一种将矢量数据转换为栅格切片的方法及装置。
技术介绍
现在最常用的地图底图技术是栅格切片底图,本质上是将空间数据分别渲染为不同缩放级别的地图图片,然后将各个级别的图片按照一定规则切分,按照一定的“规则组织”,存储到硬盘或数据库中,构成一幅完整的地图。在现有技术中,切片转换的过程都是在同一个处理设备上来完成的,由于处理设备的处理能力有限,需要较长的时间才能完成转换。
技术实现思路
本专利技术实施例提供了一种将矢量数据转换为栅格切片的方法及装置,能够更快的完成转换。第一方面,本专利技术实施例提供了一种将矢量数据转换为栅格切片的方法,包括:获取待处理的矢量数据;利用分布式处理的方式,将所述矢量数据转换为至少一个矢量切片;利用分布式处理的方式,将所述至少一个矢量切片转换为栅格切片。优选地,所述将所述至少一个矢量切片转换为栅格切片,包括:针对每个所述矢量切片执行:确定当前矢量切片中每个点的矢量坐标;根据每个点的矢量坐标,确定每个点在栅格切片中的行值和列值,实现从所述当前矢量切片到所述栅格切片的点的转换;确定所述当前矢量切片中每一对相邻的点,确定每一对相邻的点的连线经过的所述栅格切片中的每个栅格的行值和列值,实现从所述当前矢量切片到所述栅格切片的线的转换;对所述栅格切片上的边界进行跟踪,实现从所述当前矢量切片到所述栅格切片的面的转换。优选地,所述根据每个点的矢量坐标,确定每个点在栅格切片中的行值和列值,包括:确定所述当前矢量切片中横坐标的最小值xmin和纵坐标的最大值ymax;确定所述栅格切片中每个栅格的边长Δx和Δy;根据公式一,确定当前点在所述栅格切片中的行值,其中,所述公式一为:根据公式二,确定当前点在所述栅格切片中的列值,其中,所述公式二为:其中,i为当前点在所述栅格切片中的行值,j为当前点在所述栅格切片中的列值,Δx和Δy为所述栅格切片中每个栅格的边长,xmin为所述当前矢量切片中横坐标的最小值,ymax为所述当前矢量切片中纵坐标的最大值,Interger()为取整运算,x和y是当前点的矢量坐标。优选地,所述确定每一对相邻的点的连线经过的所述栅格切片中的每个栅格的行值和列值,包括:确定所述当前矢量切片中横坐标的最小值xmin和纵坐标的最大值ymax;确定所述栅格切片中每个栅格的边长Δx和Δy;针对任意一对相邻的点,依次执行S1和S2:S1:根据点A的行值和点B的行值,确定点A与点B的连线经过的每个栅格的行的行值,其中,点A和点B是任意一对相邻的点;S2:针对点A与点B的连线经过的每个行,执行:根据公式三,确定当前行对应的y0,其中,公式三为:根据公式四,确定当前行对应的x0,其中,公式四为:根据公式五,确定点A与点B的连线经过的位于当前行中的栅格的列值,其中,公式五为:其中,m为当前行的行值,n为点A与点B的连线经过的位于当前行中的栅格的列值,Δx和Δy为所述栅格切片中每个栅格的边长,xmin为所述当前矢量切片中横坐标的最小值,ymax为所述当前矢量切片中纵坐标的最大值,Interger()为取整运算,x1和y1是点A的矢量坐标,x2和y2是点B的矢量坐标。优选地,所述将所述矢量数据转换为至少一个矢量切片,包括:确定所述矢量数据的空间坐标数据;确定需要的至少一个缩放级别;针对每个所述缩放级别,执行:根据当前缩放级别,将所述矢量数据的空间坐标数据进行坐标简化,生成所述当前缩放级别对应的至少一个矢量切片。第二方面,本专利技术实施例提供了一种将矢量数据转换为栅格切片的装置,包括:获取单元,用于获取待处理的矢量数据;矢量切片单元,用于利用分布式处理的方式,将所述矢量数据转换为至少一个矢量切片;栅格切片单元,用于利用分布式处理的方式,将所述至少一个矢量切片转换为栅格切片。优选地,所述栅格切片单元,在执行所述将所述至少一个矢量切片转换为栅格切片时,用于:针对每个所述矢量切片执行:确定当前矢量切片中每个点的矢量坐标;根据每个点的矢量坐标,确定每个点在栅格切片中的行值和列值,实现从所述当前矢量切片到所述栅格切片的点的转换;确定所述当前矢量切片中每一对相邻的点,确定每一对相邻的点的连线经过的所述栅格切片中的每个栅格的行值和列值,实现从所述当前矢量切片到所述栅格切片的线的转换;对所述栅格切片上的边界进行跟踪,实现从所述当前矢量切片到所述栅格切片的面的转换。优选地,所述栅格切片单元,在执行所述根据每个点的矢量坐标,确定每个点在栅格切片中的行值和列值时,用于:确定所述当前矢量切片中横坐标的最小值xmin和纵坐标的最大值ymax;确定所述栅格切片中每个栅格的边长Δx和Δy;根据公式一,确定当前点在所述栅格切片中的行值,其中,所述公式一为:根据公式二,确定当前点在所述栅格切片中的列值,其中,所述公式二为:其中,i为当前点在所述栅格切片中的行值,j为当前点在所述栅格切片中的列值,Δx和Δy为所述栅格切片中每个栅格的边长,xmin为所述当前矢量切片中横坐标的最小值,ymax为所述当前矢量切片中纵坐标的最大值,Interger()为取整运算,x和y是当前点的矢量坐标。优选地,所述栅格切片单元,在执行所述确定每一对相邻的点的连线经过的所述栅格切片中的每个栅格的行值和列值时,用于:确定所述当前矢量切片中横坐标的最小值xmin和纵坐标的最大值ymax;确定所述栅格切片中每个栅格的边长Δx和Δy;针对任意一对相邻的点,依次执行S1和S2:S1:根据点A的行值和点B的行值,确定点A与点B的连线经过的每个栅格的行的行值,其中,点A和点B是任意一对相邻的点;S2:针对点A与点B的连线经过的每个行,执行:根据公式三,确定当前行对应的y0,其中,公式三为:根据公式四,确定当前行对应的x0,其中,公式四为:根据公式五,确定点A与点B的连线经过的位于当前行中的栅格的列值,其中,公式五为:其中,m为当前行的行值,n为点A与点B的连线经过的位于当前行中的栅格的列值,Δx和Δy为所述栅格切片中每个栅格的边长,xmin为所述当前矢量切片中横坐标的最小值,ymax为所述当前矢量切片中纵坐标的最大值,Interger()为取整运算,x1和y1是点A的矢量坐标,x2和y2是点B的矢量坐标。优选地,所述矢量切片单元,在执行所述将所述矢量数据转换为至少一个矢量切片时,用于:确定所述矢量数据的空间坐标数据;确定需要的至少一个缩放级别;针对每个所述缩放级别,执行:根据当前缩放级别,将所述矢量数据的空间坐标数据进行坐标简化,生成所述当前缩放级别对应的至少一个矢量切片。在本专利技术实施例中,利用分布式处理的方式,将矢量数据转换为至少一个矢量切片,利用分布式处理的方式,将该至少一个矢量切片转换为栅格切片,分布式处理大大提高了将矢量数据转换为栅格切片的速度,能够更快的完成转换。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一实施例提供的一种将矢量数据转换为栅格切片的方法的流程图;图2是本专利技术一实施本文档来自技高网...

【技术保护点】
1.一种将矢量数据转换为栅格切片的方法,其特征在于,包括:获取待处理的矢量数据;利用分布式处理的方式,将所述矢量数据转换为至少一个矢量切片;利用分布式处理的方式,将所述至少一个矢量切片转换为栅格切片。

【技术特征摘要】
1.一种将矢量数据转换为栅格切片的方法,其特征在于,包括:获取待处理的矢量数据;利用分布式处理的方式,将所述矢量数据转换为至少一个矢量切片;利用分布式处理的方式,将所述至少一个矢量切片转换为栅格切片。2.根据权利要求1所述的方法,其特征在于,所述将所述至少一个矢量切片转换为栅格切片,包括:针对每个所述矢量切片执行:确定当前矢量切片中每个点的矢量坐标;根据每个点的矢量坐标,确定每个点在栅格切片中的行值和列值,实现从所述当前矢量切片到所述栅格切片的点的转换;确定所述当前矢量切片中每一对相邻的点,确定每一对相邻的点的连线经过的所述栅格切片中的每个栅格的行值和列值,实现从所述当前矢量切片到所述栅格切片的线的转换;对所述栅格切片上的边界进行跟踪,实现从所述当前矢量切片到所述栅格切片的面的转换。3.根据权利要求2所述的方法,其特征在于,所述根据每个点的矢量坐标,确定每个点在栅格切片中的行值和列值,包括:确定所述当前矢量切片中横坐标的最小值xmin和纵坐标的最大值ymax;确定所述栅格切片中每个栅格的边长Δx和Δy;根据公式一,确定当前点在所述栅格切片中的行值,其中,所述公式一为:根据公式二,确定当前点在所述栅格切片中的列值,其中,所述公式二为:其中,i为当前点在所述栅格切片中的行值,j为当前点在所述栅格切片中的列值,Δx和Δy为所述栅格切片中每个栅格的边长,xmin为所述当前矢量切片中横坐标的最小值,ymax为所述当前矢量切片中纵坐标的最大值,Interger()为取整运算,x和y是当前点的矢量坐标。4.根据权利要求2所述的方法,其特征在于,所述确定每一对相邻的点的连线经过的所述栅格切片中的每个栅格的行值和列值,包括:确定所述当前矢量切片中横坐标的最小值xmin和纵坐标的最大值ymax;确定所述栅格切片中每个栅格的边长Δx和Δy;针对任意一对相邻的点,依次执行S1和S2:S1:根据点A的行值和点B的行值,确定点A与点B的连线经过的每个栅格的行的行值,其中,点A和点B是任意一对相邻的点;S2:针对点A与点B的连线经过的每个行,执行:根据公式三,确定当前行对应的y0,其中,公式三为:根据公式四,确定当前行对应的x0,其中,公式四为:根据公式五,确定点A与点B的连线经过的位于当前行中的栅格的列值,其中,公式五为:其中,m为当前行的行值,n为点A与点B的连线经过的位于当前行中的栅格的列值,Δx和Δy为所述栅格切片中每个栅格的边长,xmin为所述当前矢量切片中横坐标的最小值,ymax为所述当前矢量切片中纵坐标的最大值,Interger()为取整运算,x1和y1是点A的矢量坐标,x2和y2是点B的矢量坐标。5.根据权利要求1-4中任一所述的方法,其特征在于,所述将所述矢量数据转换为至少一个矢量切片,包括:确定所述矢量数据的空间坐标数据;确定需要的至少一个缩放级别;针对每个所述缩放级别,执行:根据当前缩放级别,将所述矢量数据的空间坐标数据进行坐标简化,生成所述当前缩放级别对应的至少一个矢量切片。6.一种将矢量数据转换为栅格切片的装置,其特征在于,包括:获取单元,用于获取待...

【专利技术属性】
技术研发人员:李瑞东宋海涛魏存挡周明尹曦萌
申请(专利权)人:浪潮软件集团有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1