999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

等級(jí)Voronoi圖及加權(quán)Voronoi圖的ArcGIS矢量生成算法

2015-06-07 11:24:38松,崔民,孫華,宮
地理與地理信息科學(xué) 2015年2期
關(guān)鍵詞:利用區(qū)域方法

田 松,崔 希 民,孫 云 華,宮 宇

(1.中國(guó)礦業(yè)大學(xué)(北京)地球科學(xué)與測(cè)繪工程學(xué)院,北京 100083;2.國(guó)家海洋局南海分局,廣東 廣州 510310)

?

等級(jí)Voronoi圖及加權(quán)Voronoi圖的ArcGIS矢量生成算法

田 松1,崔 希 民1,孫 云 華1,宮 宇2

(1.中國(guó)礦業(yè)大學(xué)(北京)地球科學(xué)與測(cè)繪工程學(xué)院,北京 100083;2.國(guó)家海洋局南海分局,廣東 廣州 510310)

等級(jí)Voronoi圖及加權(quán)Voronoi圖是以樹狀形式表達(dá)事物層次關(guān)系的方法,可作為一種空間數(shù)據(jù)模型應(yīng)用于城鎮(zhèn)等級(jí)體系、組織結(jié)構(gòu)關(guān)系表達(dá)等地學(xué)領(lǐng)域。該文首次提出一種等級(jí)Voronoi圖及加權(quán)Voronoi圖的ArcGIS矢量生成算法,以ArcGIS Engine為開發(fā)工具,利用增量法思想,通過區(qū)域分割和合并方法實(shí)現(xiàn)了對(duì)空間的多級(jí)劃分,為研究和發(fā)展GIS空間數(shù)據(jù)模型提供了重要的方法手段。

等級(jí)Voronoi圖;等級(jí)加權(quán)Voronoi圖;ArcGIS;區(qū)域分割;區(qū)域合并

0 引言

等級(jí)Voronoi圖(Hierarchical Voronoi Diagram)亦稱作分層Voronoi圖,簡(jiǎn)稱等級(jí)V圖或分層V圖,是對(duì)空間區(qū)域多級(jí)劃分,以樹狀形式表示區(qū)域?qū)哟侮P(guān)系的方法,是Voronoi圖理論和應(yīng)用的擴(kuò)展。等級(jí)V圖是一種數(shù)據(jù)結(jié)構(gòu),用于提高數(shù)據(jù)組織、檢索及可視化效率,亦是一種空間數(shù)據(jù)模型,用于表達(dá)空間事物間的等級(jí)層次關(guān)系。Farin等[1]利用等級(jí)V圖進(jìn)行地形建模;Gold等[2]將等級(jí)V圖用于地形數(shù)據(jù)的組織與LOD顯示;Wallgrün[3]利用等級(jí)V圖解決了機(jī)器人路徑搜索問題;趙威、陳笑筑、薛瑩等[4-6]分別利用等級(jí)V圖表達(dá)了開封市、畢節(jié)市、蘇浙滬城市群的城市等級(jí)體系。

等級(jí)加權(quán)Voronoi圖(等級(jí)加權(quán)V圖)是等級(jí)Voronoi圖的擴(kuò)展,是在考慮母點(diǎn)權(quán)重的情況下,劃分多級(jí)空間的方法。Balzer等[7]研究了等級(jí)V圖及加法加權(quán)等級(jí)V圖的生成算法,并用于軟件度量可視化;Sud等[8]利用CPU加速技術(shù)實(shí)現(xiàn)了加法加權(quán)的等級(jí)V圖;Kang等[9]利用等級(jí)加權(quán)V圖進(jìn)行空間數(shù)據(jù)的組織和管理。目前,尚無結(jié)合GIS軟件或工具實(shí)現(xiàn)等級(jí)V圖及加權(quán)圖的方法。本文在文獻(xiàn)[10]方法的基礎(chǔ)上,利用ArcGIS Engine(簡(jiǎn)稱AE)實(shí)現(xiàn)了等級(jí)V圖及加權(quán)V圖的矢量生成方法,旨在建立一種適用于地學(xué)領(lǐng)域的空間數(shù)據(jù)模型,為表達(dá)空間事物的多級(jí)層次關(guān)系提供一種良好的可視化手段。

