GDAL/OGR

GDAL/OGR

瀏覽: 921 次

摘要: GDAL(Geospatial Data Abstraction Library)是一個在X/MIT許可協議下的開源柵格空間數據轉換庫。它利用抽象數據模型來表達所支持的各種文件格式。它還有一系列命令行工具來進行數據轉換和處理。 OGR是GDAL項目的一個分支,....

GDAL(Geospatial Data Abstraction Library)是一個在X/MIT許可協議下的開源柵格空間數據轉換庫。它利用抽象數據模型來表達所支持的各種文件格式。它還有一系列命令行工具來進行數據轉換和處理。

OGR是GDAL項目的一個分支,功能與GDAL類似,只不過它提供對矢量數據的支持。

利用GDAL/OGR庫,可以使基于Linux的地理空間數據管理系統提供對矢量和柵格文件數據的支持。

有很多著名的GIS類產品都使用了GDAL/OGR庫,包括ESRI的ArgGIS 9.2,Google Earth和跨平臺的GRASS GIS系統。

1. GDAL

GDAL提供對多種柵格數據的支持,包括Arc/Info ASCII Grid(asc),GeoTiff (tiff),Erdas Imagine Images(img),ASCII DEM(dem) 等格式。

1)GDAL抽象數據模型

GDAL使用抽象數據模型(abstract datamodel)來解析它所支持的數據格式,抽象數據模型包括數據集(dataset),坐標系統,仿射地理坐標轉換(Affine GeoTransform), 大地控制點(GCPs), 元數據(Metadata),柵格波段(Raster Band),顏色表(ColorTable),子數據集域(Subdatasets Domain),圖像結構域(Image_StructureDomain),XML域(XML:Domains)。

2)GDAL基礎類

GDALMajorObject類:帶有元數據的對象。

GDALDdataset類:通常是從一個柵格文件中提取的相關聯的柵格波段集合和這些波段的元數據;GDALDdataset也負責所有柵格波段的地理坐標轉換(georeferencing transform)和坐標系定義。

GDALDriver類:文件格式驅動類,GDAL會為每一個所支持的文件格式創建一個該類的實體,來管理該文件格式。

GDALDriverManager類:文件格式驅動管理類,用來管理GDALDriver類。

2. OGR

OGR提供對矢量數據格式的讀寫支持,它所支持的文件格式包括:ESRI Shapefiles, S-57, SDTS, PostGIS,Oracle Spatial, Mapinfo mid/mif , Mapinfo TAB。

1)OGR體系結構

OGR包括如下幾部分:

Geometry:類Geometry(包括OGRGeometry等類)封裝了OpenGIS的矢量數據模型,并提供了一些幾何操作,WKB(Well KnowsBinary)和WKT(Well Known Text)格式之間的相互轉換,以及空間參考系統(投影)。

Spatial Reference:類OGRSpatialReference封裝了投影和基準面的定義。

Feature:類OGRFeature封裝了一個完整feature的定義,一個完整的feature包括一個geometry和geometry的一系列屬性。

Feature Definition:類OGRFeatureDefn里面封裝了feature的屬性,類型、名稱及其默認的空間參考系統等。一個OGRFeatureDefn對象通常與一個層(layer)對應。

Layer:類OGRLayer是一個抽象基類,表示數據源類OGRDataSource里面的一層要素(feature)。

Data Source:類OGRDataSource是一個抽象基類,表示含有OGRLayer對象的一個文件或一個數據庫。

Drivers:類OGRSFDriver對應于每一個所支持的矢量文件格式。類OGRSFDriver由類OGRSFDriverRegistrar來注冊和管理。

Copyright © 2014-2019 OSGeo中國中心 吉ICP備05002032號

Powered by TorCMS

168彩票合法吗