如何将GDALResampleAlg传递给GDAL的RasterIO?
how to pass in a GDALResampleAlg to GDAL's RasterIO?
RasterIO
方法使用GDALRasterIOExtraArg
结构:
GDALResampleAlg
选项链接
GDAL教程具有这样的示例,用于读取栅格频段的数据:
poBand->RasterIO( GF_Read, Xoffset, Yoffset, nXSize, nYSize,
pafScanline, outXSize, outYSize, GDT_Float32,
0, 0);
和未使用的第12个参数可以在GDALRasterIOExtraArg
中采用重新采样选项。
链接
一个人如何编写C 以实际通过该选项?我可以从常数实例化选项:
// how to pass this option in to RasterIO?
GDALResampleAlg eResampleAlg = GRA_NearestNeighbour;
但我不太了解C ,无法看到如何实际使用它,而且我找不到任何可以遵循的示例以使其正常工作。
这是一种方法,有一个宏INIT_RASTERIO_EXTRA_ARG
设置超级ARG结构,此处列出:
链接
然后将eResampleAlg
属性设置为适当的常数。在某些情况下,需要其他一些ARTR-ARG参数,但这不在此问题的范围之内。
float *pafScanline;
GDALRasterIOExtraArg psExtraArg;
INIT_RASTERIO_EXTRA_ARG(psExtraArg);
// TODO expose the resampling options to user
psExtraArg.eResampleAlg = GRIORA_NearestNeighbour;
pafScanline = (float *) CPLMalloc(sizeof(float)*outXSize*outYSize);
CPLErr err = poBand->RasterIO( GF_Read, Xoffset, Yoffset, nXSize, nYSize,
pafScanline, outXSize, outYSize, GDT_Float32,
0, 0, &psExtraArg);
请参阅此处有关更多链接
相关文章:
- 在C++中使用GDAL可以将图像的像素坐标转换为lat,long吗
- 使用 GDAL 获取矢量数组中的所有行数和列数
- 如何使用 C++ gdal 库将栅格地理从 EGM96 转换为 WGS84 椭球体高度基准面
- 无法使用"generate_vcxproj.bat"生成 GDAL Visual Studio 项目
- 使用CMake而不是g++链接GDAL库
- 如何使用 gcc 5.5 在 gdal 2.4 中启用 c++14
- 使用 GDAL 将 DXF 块从一个文件导入到另一个文件
- Java JNI GDAL 本机库在重新部署为 Web 应用程序时出现类加载器错误
- C++ GDAL 算法 GDALFillNodata() 的实现
- 使用 GDAL/OGR C++将 GeoTiff 的 XY 点重新投影到纬度/经度
- GDAL DestroyFeature() 方法产生分割错误
- 在C++中编译/执行 GDAL 时出现问题
- 无法使用 OGR/GDAL 从形状文件中获取 EPSG
- 无法在 Windows 上将 OSG 与 GDAL 一起使用
- 使用GDAL在FAA部分上找到像素位置
- GeoDjango GDAL installation
- 如何从GDAL位于RAM中的Geotiff创建数据集
- 链接器错误构建GDAL VS2017
- 如何将GDALResampleAlg传递给GDAL的RasterIO?
- 如何在GDAL输出文件中设置分类颜色