1 定義

1.1 等級(jí)V圖定義[9]

定義1:Vh(P)={Vh(p1),Vh(p2),…,Vh(pn)}是以pi(i=1,2,…,n)為母點(diǎn)的Voronoi圖,h表示等級(jí),h=1時(shí)等級(jí)最高,Vh(pi)表示母點(diǎn)pi的Voronoi區(qū)域(簡(jiǎn)稱V區(qū)域),令點(diǎn)集Qi={qj|qj∈Vh(pi),j≥1,1≤i≤n},若Voronoi圖Vh+1(Qi)和Vh(pi)存有如下關(guān)系:

Vh+1(Qi)={Vh+1(qj)|Vh+1(qj)?Vh(pi),

qj∈Vh(pi),j≥1,1≤i≤n}

(1)

且有∑Vh+1(qj)≡Vh(pi),則稱Vh(P)為等級(jí)Voronoi圖。公式為:

Vh(P)={Vh+1(Q1),Vh+1(Q2),…,Vh+1(Qn)}

(2)

1.2 等級(jí)加權(quán)V圖定義

定義2:Vh(P,λ)={Vh(p1,λ1),Vh(p2,λ2),…,Vh(pn,λn)}是以pi(i=1,2,…,n)為母點(diǎn)、λi為權(quán)重的加權(quán)Voronoi圖,Vh(pi,λi)表示母點(diǎn)pi的加權(quán)Voronoi區(qū)域(簡(jiǎn)稱加權(quán)V區(qū)域),令點(diǎn)集Qi={qj|qj∈Vh(pi,λi),j≥1,1≤i≤n},若加權(quán)Voronoi圖Vh+1(Qi,λ)和Vh(pi,λi)存在如下關(guān)系:

Vh+1(Qi,λ)={Vh+1(qj,λj)|Vh+1(qj,λj)?Vh(pi,λi),

qj∈Vh(pi,λi),j≥1,1≤i≤n}

(3)

且有∑Vh+1(qj,λj)≡Vh(pi,λi),則稱Vh(P,λ)為等級(jí)加權(quán)Voronoi圖。公式為:Vh(P,λ)={Vh+1(Q1,λ),Vh+1(Q2,λ),…,Vh+1(Qn,λ)}

(4)

為方便后續(xù)描述,均用Vh表示第h級(jí)V圖或加權(quán)V圖,Vh(i)表示母點(diǎn)pi的V區(qū)域或加權(quán)V區(qū)域。

2 等級(jí)V圖、加權(quán)V圖ArcGIS矢量生成算法

2.1 算法基本思想

以等級(jí)加權(quán)V圖為例,設(shè)P={p1,p2,…,pn}是二維歐氏空間上的n個(gè)母點(diǎn),λ為母點(diǎn)權(quán)重,h為母點(diǎn)等級(jí),相同h值的母點(diǎn)處于同一等級(jí)。算法基本思想:生成點(diǎn)集最小外包矩形,用h=1的母點(diǎn)集合劃分最小外包矩形,生成加權(quán)V圖V1;判斷h=2的點(diǎn)集歸屬,并利用該點(diǎn)集劃分V1,生成第二層的加權(quán)V圖V2,以此類推,直至算法結(jié)束。

加權(quán)V圖生成方法為:利用增量法思想,每插入一個(gè)點(diǎn),對(duì)原有加權(quán)區(qū)域進(jìn)行重新劃分,分割出屬于新插入點(diǎn)的加權(quán)V區(qū)域,當(dāng)所有點(diǎn)插入完成后,即得到最終的加權(quán)V圖。等級(jí)V圖是等級(jí)加權(quán)V圖權(quán)重相同時(shí)的特例,二者算法實(shí)現(xiàn)思想相同。

2.2 算法實(shí)現(xiàn)步驟

Input:P={p1,p2,…,pn},pi∈P,包含屬性:ID,pi的唯一標(biāo)識(shí)(對(duì)應(yīng)圖1中的Belong字段);Weight,pi權(quán)重(對(duì)應(yīng)圖1中的Weight字段),與變量λ意義相同;Level,pi等級(jí)(對(duì)應(yīng)圖1中的Level字段),與變量h意義相同。

