CN108009214B - 基于ArcGIS的矢量数据并行处理方法及系统 - Google Patents

基于ArcGIS的矢量数据并行处理方法及系统 Download PDF

Info

Publication number
CN108009214B
CN108009214B CN201711129769.3A CN201711129769A CN108009214B CN 108009214 B CN108009214 B CN 108009214B CN 201711129769 A CN201711129769 A CN 201711129769A CN 108009214 B CN108009214 B CN 108009214B
Authority
CN
China
Prior art keywords
subtask
vector
result
arcgis
rectangular range
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.)
Active
Application number
CN201711129769.3A
Other languages
English (en)
Other versions
CN108009214A (zh
Inventor
郭明强
黄颖
谢忠
关庆锋
吴亮
刘袁缘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HUBEI DIXIN TECHNOLOGY GROUP Co.,Ltd.
Original Assignee
China University of Geosciences
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China University of Geosciences filed Critical China University of Geosciences
Priority to CN201711129769.3A priority Critical patent/CN108009214B/zh
Publication of CN108009214A publication Critical patent/CN108009214A/zh
Application granted granted Critical
Publication of CN108009214B publication Critical patent/CN108009214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于ArcGIS的矢量数据并行处理方法及系统,首先获取待处理的矢量图层的空间范围,将其划分为多个子空间范围,构造多个子任务信息,然后启动多个进程,设置ArcGIS矢量数据处理工具的环境变量参数,调用ArcGIS的矢量数据处理工具并行执行多个子任务,第一个完成的子任务将结果图层拷贝到结果数据库中,其它子任务的结果数据依次追加到结果图层中。本发明能够将矢量大数据处理任务在空间上进行划分,生成多个计算子任务,利用ArcGIS矢量数据处理工具的环境变量参数,采用多进程技术并行调用多个ArcGIS矢量数据处理工具,对各个子任务进行并行处理,可实现ArcGIS矢量数据处理的并行加速,从而提高ArcGIS对矢量大数据的处理效率。

Description

基于ArcGIS的矢量数据并行处理方法及系统
技术领域
本发明涉及高性能地理空间计算技术,尤其是一种基于ArcGIS的矢量数据并行处理方法及系统。
背景技术
矢量大数据的快速实时处理是高性能空间计算中需要解决的关键问题之一,在多核集群并行计算环境中,采用多线程或多进程技术可以充分利用并行计算资源,实现计算密集型任务的并行加速。由于矢量数据的存储和计算均较为复杂,现有的ArcGIS矢量数据处理工具不能利用并行计算资源对矢量大数据进行并行处理,导致矢量大数据的处理效率低、计算资源利用率低。
发明内容
本发明要解决的技术问题在于,针对上述的现有的ArcGIS矢量数据处理工具不能利用并行计算资源对矢量大数据进行并行处理,导致矢量大数据的处理效率低、计算资源利用率低的技术缺陷,提供了一种基于ArcGIS的矢量数据并行处理方法及系统。
根据本发明的其中一方面,本发明为解决其技术问题,提供了一种基于ArcGIS的矢量数据并行处理方法,包括以下步骤:
S1、获取任务划分数量n、待处理的矢量数据所在的空间数据库、图层名、结果图层名及矢量数据处理操作类型;
S2、调用ArcGIS的IWorkspaceFactory接口连接待处理的矢量数据所在的空间数据库,然后调用ArcGIS的IFeatureWorkspace接口打开矢量图层,获得图层名对应的待处理的矢量图层对象;
S3、调用ArcGIS的IGeoDataset接口获取所述图层名对应的待处理矢量图层的对象空间矩形范围extent;
S4、将空间矩形范围extent分解为n个子空间矩形范围;
S5、生成n个矢量数据处理子任务,每个子任务的信息包括步骤S1中获取的待处理的矢量数据所在的空间数据库、图层名、结果图层名、矢量数据处理操作类型和步骤S4步中获得的子空间矩形范围;初始化已完成的任务数fn=0;用整型数组es[]存储每个子任务的执行状态,第一数值表示任务未完成,第二数值表示任务已完成,每个子任务的执行状态的初始值均置为第一数值;用整型数组fs[]存储每个子任务的结果处理状态,第三数值表示结果数据未处理,第四数值表示结果数据已处理,每个子任务的结果处理状态的初始值均置为第三数值;
S6、启动n个进程,将步骤S5中的n个子任务信息作为进程启动参数分别传递给各个进程,各个进程根据矢量数据处理操作类型分别调用ArcGIS的GP工具并行执行n个子任务,其中的子空间矩形范围用于控制GP工具处理的矢量数据空间范围,通过调用GP工具的SetEnvironmentValue接口进行设置,子任务完成后将对应的执行状态置为第二数值;
S7、依次访问整型数组es[]和整型数组fs[]数组变量中的各个数据项,循环检测各个子任务的执行状态和结果处理状态,获得一个执行已完成但结果数据未处理的子任务,每次检测均从第0个子任务开始,直到找到一个es[i]=第二数值且fs[i]=第三数值的子任务,如果找到,获取找到的子任务索引ti,转至步骤S8,否则继续步骤S7进行检测;
S8、判断fn是否等于0,如果fn等于0,转至步骤S9,如果fn不等于0,转至步骤S10;
S9、调用ArcGIS的矢量图层拷贝工具拷贝子任务ti生成的结果矢量数据到结果空间数据库,生成结果矢量图层,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至步骤S11;
S10、调用ArcGIS的矢量图层追加工具追加子任务结果数据到步骤S9生成的结果矢量图层中,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至步骤S11;
S11、判断fn是否等于n,如果fn等于n,则结束本次矢量数据处理过程,如果fn不等于n,转至步骤S7。
优选的,在本发明的基于ArcGIS的矢量数据并行处理方法中,所述步骤S4中计算每个子空间矩形范围是指:在长度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin+dx*i;
ymini=ymin;
xmaxi=xmin+dx*(i+1);
ymaxi=ymax;
其中,dx=(xmax-xmin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标。
优选的,在本发明的基于ArcGIS的矢量数据并行处理方法中,所述S4中计算每个子空间矩形范围是指:在宽度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin;
ymini=ymin+dy*i;
xmaxi=xmax;
ymaxi=ymin+dy*(i+1);
其中,dy=(ymax-ymin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标。
优选的,在本发明的基于ArcGIS的矢量数据并行处理方法中,所述第一数值等于0,所述第二值等于1,所述第三数值等于0,所述第四数值等于1。
根据本发明的另一方面,本发明为解决其技术问题,还提供一种基于ArcGIS的矢量数据并行处理系统,包括以下模块:
数据获取模块,用于获取任务划分数量n、待处理的矢量数据所在的空间数据库、图层名、结果图层名及矢量数据处理操作类型;
矢量图层对象获取模块,用于调用ArcGIS的IWorkspaceFactory接口连接待处理的矢量数据所在的空间数据库,然后调用ArcGIS的IFeatureWorkspace接口打开矢量图层,获得图层名对应的待处理的矢量图层对象;
空间矩形范围处理模块,用于调用ArcGIS的IGeoDataset接口获取所述图层名对应的待处理矢量图层对象的空间矩形范围extent;
子空间矩形范围处理模块,用于将空间矩形范围extent分解为n个子空间矩形范围;
子任务生成模块,用于生成n个矢量数据处理子任务,每个子任务的信息包括数据获取模块中获取的待处理的矢量数据所在的空间数据库、图层名、结果图层名、矢量数据处理操作类型和子空间矩形范围处理模块中获得的子空间矩形范围;初始化已完成的任务数fn=0;用整型数组es[]存储每个子任务的执行状态,第一数值表示任务未完成,第二数值表示任务已完成,每个子任务的执行状态的初始值均置为第一数值;用整型数组fs[]存储每个子任务的结果处理状态,第三数值表示结果数据未处理,第四数值表示结果数据已处理,每个子任务的结果处理状态的初始值均置为第三数值;
子任务处理模块,用于启动n个进程,将子任务生成模块中的n个子任务信息作为进程启动参数分别传递给各个进程,各个进程根据矢量数据处理操作类型分别调用ArcGIS的GP工具并行执行n个子任务,其中的子空间矩形范围用于控制GP工具处理的矢量数据空间范围,通过调用GP工具的SetEnvironmentValue接口进行设置,子任务完成后将对应的执行状态置为第二数值;
状态检测模块,用于依次访问整型数组es[]和整型数组fs[]数组变量中的各个数据项,循环检测各个子任务的执行状态和结果处理状态,获得一个执行已完成但结果数据未处理的子任务,每次检测均从第0个子任务开始,直到找到一个es[i]=第二数值且fs[i]=第三数值的子任务,如果找到,获取找到的子任务索引ti,转至第一fn判断模块,否则继续利用状态检测模块进行检测;
第一fn判断模块,用于判断fn是否等于0,如果fn等于0,转至子任务拷贝模块,如果fn不等于0,转至子任务追加模块;
子任务拷贝模块,用于调用ArcGIS的矢量图层拷贝工具拷贝子任务ti生成的结果矢量数据到结果空间数据库,生成结果矢量图层,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至第二fn判断模块;
子任务追加模块,用于调用ArcGIS的矢量图层追加工具追加子任务结果数据到步骤S9生成的结果矢量图层中,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至第二fn判断模块;
第二fn判断模块,用于判断fn是否等于n,如果fn等于n,则结束本次矢量数据处理过程,如果fn不等于n,转至步骤状态检测模块。
优选的,在本发明的基于ArcGIS的矢量数据并行处理方法中,所述子空间矩形范围处理模块中计算每个子空间矩形范围是指:在长度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin+dx*i;
ymini=ymin;
xmaxi=xmin+dx*(i+1);
ymaxi=ymax;
其中,dx=(xmax-xmin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标。
优选的,在本发明的基于ArcGIS的矢量数据并行处理方法中,所述子空间矩形范围处理模块中计算每个子空间矩形范围是指:在宽度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin;
ymini=ymin+dy*i;
xmaxi=xmax;
ymaxi=ymin+dy*(i+1);
其中,dy=(ymax-ymin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标。
优选的,在本发明的基于ArcGIS的矢量数据并行处理方法中,所述第一数值等于0,所述第二值等于1,所述第三数值等于0,所述第四数值等于1。
实施本发明的基于ArcGIS的矢量数据并行处理方法及系统,具有以下有益效果:能够利用矢量数据的空间特性,将矢量大数据处理任务在空间上进行划分,获得多个子任务,采用多进程技术并行执行各个子任务,提高并行计算资源利用率,实现矢量大数据处理的并行加速,提高ArcGIS对矢量大数据的处理效率。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的基于ArcGIS的矢量数据并行处理方法一实施例的流程图;
图2是本发明的图1中实施例所使用的矢量数据。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
为了更清晰的说明本发明的思想,下面对基于ArcGIS的矢量数据并行处理方法进行进一步的说明,本实施例采用的基于ArcGIS的矢量数据并行处理方法的一实施例的流程图如图1所示,本实施例使用湖北省道路矢量数据作为示例数据,如图2所示,其存储于空间数据库Default.gdb中,图层名为HUBEIROAD,其空间范围左下角坐标为(108.416417,29.065332),右上角坐标为(116.127877,33.258084),以ArcGIS中的光滑线(Smooth Line)处理工具为例,结果空间数据库为Result.gdb,使用2个进程并行执行的具体步骤如下:
1)设置任务划分数量为2,待处理的矢量数据所在的空间数据库为Default.gdb,图层名为HUBEIROAD,结果图层名为HUBEIROAD_RESULT,矢量数据处理操作类型为SMOOTHLINE;
2)调用ArcGIS的IWorkspaceFactory接口连接待处理的矢量数据所在的空间数据库Default.gdb,然后调用ArcGIS的IFeatureWorkspace接口打开矢量图层HUBEIROAD,获得待处理的矢量图层对象;
3)调用ArcGIS的IGeoDataset接口获取矢量图层HUBEIROAD的空间矩形范围extent,其左下角坐标为(108.416417,29.065332),右上角坐标为(116.127877,33.258084);
4)计算每个子空间矩形范围的高度dy=(33.258084-29.065332)/2=2.096376,将extent在垂直方向上分解为2个子空间矩形范围。设第i个子空间矩形范围的左下角坐标为(xmini,ymini),右上角的坐标为(xmaxi,ymaxi);
第0个子空间矩形范围的计算结果如下:
xmin0=108.416417
ymin0=29.065332+dy*0=29.065332
xmax0=116.127877;
ymax0=29.065332+dy*(0+1)=31.161708
第1个子空间矩形范围的计算结果如下:
xmin1=108.416417
ymin1=29.065332+dy*1=31.161708
xmax1=116.127877;
ymax1=29.065332+dy*(1+1)=33.258084
5)生成2个矢量数据处理子任务,每个子任务的信息包括第1步中设置的待处理的矢量数据所在的空间数据库、图层名、结果图层名、矢量数据处理操作类型和第4步中获得的子空间矩形范围。
初始化已完成的任务数fn=0;用整型数组es[]存储每个子任务的执行状态,0表示任务未完成,1表示任务已完成,初始置为0,即es[i]=0;用整型数组fs[]存储每个子任务的结果处理状态,0表示结果数据未处理,1表结果数据已处理,初始置为0,即fs[i]=0;
6)启动2个进程,将第5步中的2个子任务信息作为进程启动参数分别传递给各个进程,各个进程根据矢量数据处理操作类型SMOOTHLINE调用ArcGIS的Smooth Line GP工具并行执行2个子任务,其中的子空间矩形范围用于控制Smooth Line GP工具处理的矢量数据空间范围,通过调用Smooth Line GP工具的SetEnvironmentValue接口进行设置,子任务完成后将执行状态置为1,即es[i]=1;
7)依次访问整型数组es[]和fs[]数组变量中的各个数据项,循环检测各个子任务的执行状态和结果处理状态,获得一个执行已完成但结果数据未处理的子任务,每次检测均从第0个子任务开始,直到找到一个es[i]=1且fs[i]=0的子任务,如果能找到,设找到的子任务索引为ti,转步骤8;如果未找到满足条件的子任务,则转步骤7继续进行检测。
8)判断fn是否等于0,如果fn等于0,转步骤9,如果fn不等于0,转步骤10。
9)调用ArcGIS的矢量图层拷贝工具拷贝子任务ti生成的结果矢量数据HUBEIROAD_RESULT到结果空间数据库Result.gdb中,生成结果矢量图层,将子任务ti结果处理状态置为1,即fs[ti]=1,将fn加1作为新的fn,转至步骤11。
10)调用ArcGIS的矢量图层追加工具追加子任务结果数据到第9步生成的结果矢量图层HUBEIROAD_RESULT中,将子任务ti结果处理状态置为1,即fs[ti]=1,将fn加1作为新的fn,转至步骤11。
11)判断fn是否等于2,如果fn等于2,转步骤12;如果fn不等于2,转步骤7。
12)结束矢量数据处理过程。
采用本发明设计的基于ArcGIS的矢量数据并行处理方法,能够利用ArcGIS矢量数据处理工具的环境变量参数,将矢量大数据处理任务在空间上进行划分,生成多个计算子任务,采用多进程技术并行调用多个ArcGIS矢量数据处理工具,对各个子任务进行并行处理,可实现ArcGIS矢量数据处理的并行加速,从而提高ArcGIS对矢量大数据的处理效率。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (4)

