大家都知道MapGuide6.5時代(我沒經歷),所使用的SDF版本為2.X版,而到了MapGuide Enterprise則開始使用SDF3這個版本,其中最大的差別在於SDF2只能指定三個欄位:Url、Name及Key,所以以往的做法是"一定"要將相關資料儲存在資料庫中,而把可以識別唯一性的資訊儲存在這三個欄位中。(概念上是這樣,但是我沒有實際操作過)
又因為在台灣MapGuide6.5相當風行,在以往系統不是ArcIMS就是MapGuide6.5,所以遇到有舊系統的單位,就很有可能拿到SDF2的格式。
那如果恰巧你又是AutoCAD Map的使用者,就會發現Map的FDO資料關聯是沒辦法關聯SDF2的版本,所以當我們拿到SDF2的資料,又拿到後面相關欄位的資料表,我們就會很希望把SDF2轉成SDF3,並且將Url、Name及Key三個欄位的屬性資料都帶進轉的SDF3檔案中。
在找資料的過程中,有一些文章說可以利用MapGuide Studio API來進行轉檔,但是我找不到操作的方法,所以最後是使用AutoCAD Map 2010來進行的。(說也奇怪我沒有找到有人教怎麼用AutoCAD Map來轉,不得不說Autodesk的學習資源真的很少,不像某E公司)
轉檔步驟:
1. 打開AutoCAD Map 2010,並且選到"插入"tab。
2. 點選"匯入"方塊中的SDF2按鈕,選擇你要轉的檔案。
3. 選擇你要將檔案匯入的圖層(如果只是單純轉檔,隨便選一層空的就可以了),接著將"指定給物件表格"打勾,並且點擊旁邊的表格圖示。
4. 輸入一個表格名稱,並在欄位名稱分別輸入Name、Url與Key,然後將其加入。
5. 確認所輸入的Name、Url與Key分別對應到正確的位置,確認後點擊確定。
6. 匯入完成後,可以觀察下方指令視窗是否有插入物件,這時候你的螢幕可能還是灰灰一片沒有圖徵,你可以利用Z→E的快捷來Zoom到圖徵位置。
7. 接著做一個確認動作,點選隨便一個圖徵,按右鍵選擇"性質"(在最下面)
8. 你可以看到出來的性質表格最後,有你剛剛定義的表格名稱,並且帶著三個屬性。
9. 接著選取上方"輸出"tab,點擊匯出區塊的"匯出為SDF"。
10. 選取你要匯出的層(也就是剛剛匯入的那層),並點擊"圖徵類別"tab。
11. 選取"根據圖面物件建立多個類別"(就可以看到剛剛建立的表格被帶出來),選擇匯出層的幾何圖形,並且按下確定。
12. 匯出完成以後,可以利用資料連接的方式讀入剛剛的檔案,並且利用平常觀看SDF3屬性的方式來操作了。
如果你因為這篇而成功轉檔成功,請留"YES,轉成功了"。
沒有留言:
張貼留言