回覆列表
  • 1 # 使用者6857797169671

    GML已經成為大家所接受並且容易理解的一種空間資訊的交換格式標準,所以將其它GIS資料轉換為GML格式進行釋出就具有廣泛的實用價值和市場前景。不久的將來,空間資訊會大量的以GML格式存在,人們可以方便的進行空間資訊的共享與交換。由此就會引發出一個非常重要的問題,那就是如何將現有的一些空間資訊轉換成GML格式,更好的實現各類空間資料共享。 目前,大量的空間資料都是以特定的文字資料格式進行儲存的,最常見的GIS資料格式包括ArcInfo公司的Shp檔案,MapInfo公司的Mif檔案等等。根據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中已經支援柵格資料,其中對覆蓋模式的描述與柵格資料集是等價的。

  • 中秋節和大豐收的關聯?
  • 鼓舞士氣的好口號是什麼?