吳健華 ,梁子震
(廣州市城市規(guī)劃勘測(cè)設(shè)計(jì)研究院,廣東 廣州 510060)
廣州市目前正在開(kāi)展的“三規(guī)合一”工作,簡(jiǎn)言之就是國(guó)民經(jīng)濟(jì)和社會(huì)發(fā)展規(guī)劃、城鄉(xiāng)規(guī)劃和土地利用總體規(guī)劃(以下簡(jiǎn)稱(chēng)“三規(guī)”)基于城鄉(xiāng)空間布局的銜接與協(xié)調(diào)。首期的主要工作目標(biāo)之一就是在協(xié)調(diào)城鄉(xiāng)規(guī)劃、土地利用總體規(guī)劃建設(shè)用地布局差異基礎(chǔ)上,將國(guó)民經(jīng)濟(jì)與社會(huì)發(fā)展規(guī)劃的相關(guān)內(nèi)容(以重點(diǎn)建設(shè)項(xiàng)目為代表)予以體現(xiàn)和落實(shí),從而消除“三規(guī)”的差異,促進(jìn)城市空間合理布局和土地資源的高效利用,保障廣州市經(jīng)濟(jì)、社會(huì)、環(huán)境的良性發(fā)展以及“首善之區(qū)”、現(xiàn)代化國(guó)際大都市、國(guó)家中心城市等定位目標(biāo)實(shí)現(xiàn)。
“三規(guī)合一”涉及廣州市發(fā)改委、城建部門(mén)和國(guó)土部門(mén)的規(guī)劃成果整理,即按照“三規(guī)合一”數(shù)據(jù)標(biāo)準(zhǔn),對(duì)收集到的國(guó)民經(jīng)濟(jì)和社會(huì)發(fā)展規(guī)劃、土地利用總體規(guī)劃、城鄉(xiāng)總體規(guī)劃以及相關(guān)的規(guī)劃信息和現(xiàn)狀信息的整理、轉(zhuǎn)換及標(biāo)準(zhǔn)化數(shù)據(jù)處理等。因?yàn)楫?dāng)前廣州市城建部門(mén)一般采用廣州坐標(biāo)系統(tǒng),國(guó)土部門(mén)采用西安80 坐標(biāo)系。在“三規(guī)合一”規(guī)劃編制階段,主要是將城市規(guī)劃和土地利用規(guī)劃成果進(jìn)行廣州坐標(biāo)系統(tǒng)和西安80 坐標(biāo)系的轉(zhuǎn)換。
筆者單位現(xiàn)有的坐標(biāo)轉(zhuǎn)換程序是針對(duì)ArcGIS shape 格式文件的,而“三規(guī)合一”成果數(shù)據(jù)是ArcGIS MDB 格式,對(duì)普通的點(diǎn)、線、面圖層,可以從MDB 導(dǎo)出為shape 格式進(jìn)行坐標(biāo)轉(zhuǎn)換后再導(dǎo)入MDB 中,但對(duì)注記類(lèi)圖層,這樣的轉(zhuǎn)換方法得到的最終圖層是面圖層,而不是注記圖層。雖然可以對(duì)面圖層進(jìn)行標(biāo)注(Label),從而在圖面上顯示描述性文本信息,但標(biāo)注是根據(jù)圖層要素屬性自動(dòng)標(biāo)記的,并在漫游和縮放后按照當(dāng)前地圖比例尺下的最佳位置重畫(huà),而注記(Annotaion)是一種類(lèi)型的要素,它的大小和位置相對(duì)地圖上的其他要素保持不變。在緩存切片時(shí),使用標(biāo)注會(huì)導(dǎo)致產(chǎn)生重復(fù)文本,必須使用注記。
若要得到與原始數(shù)據(jù)類(lèi)型及結(jié)構(gòu)一致的注記類(lèi)型的圖層,還需要進(jìn)行一系列的處理。筆者將注記圖層坐標(biāo)轉(zhuǎn)換處理的方法和過(guò)程整理記錄如下,希望能給同行的類(lèi)似工作提供參考。
假設(shè)原始MDB 為西安坐標(biāo)數(shù)據(jù),轉(zhuǎn)換后的MDB為廣州坐標(biāo)系,注記圖層坐標(biāo)轉(zhuǎn)換思路:①M(fèi)DB 結(jié)構(gòu)轉(zhuǎn)換:采用XML 源數(shù)據(jù)結(jié)構(gòu)導(dǎo)出導(dǎo)入的方法,由原始西安坐標(biāo)范圍的數(shù)據(jù)庫(kù)生成廣州坐標(biāo)范圍的數(shù)據(jù)庫(kù),以保留圖層的數(shù)據(jù)結(jié)構(gòu)、子類(lèi)型分類(lèi)等信息;②圖層數(shù)據(jù)坐標(biāo)轉(zhuǎn)換:原始注記圖層導(dǎo)出為shape 文件后進(jìn)行坐標(biāo)轉(zhuǎn)換,再通過(guò)Label 轉(zhuǎn)Annotation 的方式形成新的注記圖層,再導(dǎo)入到第1 步中建立的廣州坐標(biāo)范圍數(shù)據(jù)庫(kù)的注記圖層中;③注記圖層屬性還原:通過(guò)數(shù)據(jù)表連接匹配的方式,按原始圖層內(nèi)容修改相關(guān)的注記圖層的屬性?xún)?nèi)容,使其顯示效果、分類(lèi)方式與原始圖層完全一致,從而完成注記類(lèi)圖層的坐標(biāo)轉(zhuǎn)換過(guò)程。
下面講述各步驟的詳細(xì)做法。
由于坐標(biāo)范圍的不一致,坐標(biāo)轉(zhuǎn)換后的shape 文件無(wú)法直接導(dǎo)入原來(lái)的MDB 中,所以需要新建廣州坐標(biāo)范圍的MDB 及注記圖層,保持原有西安坐標(biāo)注記圖層的字段定義、子類(lèi)型定義等屬性定義內(nèi)容。
(1)首先,在ArcCatalog 中通過(guò)[Export |" XML Workspace Document"]菜單功能,將原始MDB 數(shù)據(jù)庫(kù)的圖層、字段結(jié)構(gòu)等定義輸出為XML 工作空間文檔。輸出時(shí)注意選擇“Schema Only”,只輸出結(jié)構(gòu)定義,不輸出數(shù)據(jù)。
(2)使用文字編輯軟件編輯導(dǎo)出的XML 文件,搜索西安坐標(biāo)系的Domain 坐標(biāo)范圍,按字符串搜索<XOrigin >找到類(lèi)似以下的西安坐標(biāo)范圍字符串:
<XOrigin >383595.35439876141 </XOrigin ><YOrigin >2482331.514785964 </YOrigin > <XYScale >49494409388.189407 </XYScale >
將上述內(nèi)容替換成廣州坐標(biāo)系的定位范圍:
<XOrigin >3100 </XOrigin ><YOrigin >-40000 </YOrigin ><XYScale >54989000000 </XYScale >
應(yīng)注意,由于西安坐標(biāo)系的MDB 文件里面有多個(gè)圖層,因此可能存在不完全相同的西安坐標(biāo)范圍值,需要將它們都替換為統(tǒng)一的廣州坐標(biāo)系的定位范圍。
(3)在ArcCatalog 中新建MDB 文件,并通過(guò)[Import|"XML Workspace Document"]菜單功能導(dǎo)入上述修改后的XML 文件,得到一個(gè)圖層結(jié)構(gòu)和字段定義等與原始MDB 均一致的數(shù)據(jù)庫(kù),但是其中各個(gè)圖層的Domain 坐標(biāo)范圍都是按廣州坐標(biāo)范圍設(shè)置的了。
從原始MDB 中導(dǎo)出西安坐標(biāo)的注記圖層(命名為“注記SHP”),此時(shí)的圖層類(lèi)型為Polygon,對(duì)此圖層進(jìn)行坐標(biāo)轉(zhuǎn)換,轉(zhuǎn)換后通過(guò)Lable 轉(zhuǎn)Annotation 的方式形成Annotation 類(lèi)型的注記圖層。
(1)在ArcMap 中加載坐標(biāo)轉(zhuǎn)換后的廣州坐標(biāo)系的“注記SHP”圖層數(shù)據(jù)??梢钥吹?,在轉(zhuǎn)換過(guò)程中,原Annotation 類(lèi)型的要素都已變成了Polygon,與原始數(shù)據(jù)的類(lèi)型是不一樣的。
(2)通過(guò)數(shù)據(jù)框?qū)傩栽O(shè)置好圖形顯示單位后,將“注記SHP”圖層按照注記內(nèi)容字段(TextString)進(jìn)行標(biāo)注(Label),如圖1所示。
圖1 “注記SHP”標(biāo)注顯示效果
(3)將Label 后的“注記SHP”圖層通過(guò)[Convert Labels to Annotation]功能輸出新的Annotation 類(lèi)型圖層,如圖2中的“注記SHP_Anno”圖層??梢钥吹叫聞?chuàng)建的“注記SHP_Anno”圖層的所有注記都是統(tǒng)一默認(rèn)分類(lèi)以及統(tǒng)一字體大小的。
圖2 新輸出“注記SHP_Anno”圖層顯示效果
將上面新創(chuàng)建的“注記SHP_Anno”圖層中的記錄全部復(fù)制到第1 步中新建好的廣州坐標(biāo)MDB 的注記圖層中,并通過(guò)數(shù)據(jù)表連接匹配的方式恢復(fù)注記圖層的分類(lèi)及標(biāo)注字體等屬性設(shè)置,使其顯示效果、分類(lèi)方式與原始西安坐標(biāo)的注記圖層一致。
(1)在ArcMap 中打開(kāi)“注記SHP_Anno”圖層的屬性表,全選所有記錄,然后復(fù)制;
(2)在ArcMap 中加載 廣州坐標(biāo)MDB 的注記圖層(名稱(chēng)為“注記(廣州坐標(biāo))”),設(shè)置為可編輯狀態(tài),并設(shè)為目標(biāo)圖層,然后粘貼剛才復(fù)制的記錄。
由于“注記(廣州坐標(biāo))”和“注記SHP_Anno”圖層的結(jié)構(gòu)字段定義是一樣的,因此大部分屬性?xún)?nèi)容均可正確復(fù)制,但是由于默認(rèn)注記子類(lèi)型分類(lèi)、默認(rèn)注記符號(hào)定義的不一致,個(gè)別字段的屬性?xún)?nèi)容會(huì)不一樣。我們將在下一步中將其與原始注記圖層進(jìn)行匹配,使其顯示效果保持一致。
(3)通過(guò)數(shù)據(jù)表連接匹配的方式,按“注記SHP”圖層內(nèi)容修改“注記(廣州坐標(biāo))”圖層的相關(guān)屬性?xún)?nèi)容,使其顯示效果、分類(lèi)方式與原始西安坐標(biāo)的注記圖層一致,在ArcMap 中,分別打開(kāi)“注記(廣州坐標(biāo))”圖層和“注記SHP”圖層的屬性表,通過(guò)觀察可知“注記(廣州坐標(biāo))”中的Feature ID 的值與“注記SHP”中的FID 字段的值是對(duì)應(yīng)的(如圖3所示),可作為關(guān)鍵字對(duì)兩個(gè)屬性表進(jìn)行連接操作,以進(jìn)行其他字段的匹配。
進(jìn)行表的關(guān)聯(lián):選中“注記(廣州坐標(biāo))”圖層,點(diǎn)擊右鍵菜單[Join],使用FeatureID 字段,連接的圖層選擇“注記SHP”,連接字段為FID,如圖4所示:
圖3 兩個(gè)圖層的屬性表對(duì)比
圖4 兩個(gè)圖層連接設(shè)置
如此連接后,“注記SHP”的字段都添加到“注記(廣州坐標(biāo))”中了,然后使用Field Calculator 方式修改關(guān)聯(lián)后的“注記(廣州坐標(biāo))”圖層表中的AnnotationClassID、FontSize、FontName 、VerticalAlignment、Angle 等注記分類(lèi)、字體顯示相關(guān)字段,使其與原有效果一致,需要匹配修改的字段如表1所列。
表1 需要進(jìn)行匹配修改的字段
至此,我們已經(jīng)完成了注記圖層的坐標(biāo)轉(zhuǎn)換,對(duì)比轉(zhuǎn)換前(圖5)和轉(zhuǎn)換后(圖6)的注記顯示,發(fā)現(xiàn)效果基本一致,但注記位置與原來(lái)相比還存在些許偏差,如下面圖中“龍?zhí)逗印弊⒂浀奈恢谩?/p>
圖5 轉(zhuǎn)換前的注記(西安坐標(biāo))圖層顯示效果
圖6 轉(zhuǎn)換后的注記(廣州坐標(biāo))圖層顯示效果
分析原因:是轉(zhuǎn)換后文件和源文件對(duì)定位點(diǎn)的定義值不一致造成的。比如某個(gè)注記,源文件的定位點(diǎn)在左上,對(duì)應(yīng)的屬性值是1,即1 代表左上定位;而在轉(zhuǎn)換后文件中,該注記的定位點(diǎn)屬性值仍是1,但是此時(shí)1 代表的卻是中心點(diǎn)定位,這就使得文本位置有偏差。如果能修改定位點(diǎn)的定義值,這樣的偏差是可以糾正的。
通過(guò)本方法進(jìn)行注記類(lèi)型圖層的坐標(biāo)轉(zhuǎn)換,既省略了重建注記子類(lèi)型分類(lèi)的步驟,減少手工錄入量,又保留了原有圖層各屬性字段內(nèi)容,同時(shí)也保留了注記字體、大小、角度等相關(guān)顯示信息,能最大限度保持原有顯示效果。但此方法仍存在注記位置偏差的問(wèn)題有待進(jìn)一步研究解決。
[1]王俊,何正國(guó).“三規(guī)合一”基礎(chǔ)地理信息平臺(tái)研究與實(shí)踐——以云浮市“三規(guī)合一”地理信息平臺(tái)建設(shè)為例[J].城市規(guī)劃,2011(S).
[2]謝忠,韓祺娟,吳亮.GIS 空間數(shù)據(jù)庫(kù)的“一庫(kù)兩用”策略研究[J].地理與地理信息科學(xué),2008,24(2).
[3]彭良勇,黃全義,高德荃.基于ArcGIS 的大比例尺地形數(shù)據(jù)庫(kù)的日常更新[J].測(cè)繪信息與工程,2007,32(1).
[4]操震洲,李清泉.空間數(shù)據(jù)庫(kù)的更新技術(shù)研究[J].測(cè)繪通報(bào),2007(11).
[5]王新生,王紅,朱超平.ArcGIS 軟件操作與應(yīng)用.北京:科學(xué)出版社,2010.