Output:等級(jí)V圖、等級(jí)加權(quán)V圖。

圖1 ArcGIS點(diǎn)集示例

Fig.1 A set of points saved in ArcGIS attribute table

算法具體步驟如下:

(1)數(shù)據(jù)獲取及預(yù)處理。獲取母點(diǎn)集合P,并按其Level值劃分為不同等級(jí)的母點(diǎn)集合pL={pL1,pL2,…,pLm},pLh∈pL,∑pLh≡P,pL1表示最高層次點(diǎn)集,pLm為最低層次點(diǎn)集。

(2)獲取P的最小外包矩形MBR。初始化加權(quán)V圖結(jié)構(gòu)體V0,并令V0=MBR。

(3)遞歸循環(huán)pLh集合,生成等級(jí)加權(quán)V圖,偽代碼如下:

for(inth=1;h≤m;h++){

//獲取當(dāng)前等級(jí)點(diǎn)集

pLh=GetLevelPoints(P,h)

//將pLh歸屬不同加權(quán)V區(qū)域

Vh-1=SetPnts2BelongRegion(pLh,Vh-1)

//初始化加權(quán)V圖結(jié)構(gòu)體Vh,_Vh

for(intj=1;j≤VorCount;j++){

//VorCount:當(dāng)前加權(quán)V區(qū)域個(gè)數(shù)

Vh←Vh-1(j)

for(intt=2;t≤VorPntsCount;t++){

//VorPntsCount:加權(quán)V區(qū)域內(nèi)包含的點(diǎn)個(gè)數(shù)

for(intk=1;k

if(pt.Weight=pk.Weight)

//垂直平分線劃分區(qū)域

Vh(tk)=DivideRegionWithPB(pt,pk,Vh(k))

else//圓弧劃分區(qū)域

Vh(tk)=DivideRegionWithArc(pt,pk,Vh(k)) }

//區(qū)域合并

Vh(tK)={Vh(t1),Vh(t2),…,Vh(tk),…,Vh(tt-1)}

Vh(t)=UnionRegion(Vh(tK))}

Vh←Vh

_Vh=null}

Vh=_Vh

//輸出h級(jí)加權(quán)V圖

ExportLevelVorRegion(Vh)}

等級(jí)V圖偽代碼和加權(quán)V圖類似,由于不需要判斷權(quán)重,所以只需保留垂直平分線劃分區(qū)域的方法,即代碼改變?nèi)缦拢?/p>

for(intk=1;k

Vh(tk)=DivideRegionWithPB(pt,pk,Vh(k))}

其他代碼不變。

2.3 算法說明

2.3.1 點(diǎn)集的區(qū)域歸屬判定 第一次循環(huán),SetPnts2BelongRegion()方法認(rèn)定MBR為點(diǎn)集pL1的V區(qū)域或加權(quán)V區(qū)域V0,利用pL1劃分V0生成V1,自第二次循環(huán)起,將pLh中的點(diǎn)歸屬于Vh-1(j)(j=1,2,…,VorCount)。點(diǎn)集歸屬判別方法:如果pLh中的一個(gè)點(diǎn)p∩Vh-1(j)≠Ф,則認(rèn)為點(diǎn)p屬于Vh-1(j)。

2.3.2 區(qū)域分割和合并 假定pi(xi,yi)、pj(xj,yj)為空間中兩個(gè)不重疊的點(diǎn),λi、λj是兩點(diǎn)權(quán)重。根據(jù)文獻(xiàn)[10,11]給出的V圖及加權(quán)V圖定義可知,兩點(diǎn)間Voronoi邊為一直線,其公式如下:

(5)

兩點(diǎn)間加權(quán)Voronoi邊為一圓弧,其公式如下:

(6)

圓心為:

(7)

半徑為:

(8)

式中:d(pi,pj)表示pi和pj間的歐氏距離。

以此數(shù)學(xué)理論為基礎(chǔ),便可利用AE接口實(shí)現(xiàn)點(diǎn)集的加權(quán)V區(qū)域劃分,具體包括4個(gè)要點(diǎn):直線生成、圓弧生成、V區(qū)域及加權(quán)V區(qū)域分割、V區(qū)域及加權(quán)V區(qū)域合并。

