.. highlight:: rst .. _GDALUtilitiesWithCode: ############################ GDAL工具集代码实现(C/C++) ############################ `GDAL2.0` 开始,可以使用代码实现GDAL工具集的功能,即可以使用代码调用gdal工具集,可以提升编码效率。需要注意,使用参数时,需要逐个添加,不能一行按照空格添加。 下面主要介绍 ``gdalinfo`` ``gdalwarp`` ``gdal_translate`` ``ogr2ogr`` 几个常用工具的代码实现,其他可用工具见 `GDAL官网gdal_utils.h: GDAL Utilities C API `_ 说明,包括 ``gdaldem`` ``gdal_rasterize`` ``nearblack`` ``gdal_grid`` ``gdalbuildvrt`` 几个工具,其余工具官方正在添加。 使用前,需要添加以下头文件: .. code-block:: c++ #include "gdal_priv.h" #include "cpl_string.h" #include "gdal_utils.h" **************************************** gdalinfo **************************************** :ref:`gdalinfo` 工具功能可以使用 ``GDALInfo`` 函数实现,具体定义如下: .. code-block:: c++ /** * @param hDataset 需要获取信息的数据集 * @param psOptions gdalinfo命令参数 * @return 返回数据集信息 */ char* GDALInfo ( GDALDatasetH hDataset, const GDALInfoOptions * psOptions ) 基本使用方式如下: .. code-block:: c++ GDALAllRegister(); GDALDatasetH TestDs = GDALOpen( "testfile.tiff", GA_ReadOnly ); char* info = GDALInfo(TestDs,NULL); std::cout<