1.一种基于ArcGIS的矢量数据并行处理方法,其特征在于,包括以下步骤:
S1、获取任务划分数量n、待处理的矢量数据所在的空间数据库、图层名、结果图层名及矢量数据处理操作类型;
S2、调用ArcGIS的IWorkspaceFactory接口连接待处理的矢量数据所在的空间数据库,然后调用ArcGIS的IFeatureWorkspace接口打开矢量图层,获得与图层名对应的待处理的矢量图层对象;
S3、调用ArcGIS的IGeoDataset接口获取所述图层名对应的待处理矢量图层对象的空间矩形范围extent;
S4、将空间矩形范围extent分解为n个子空间矩形范围;
S5、生成n个矢量数据处理子任务,每个子任务的信息包括步骤S1中获取的待处理的矢量数据所在的空间数据库、图层名、结果图层名、矢量数据处理操作类型和步骤S4步中获得的子空间矩形范围;初始化已完成的任务数fn=0;用整型数组es[]存储每个子任务的执行状态,第一数值表示任务未完成,第二数值表示任务已完成,每个子任务的执行状态的初始值均置为第一数值;用整型数组fs[]存储每个子任务的结果处理状态,第三数值表示结果数据未处理,第四数值表示结果数据已处理,每个子任务的结果处理状态的初始值均置为第三数值;
S6、启动n个进程,将步骤S5中的n个子任务信息作为进程启动参数分别传递给各个进程,各个进程根据矢量数据处理操作类型分别调用ArcGIS的GP工具并行执行n个子任务,其中的子空间矩形范围用于控制GP工具处理的矢量数据空间范围,通过调用GP工具的SetEnvironmentValue接口进行设置,子任务完成后将对应的执行状态置为第二数值;
S7、依次访问整型数组es[]和整型数组fs[]数组变量中的各个数据项,循环检测各个子任务的执行状态和结果处理状态,获得一个执行已完成但结果数据未处理的子任务,每次检测均从第0个子任务开始,直到找到一个es[i]=第二数值且fs[i]=第三数值的子任务,如果找到,获取找到的子任务索引ti,转至步骤S8,否则继续步骤S7进行检测;
S8、判断fn是否等于0,如果fn等于0,转至步骤S9,如果fn不等于0,转至步骤S10;
S9、调用ArcGIS的矢量图层拷贝工具拷贝子任务ti生成的结果矢量数据到结果空间数据库,生成结果矢量图层,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至步骤S11;
S10、调用ArcGIS的矢量图层追加工具追加子任务结果数据到步骤S9生成的结果矢量图层中,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至步骤S11;
S11、判断fn是否等于n,如果fn等于n,则结束本次矢量数据处理过程,如果fn不等于n,转至步骤S7;
所述步骤S4中计算每个子空间矩形范围是指:在长度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin+dx*i;
ymini=ymin;
xmaxi=xmin+dx*(i+1);
ymaxi=ymax;
其中,dx=(xmax-xmin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标;或者,
所述步骤S4中计算每个子空间矩形范围是指:在宽度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin;
ymini=ymin+dy*i;
xmaxi=xmax;
ymaxi=ymin+dy*(i+1);
其中,dy=(ymax-ymin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标。
2.根据权利要求1所述的基于ArcGIS的矢量数据并行处理方法,其特征在于,所述第一数值等于0,所述第二数 值等于1,所述第三数值等于0,所述第四数值等于1。
3.一种基于ArcGIS的矢量数据并行处理系统,其特征在于,包括以下模块:
数据获取模块,用于获取任务划分数量n、待处理的矢量数据所在的空间数据库、图层名、结果图层名及矢量数据处理操作类型;
矢量图层对象获取模块,用于调用ArcGIS的IWorkspaceFactory接口连接待处理的矢量数据所在的空间数据库,然后调用ArcGIS的IFeatureWorkspace接口打开矢量图层,获得图层名对应的待处理的矢量图层对象;
空间矩形范围处理模块,用于调用ArcGIS的IGeoDataset接口获取所述图层名对应的待处理矢量图层对象的空间矩形范围extent;
子空间矩形范围处理模块,用于将空间矩形范围extent分解为n个子空间矩形范围;
子任务生成模块,用于生成n个矢量数据处理子任务,每个子任务的信息包括数据获取模块中获取的待处理的矢量数据所在的空间数据库、图层名、结果图层名、矢量数据处理操作类型和子空间矩形范围处理模块中获得的子空间矩形范围;初始化已完成的任务数fn=0;用整型数组es[]存储每个子任务的执行状态,第一数值表示任务未完成,第二数值表示任务已完成,每个子任务的执行状态的初始值均置为第一数值;用整型数组fs[]存储每个子任务的结果处理状态,第三数值表示结果数据未处理,第四数值表示结果数据已处理,每个子任务的结果处理状态的初始值均置为第三数值;
子任务处理模块,用于启动n个进程,将子任务生成模块中的n个子任务信息作为进程启动参数分别传递给各个进程,各个进程根据矢量数据处理操作类型分别调用ArcGIS的GP工具并行执行n个子任务,其中的子空间矩形范围用于控制GP工具处理的矢量数据空间范围,通过调用GP工具的SetEnvironmentValue接口进行设置,子任务完成后将对应的执行状态置为第二数值;
状态检测模块,用于依次访问整型数组es[]和整型数组fs[]数组变量中的各个数据项,循环检测各个子任务的执行状态和结果处理状态,获得一个执行已完成但结果数据未处理的子任务,每次检测均从第0个子任务开始,直到找到一个es[i]=第二数值且fs[i]=第三数值的子任务,如果找到,获取找到的子任务索引ti,转至第一fn判断模块,否则继续利用状态检测模块进行检测;
第一fn判断模块,用于判断fn是否等于0,如果fn等于0,转至子任务拷贝模块,如果fn不等于0,转至子任务追加模块;
子任务拷贝模块,用于调用ArcGIS的矢量图层拷贝工具拷贝子任务ti生成的结果矢量数据到结果空间数据库,生成结果矢量图层,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至第二fn判断模块;
子任务追加模块,用于调用ArcGIS的矢量图层追加工具追加子任务结果数据到子任务拷贝模块生成的结果矢量图层中,将ti对应的子任务的结果处理状态置为第四数值,将fn加1作为新的fn,转至第二fn判断模块;
第二fn判断模块,用于判断fn是否等于n,如果fn等于n,则结束本次矢量数据处理过程,如果fn不等于n,转至状态检测模块;
所述子空间矩形范围处理模块中计算每个子空间矩形范围是指:在长度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin+dx*i;
ymini=ymin;
xmaxi=xmin+dx*(i+1);
ymaxi=ymax;
其中,dx=(xmax-xmin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标;或者,
所述子空间矩形范围处理模块中计算每个子空间矩形范围是指:在宽度方向上对矢量图层的空间矩形范围extent进行划分,对于任意的第i子空间矩形范围,i∈[0,n-1]且为正整数,是通过下述公式计算得到:
xmini=xmin;
ymini=ymin+dy*i;
xmaxi=xmax;
ymaxi=ymin+dy*(i+1);
其中,dy=(ymax-ymin)/n,(xmini,ymini)、(xmaxi,ymaxi)、(xmini,ymaxi)、(xmaxi,ymini)分别为第i个子空间矩形范围的左下角坐标、右上角的坐标、左上角的坐标、右下角的坐标。
4.根据权利要求3所述的基于ArcGIS的矢量数据并行处理系统,其特征在于,所述第一数值等于0,所述第二数 值等于1,所述第三数值等于0,所述第四数值等于1。
CN201711129769.3A 2017-11-15 2017-11-15 基于ArcGIS的矢量数据并行处理方法及系统 Active CN108009214B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711129769.3A CN108009214B (zh) 2017-11-15 2017-11-15 基于ArcGIS的矢量数据并行处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711129769.3A CN108009214B (zh) 2017-11-15 2017-11-15 基于ArcGIS的矢量数据并行处理方法及系统

Publications (2)

Publication Number Publication Date
CN108009214A CN108009214A (zh) 2018-05-08
CN108009214B true CN108009214B (zh) 2020-05-22

Family

ID=62052849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711129769.3A Active CN108009214B (zh) 2017-11-15 2017-11-15 基于ArcGIS的矢量数据并行处理方法及系统

Country Status (1)

Country Link
CN (1) CN108009214B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408656B (zh) * 2018-09-27 2020-08-07 中国地质大学(武汉) 基于MapGIS的地球化学调查矢量数据自动化处理方法及系统
CN111782348A (zh) * 2019-04-04 2020-10-16 北京沃东天骏信息技术有限公司 应用程序的处理方法、装置、系统和计算机可读存储介质
CN112100123B (zh) * 2020-08-31 2023-06-09 长江空间信息技术工程有限公司(武汉) 一种Web前端分层展示大数据量CAD文件的方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7373612B2 (en) * 2002-10-21 2008-05-13 Battelle Memorial Institute Multidimensional structured data visualization method and apparatus, text visualization method and apparatus, method and apparatus for visualizing and graphically navigating the world wide web, method and apparatus for visualizing hierarchies
CN104268237B (zh) * 2014-09-28 2017-11-03 南京国图信息产业有限公司 电子地图制作的批量并行生成系统及其生成方法
CN104615780A (zh) * 2015-02-28 2015-05-13 南京国图信息产业股份有限公司 电子地图制作的批量并行高效系统及其生成方法
CN107066542B (zh) * 2017-03-14 2020-01-21 中国科学院计算技术研究所 地理信息系统中的矢量空间叠加分析并行方法及系统

Also Published As

Publication number Publication date
CN108009214A (zh) 2018-05-08

Similar Documents

Publication Publication Date Title
CN108009214B (zh) 基于ArcGIS的矢量数据并行处理方法及系统
US11151442B2 (en) Convolutional neural network processing method and device
EP3678068A1 (en) Distributed system for executing machine learning and method therefor
WO2017124809A1 (zh) 一种基于移动终端gpu运行的粒子群优化方法和系统
CN108304926B (zh) 一种适用于神经网络的池化计算装置及方法
CN108304925B (zh) 一种池化计算装置及方法
CN115470511B (zh) 适用于多部件模型的笛卡尔网格生成方法及装置
CN115660078A (zh) 一种分布式计算方法、系统、存储介质和电子设备
CN109271897B (zh) 人脸动作单元检测方法、装置、计算机设备及存储介质
CN108399304A (zh) 一种基于克里金模型的多点加点优化采样方法
CN112799599A (zh) 一种数据存储方法、计算核、芯片和电子设备
CN111352896B (zh) 人工智能加速器、设备、芯片以及数据处理方法
CN112634172A (zh) 一种利用二维图像生成三维模型的3d打印方法及装置
CN112150614B (zh) 基于微观结构图像的水泥三维仿真模型建立方法及系统
CN117217274A (zh) 向量处理器、神经网络加速器、芯片及电子设备
CN104361090B (zh) 数据查询方法及装置
CN108594763B (zh) 基于Unigraphics NX二次开发的模型实体上面的批量拉伸方法和装置
CN115660941A (zh) 图像搬移方法、装置、电子设备和计算机可读存储介质
CN112000312B (zh) 基于Kettle和GeoTools的空间大数据自动化并行处理方法和系统
CN115018322A (zh) 一种智能的众包任务分配方法与系统
CN116263967A (zh) 一种基于施工机器人的作业地图更新方法及装置
CN111651866B (zh) 一种基于动态负载迁移及时间同步的仿真执行方法及系统
CN110866885B (zh) 一种模板可配置n像素并行灰度形态学滤波电路和方法
CN113986728A (zh) 基于热力图的集成测试用例最小集分析方法、系统及终端
CN109829019B (zh) 一种矢量数据的数据转换方法、装置和电子设备

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210226

Address after: 430000, 7th floor, Beidou building, 980 Gaoxin Avenue, Wuhan East Lake New Technology Development Zone, Wuhan City, Hubei Province

Patentee after: HUBEI DIXIN TECHNOLOGY GROUP Co.,Ltd.

Address before: 430074 No. 388 Lu Lu, Hongshan District, Hubei, Wuhan

Patentee before: CHINA University OF GEOSCIENCES (WUHAN CITY)

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Parallel processing method and system of vector data based on ArcGIS

Effective date of registration: 20220329

Granted publication date: 20200522

Pledgee: Guanggu Branch of Wuhan Rural Commercial Bank Co.,Ltd.

Pledgor: HUBEI DIXIN TECHNOLOGY GROUP CO.,LTD.

Registration number: Y2022420000086

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Granted publication date: 20200522

Pledgee: Guanggu Branch of Wuhan Rural Commercial Bank Co.,Ltd.

Pledgor: HUBEI DIXIN TECHNOLOGY GROUP CO.,LTD.

Registration number: Y2022420000086

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Parallel Processing Method and System for Vector Data Based on ArcGIS

Granted publication date: 20200522

Pledgee: Guanggu Branch of Wuhan Rural Commercial Bank Co.,Ltd.

Pledgor: HUBEI DIXIN TECHNOLOGY GROUP CO.,LTD.

Registration number: Y2024980009954

PE01 Entry into force of the registration of the contract for pledge of patent right