(1)直線生成。AE提供ILine接口,包含F(xiàn)romPoint和ToPoint屬性用于生成直線,表示通過設(shè)定起始點(diǎn)和終止點(diǎn)坐標(biāo)(通過式(5)和MBR邊界求交獲得),生成一條兩點(diǎn)間的線段。該方法的具體實(shí)現(xiàn)包含在DivideRegionWithPB()方法中。

(2)弧段生成。IConstructCircularArc.ConstructCircle(IPointCenterPoint,doubleRadius)方法可用于生成弧段,其中圓心參數(shù)CenterPoint由式(7)獲得,半徑參數(shù)Radius由式(8)獲得。該方法的具體實(shí)現(xiàn)包含在DivideRegionWithArc()方法中。

(3)區(qū)域分割。如圖2所示,假設(shè)Vh(k)是點(diǎn)pk的加權(quán)V區(qū)域,pt是插入點(diǎn),Lkt是pk和pt間的加權(quán)Voronoi邊,利用AE接口ITopologicalOperator.Cut(IPolylinecutter,refIGeometryleftGeom,refIGeometryrightGeom)方法,可將區(qū)域Vh(k)分割為leftGeom和rightGeom兩部分,其中,cutter即為L(zhǎng)kt,rightGeom和leftGeom對(duì)應(yīng)Vh(k) (分割后屬于pk的加權(quán)V區(qū)域)和Vh(tk) (從Vh(k)分割出來屬于pt的區(qū)域)。在AE提供的拓?fù)浞指罱涌谥校瑓?shù)Cutter即為由ILine和IConstructCircularArc接口生成的直線及弧段。該方法的具體實(shí)現(xiàn)包含在DivideRegionWithPB()和DivideRegionWithArc()中。

圖2 區(qū)域分割

Fig.2Regiondivisionbyanarc

加權(quán)V區(qū)域分割時(shí),由于考慮權(quán)重因素,需判斷權(quán)重相等及不相等兩種情況,從而確定直線分割區(qū)域和弧段分割區(qū)域兩種方法。由于V區(qū)域劃分不涉及權(quán)重因素,所以只需考慮直線分割區(qū)域的情況。

(4)區(qū)域合并。UnionRegion()方法指定V區(qū)域和加權(quán)V區(qū)域合并方式。如圖3,設(shè)pk是h級(jí)加權(quán)V區(qū)域Vh(k) 所包含的點(diǎn),k=1,2,…,c,c=VorPntsCount,若新插入一點(diǎn)pt(t=c+1),其合并操作步驟如下:計(jì)算獲得pt與pk的加權(quán)Voronoi邊{L1t,L2t,…,Lkt,…,Lct},利用Lkt對(duì)應(yīng)分割{Vh(1),Vh(2),…,Vh(c)},將分割后屬于pt的區(qū)域{Vh(t1),Vh(t2),…,Vh(tc)}合并,生成pt的加權(quán)V區(qū)域Vh(t)。

圖3 區(qū)域合并

Fig.3 Regions union

2.3.3 等級(jí)加權(quán)V圖輸出 ExportLevelVorRegion()方法指定等級(jí)加權(quán)V圖的輸出方式:對(duì)于每一層級(jí)點(diǎn)集pLh,輸出對(duì)應(yīng)的加權(quán)V圖Vh,并以矢量圖形式存儲(chǔ)。將輸出圖層疊加,即可顯示最終的等級(jí)加權(quán)V圖效果。

3 應(yīng)用實(shí)例

圖4、圖5為等級(jí)V圖及加權(quán)V圖示例,其中母點(diǎn)集合為{pL1,pL2,pL3,pL4},分別對(duì)應(yīng)于圖例中大圓、正方形、三角形、小圓所代表的點(diǎn)集,其中pL1包含4個(gè)母點(diǎn),pL2包含10個(gè)母點(diǎn),pL3包含11個(gè)母點(diǎn),pL4包含125個(gè)母點(diǎn)。結(jié)果為四級(jí)等級(jí)V圖及加權(quán)圖{V1,V2,V3,V4},邊界粗細(xì)程度代表等級(jí)程度差異,邊界越粗,等級(jí)越高。生成圖4所示的等級(jí)V圖平均用時(shí)5.21 s,生成圖5所示的等級(jí)加權(quán)V圖平均用時(shí)33.08 s。造成時(shí)間差異的主要原因是生成加權(quán)V圖時(shí)拓?fù)浞指詈秃喜⒉僮饕壬蒝圖復(fù)雜,所以用時(shí)較長(zhǎng)。

