前言
网上关于GDAL等高线生成的示例全是GDALContourGenerate函数相关的,为加快等高线生成速度,某项目需要对内存数据进行等高线生成,恰好GDAL提供了相应的算法。
要想调用GDAL的算法进行等高线生成,需包含头文件:
#include <gdal_alg.h>
该头文件包含了GDAL的算法接口,等高线生成的函数接口也在其中。
1. 如何使用?
以下将从GDAL的函数原型、参数解释、示例代码等方面对GDAL等高线算法进行介绍。
注意:以下内容是对内存数据(数组)进行操作!!!
1.1 GDAL函数原型
从GDAL源码中(gdal_alg.h)可以看到,创建等高线生成器的函数原型如下:
GDALContourGeneratorH CPL_DLL
GDAL_CG_Create( int nWidth, int nHeight,
int bNoDataSet, double dfNoDataValue,
double dfContourInterval, double dfContourBase,
GDALContourWriter pfnWriter, void *pCBData );
该函数返回一个等高线生成器—GDALContourGeneratorH,其参数解释如下:
int nWidth:数据块的宽度
int nHeight<

本文介绍了如何利用GDAL库在内存数据上高效生成等高线。通过GDAL_CG_Create函数创建等高线生成器,并结合GDALContourWriter回调函数处理生成的等高线数据。示例代码展示了创建生成器、喂入数据行及自定义等高线写操作器的过程,用于将等高线绘制到图像上。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



