空間資訊到GML的轉換

來源:互聯網
上載者:User

    GML已經成為大家所接受並且容易理解的一種空間資訊的交換格式標準,所以將其它GIS資料轉換為GML格式進行發布就具有廣泛的實用價 值和市場前景。不久的將來,空間資訊會大量的以GML格式存在,人們可以方便的進行空間資訊的共用與交換。由此就會引發出一個非常重要的問題,那就是如何將現有的一些空間資訊轉換成GML格式,更好的實現各類空間資料共用。

    目前,大量的空間資料都是以特定的文本資料格式進行儲存的,最常見的GIS資料格式包括ArcInfo公司的Shp檔案,MapInfo公司的Mif檔案等等。在我們所開發的中介軟體中,包含一個轉換工具,實現了對Shp檔案,Mif檔案到GML檔案的轉化。

根據GML3規範中的Schema的描述、Shp檔案和Mif檔案的格式,就能將Shp檔案和Mif檔案轉換為GML檔案。在轉換過程中,首先要建立一個GML格式文檔,添加GML描述資訊,然後迴圈的將Shp或者Mif檔案中的地理資訊元素轉換為GML中的幾何圖元。

以ArcInfo公司的Shp檔案為例。該檔案是一個二進位檔案,包含一個固定長度的標頭檔。該標頭檔長度為100個位元組,其中包含整個檔案的重要屬性資訊。例如:從第24個位元組開始到28個位元組描述的是檔案的長度;從第28個位元組開始到第32個位元組描述的是檔案的版本;從第32個位元組開始到第36個位元組描述的是檔案中包含圖形的類型;從第36個位元組到第84個位元組,每八個位元組為一組,分別描述該圖形檔案的邊界範圍(Xmin,Ymin,Xmax,Ymax,Zmin,Zmax)。第100個位元組以後是關於對象資料的描述,其中包括對point,line,polygon等幾何類型的描述。每個地理對象是由一組位元組決定,每組位元組的長度根據所描述的幾何類型的不同,位元組長度也相應不同。以其中的Point點對象為例,從第0-4個位元組描述對象的類型,從第4-12個位元組描述點對象的X座標,從第12-20個位元組描述點對象的Y座標。

我們將Shp檔案中描述的各種地理資訊與GML幾何圖元進行對應,其對應關係如下表所示。

 

Shp檔案

GML檔案

Point

Point

PointM

Point

PointZ

Point

MultiPoint

Point 或 MultiPoint

MultiPointM

Point 或 MultiPoint

MultiPointZ

Point 或 MultiPoint

Polyline

LineString

PolylineM

LineString

PolylineZ

LineString

Null shape

DBNull.Value

Polygon

Polygon

PolygonM

Polygon

PolygonZ

Polygon

MultiPatch

Polygon

 

除了以特定文本資料格式儲存以外,還有相當一部分地理資訊是儲存在資料庫中的(一般都是儲存在關聯式資料庫中)。將這些地理資訊轉換為GML檔案的原理和上述方法是類似的,只要找到地理資訊與GML幾何圖元之間的對應關係,就可以編程進行轉換。

還有一種常見的地理資訊格式就是柵格資料(Raster Data)。柵格資料是由正方形或者矩形柵格點組成,每個柵格點或者像素的位置由柵格所在的行列號來定義,所對應的數值為柵格所要表達的內容的屬性值。柵格映像的編碼和XML格式的編碼完全不同。它不能從文法上進行分析,不能驗證正確性,也沒有良好的格式。而且,它的每一個柵格點的資料值都是固定不變的,將其轉化XML標準的格式的時候,沒有任何操作的靈活性。將柵格映像轉換為GML,可以將其中所有的柵格點轉換成為GML中的Point。由於通常柵格映像都包含著大量的資訊,因此轉換後的GML檔案一般也都包含了大量的點資訊。目前來看,將柵格資料轉換為GML,並沒有太多的實際意義。況且,GML3中已經支援柵格資料,其中對覆蓋模式的描述與柵格資料集是等價的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.