4 結(jié)論

圖4 等級(jí)V圖 圖5 加權(quán)等級(jí)V圖

Fig.4 HVD Fig.5 HMWVD

本文在文獻(xiàn)[10]的基礎(chǔ)上首次實(shí)現(xiàn)了等級(jí)V圖及加權(quán)V圖的ArcGIS矢量生成算法,該算法有如下特點(diǎn):1)提供了一種適用于地學(xué)領(lǐng)域的空間數(shù)據(jù)模型,應(yīng)用該算法可以方便地建立等級(jí)V圖及加權(quán)V圖,用以表達(dá)城鎮(zhèn)等級(jí)體系、機(jī)構(gòu)布局設(shè)置、區(qū)域?qū)哟尾町惖葍?nèi)容,豐富了Voronoi圖在地學(xué)領(lǐng)域的應(yīng)用。2)利用ArcGIS提供接口,以拓?fù)浞指詈喜⒎绞綄?shí)現(xiàn)算法,精度高,實(shí)用性強(qiáng)。生成的等級(jí)V圖及加權(quán)V圖和原始生成元文件可以組合存儲(chǔ)于GIS空間數(shù)據(jù)庫中,便于管理,同時(shí)可以靈活地更改點(diǎn)、面樣式,豐富輸出結(jié)果的表達(dá)方式。等級(jí)V圖及加權(quán)V圖以矢量方式生成,以方便與其他矢量或柵格數(shù)據(jù)進(jìn)行疊加分析,挖掘更深層次的隱含信息。

[1] FARIN G,HAGEN H,HAMANN B.Hierarchical and Geometrical Methods in Scientific Visualization[M].Springer,2001.

[2] GOLD C,ANGEL P.Voronoi hierarchies[A].Proceedings of Geographic Information Science-4th International Conference,Geoscience[C].2006.99-111.

[3] WALLGRüN J O.Hierarchical Voronoi Graphs-Spatial Representation and Reasoning for Mobile Robots[D].Germany:University of Bremen,2008.

[4] 趙威,張仲元,秦耀辰,等.基于Voronoi圖的開封市域城鎮(zhèn)影像范圍和等級(jí)體系研究[J].河南大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,38(8):271-275.

[5] 陳笑筑,王博,胡偉.基于Voronoi圖的鄉(xiāng)鎮(zhèn)等級(jí)體系劃分及影響范圍研究——以畢節(jié)市為例[J].安徽農(nóng)業(yè)科學(xué),2011,39(35):21947-21949.

[6] 薛瑩,俞路,韓貴峰.基于Voronoi圖剖分的區(qū)域旅游中心城市體系——以蘇浙滬地區(qū)為例[J].地域研究與開發(fā),2008,27(4):81-84.

[7] BALZER M,DEUSSEN O.Voronoi treemaps[A].Proceedings of the 2005 IEEE Symposium on Information Visualization[C].IEEE Press,2005.

[8] SUD A,FISHER D,LEE H P.Fast dynamic voronoi treemaps[A].Proceedings of the 2010 International Symposium on Voronoi Diagrams in Science and Engineering (ISVD′10)[C].2010.85-94.

[9] KANG S,LI J T,ZHANG F Q,et al.Hierarchical weighted Voronoi tessellations on visual application of spatial data[J].Journal of Computational Information Systems,2013,9(18):7341-7348.

[10] 范熙偉.加權(quán)Voronoi圖矢量生成算法研究及其實(shí)現(xiàn)[D].西安:西北大學(xué),2011.21-35.

[11] 張有會(huì).加權(quán)Voronoi圖的畫法研究[J].計(jì)算機(jī)科學(xué),2001,28(6):126-130.

Vector-Based Realization of Hierarchical Voronoi Diagram and Multiplicatively Weighted Voronoi Diagram with ArcGIS

TIAN Song1,CUI Xi-min1,SUN Yun-hua1,GONG Yu2

(1.CollegeofGeoscienceandSurveyingEngineering,ChinaUniversityofMiningandTechnology,Beijing100083; 2.SouthChinaSeaBranch,StateOceanicAdministration,Guangzhou510310,China)

Hierarchical Voronoi diagram (HVD) and hierarchical multiplicatively weighted Voronoi diagram (HMWVD) are methods of expressing hierarchical relationships in the form of trees,which are widely applied in the field of geography,such as urban hierarchies exhibition,organization structures expression,etc.A vector-based approach is first proposed to generate HVD and HMWVD through the methods of regions division and regions union with ArcGIS Engine based on the thought of incremental method.It provides an important way to research and develop GIS spatial data model.

hierarchical Voronoi diagram;hierarchical multiplicatively weighted Voronoi diagram;ArcGIS;region division;regions union

2014-05-13;

2014-07-08

國(guó)家自然科學(xué)基金項(xiàng)目(71150001)

田松(1985-),男,博士研究生,研究方向?yàn)镚IS算法研究。E-mail:tsisatc@163.com

10.3969/j.issn.1672-0504.2015.02.008

P208

A

1672-0504(2015)02-0034-04

猜你喜歡
利用區(qū)域方法
利用min{a,b}的積分表示解決一類絕對(duì)值不等式
利用一半進(jìn)行移多補(bǔ)少
利用數(shù)的分解來思考
Roommate is necessary when far away from home
關(guān)于四色猜想
分區(qū)域
用對(duì)方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
基于嚴(yán)重區(qū)域的多PCC點(diǎn)暫降頻次估計(jì)
主站蜘蛛池模板: 久久免费视频6| 国产精品观看视频免费完整版| 亚洲成人精品| 亚洲第一区欧美国产综合| 亚洲有无码中文网| 丝袜国产一区| 国产欧美日韩精品第二区| hezyo加勒比一区二区三区| 欧美日韩精品综合在线一区| 午夜精品福利影院| 国产日本视频91| 国产三级毛片| 国产91在线|日本| 午夜在线不卡| 国产精品浪潮Av| 国产第一页亚洲| 热99精品视频| 91精品国产91久无码网站| 性喷潮久久久久久久久| 亚洲av无码人妻| 在线不卡免费视频| 欧美一区二区三区不卡免费| vvvv98国产成人综合青青| 日韩小视频在线观看| 日本五区在线不卡精品| 天天综合天天综合| 国模私拍一区二区| 波多野结衣在线一区二区| a欧美在线| 国产精品第三页在线看| 老熟妇喷水一区二区三区| 亚洲一区二区无码视频| 亚洲综合狠狠| 久久永久视频| 亚洲欧美另类中文字幕| 亚洲日韩AV无码一区二区三区人| 欧美性爱精品一区二区三区 | 午夜精品区| 日韩 欧美 小说 综合网 另类| 亚洲天堂高清| 国产精品无码AV中文| 成人免费黄色小视频| 99re精彩视频| 亚洲码一区二区三区| 成人午夜久久| 亚洲婷婷六月| 天天躁夜夜躁狠狠躁图片| 久久综合国产乱子免费| 亚洲日韩精品无码专区| 国产欧美成人不卡视频| 午夜无码一区二区三区| 国产免费一级精品视频| 欧美一级在线播放| 免费看美女自慰的网站| 国产成人一区| 中文字幕亚洲乱码熟女1区2区| 全裸无码专区| 国产尤物jk自慰制服喷水| 国产高清精品在线91| 国产视频自拍一区| 青青青国产视频手机| 亚洲天堂在线视频| 亚洲综合狠狠| 久久久精品无码一区二区三区| 一区二区理伦视频| 在线观看免费AV网| 色综合网址| 538国产视频| 日韩无码黄色网站| 99精品热视频这里只有精品7| 免费欧美一级| 亚洲一级毛片| 亚洲人成人无码www| 亚洲最大情网站在线观看 | 日韩毛片免费观看| 亚洲精品视频网| 久久黄色小视频| 国产精品区网红主播在线观看| 久久无码av三级| 精品人妻无码中字系列| 国产一区二区精品福利| 香蕉伊思人视频|