31 #ifndef GDAL_ALG_H_INCLUDED 32 #define GDAL_ALG_H_INCLUDED 51 int (*pfnIncludePixel)(
int,
int,
void*),
54 GDALProgressFunc pfnProgress,
55 void * pProgressArg );
62 GDALProgressFunc pfnProgress,
63 void * pProgressArg );
66 int nXOff,
int nYOff,
int nXSize,
int nYSize );
68 CPLErr CPL_DLL CPL_STDCALL
72 GDALProgressFunc pfnProgress,
73 void * pProgressArg );
75 CPLErr CPL_DLL CPL_STDCALL
78 double dfMaxSearchDist,
79 int bDeprecatedOption,
80 int nSmoothingIterations,
82 GDALProgressFunc pfnProgress,
83 void * pProgressArg );
85 CPLErr CPL_DLL CPL_STDCALL
88 OGRLayerH hOutLayer,
int iPixValField,
90 GDALProgressFunc pfnProgress,
91 void * pProgressArg );
93 CPLErr CPL_DLL CPL_STDCALL
96 OGRLayerH hOutLayer,
int iPixValField,
98 GDALProgressFunc pfnProgress,
99 void * pProgressArg );
101 CPLErr CPL_DLL CPL_STDCALL
104 int nSizeThreshold,
int nConnectedness,
106 GDALProgressFunc pfnProgress,
107 void * pProgressArg );
115 int bDstToSrc,
int nPointCount,
116 double *x,
double *y,
double *z,
int *panSuccess );
120 const char *pszClassName;
122 void (*pfnCleanup)(
void * );
127 void CPL_DLL GDALDestroyTransformer(
void *pTransformerArg );
128 int CPL_DLL GDALUseTransformer(
void *pTranformerArg,
129 int bDstToSrc,
int nPointCount,
130 double *x,
double *y,
double *z,
138 GDALCreateGenImgProjTransformer(
GDALDatasetH hSrcDS,
const char *pszSrcWKT,
140 int bGCPUseOK,
double dfGCPErrorThreshold,
144 char **papszOptions );
147 const double *padfSrcGeoTransform,
148 const char *pszDstWKT,
149 const double *padfDstGeoTransform );
154 void *pTransformArg,
int bDstToSrc,
int nPointCount,
155 double *x,
double *y,
double *z,
int *panSuccess );
160 const char *pszDstWKT );
163 void *pTransformArg,
int bDstToSrc,
int nPointCount,
164 double *x,
double *y,
double *z,
int *panSuccess );
169 int nReqOrder,
int bReversed );
173 GDALCreateGCPRefineTransformer(
int nGCPCount,
const GDAL_GCP *pasGCPList,
174 int nReqOrder,
int bReversed,
double tolerance,
int minimumGcps);
178 void *pTransformArg,
int bDstToSrc,
int nPointCount,
179 double *x,
double *y,
double *z,
int *panSuccess );
187 int CPL_DLL GDALTPSTransform(
188 void *pTransformArg,
int bDstToSrc,
int nPointCount,
189 double *x,
double *y,
double *z,
int *panSuccess );
191 char CPL_DLL ** RPCInfoToMD(
GDALRPCInfo *psRPCInfo );
197 double dfPixErrThreshold,
198 char **papszOptions );
199 void CPL_DLL GDALDestroyRPCTransformer(
void *pTransformArg );
200 int CPL_DLL GDALRPCTransform(
201 void *pTransformArg,
int bDstToSrc,
int nPointCount,
202 double *x,
double *y,
double *z,
int *panSuccess );
208 char **papszGeolocationInfo,
210 void CPL_DLL GDALDestroyGeoLocTransformer(
void *pTransformArg );
211 int CPL_DLL GDALGeoLocTransform(
212 void *pTransformArg,
int bDstToSrc,
int nPointCount,
213 double *x,
double *y,
double *z,
int *panSuccess );
218 void *pRawTransformerArg,
double dfMaxError );
219 void CPL_DLL GDALApproxTransformerOwnsSubtransformer(
void *pCBData,
223 void *pTransformArg,
int bDstToSrc,
int nPointCount,
224 double *x,
double *y,
double *z,
int *panSuccess );
229 int CPL_DLL CPL_STDCALL
232 int nBandCount,
int *panBandList,
235 GDALProgressFunc pfnProgress,
237 char **papszWarpOptions );
239 CPLErr CPL_DLL CPL_STDCALL
243 double *padfGeoTransformOut,
244 int *pnPixels,
int *pnLines );
245 CPLErr CPL_DLL CPL_STDCALL
249 double *padfGeoTransformOut,
250 int *pnPixels,
int *pnLines,
256 CPLErr CPL_DLL GDALDeserializeTransformer(
CPLXMLNode *psTree,
258 void **ppTransformArg );
266 GDALProgressFunc pfnProgress,
268 char **papszOptions );
274 typedef CPLErr (*GDALContourWriter)(
double dfLevel,
int nPoints,
275 double *padfX,
double *padfY,
void * );
277 typedef void *GDALContourGeneratorH;
279 GDALContourGeneratorH CPL_DLL
280 GDAL_CG_Create(
int nWidth,
int nHeight,
281 int bNoDataSet,
double dfNoDataValue,
282 double dfContourInterval,
double dfContourBase,
283 GDALContourWriter pfnWriter,
void *pCBData );
284 CPLErr CPL_DLL GDAL_CG_FeedLine( GDALContourGeneratorH hCG,
285 double *padfScanline );
286 void CPL_DLL GDAL_CG_Destroy( GDALContourGeneratorH hCG );
292 double adfGeoTransform[6];
300 OGRContourWriter(
double,
int,
double *,
double *,
void *pInfo );
304 double dfContourInterval,
double dfContourBase,
305 int nFixedLevelCount,
double *padfFixedLevels,
306 int bUseNoData,
double dfNoDataValue,
307 void *hLayer,
int iIDField,
int iElevField,
308 GDALProgressFunc pfnProgress,
void *pProgressArg );
316 int nBandCount,
int *panBandList,
317 int nGeomCount, OGRGeometryH *pahGeometries,
320 double *padfGeomBurnValue,
322 GDALProgressFunc pfnProgress,
323 void * pProgressArg );
326 int nBandCount,
int *panBandList,
327 int nLayerCount, OGRLayerH *pahLayers,
330 double *padfLayerBurnValues,
332 GDALProgressFunc pfnProgress,
333 void *pProgressArg );
338 int nLayerCount, OGRLayerH *pahLayers,
339 const char *pszDstProjection,
340 double *padfDstGeoTransform,
342 void *pTransformArg,
double dfBurnValue,
343 char **papszOptions, GDALProgressFunc pfnProgress,
344 void *pProgressArg );
464 const double *,
const double *,
const double *,
465 double,
double,
double,
double,
467 GDALProgressFunc,
void *);
double dfAngle
Definition: gdal_alg.h:451
Definition: gdal_alg.h:359
CPLErr GDALSuggestedWarpOutput(GDALDatasetH hSrcDS, GDALTransformerFunc pfnTransformer, void *pTransformArg, double *padfGeoTransformOut, int *pnPixels, int *pnLines)
Suggest output file size.
Definition: gdaltransformer.cpp:152
int GDALGenImgProjTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Perform general image reprojection transformation.
Definition: gdaltransformer.cpp:1686
void GDALDestroyReprojectionTransformer(void *)
Destroy reprojection transformation.
Definition: gdaltransformer.cpp:2334
GDALDataType
Definition: gdal.h:55
Document node structure.
Definition: cpl_minixml.h:65
Definitions for CPL mini XML Parser/Serializer.
CPLErr GDALRasterizeGeometries(GDALDatasetH hDS, int nBandCount, int *panBandList, int nGeomCount, OGRGeometryH *pahGeometries, GDALTransformerFunc pfnTransformer, void *pTransformArg, double *padfGeomBurnValue, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Burn geometries into raster.
Definition: gdalrasterize.cpp:560
Data metrics method control options.
Definition: gdal_alg.h:441
CPLErr GDALGridCreate(GDALGridAlgorithm, const void *, GUInt32, const double *, const double *, const double *, double, double, double, double, GUInt32, GUInt32, GDALDataType, void *, GDALProgressFunc, void *)
Create regular grid from the scattered data.
Definition: gdalgrid.cpp:1684
GUInt32 nMinPoints
Definition: gdal_alg.h:419
void GDALDestroyApproxTransformer(void *pApproxArg)
Cleanup approximate transformer.
Definition: gdaltransformer.cpp:2637
Definition: gdal_alg.h:353
double dfNoDataValue
Definition: gdal_alg.h:437
CPLErr GDALRasterizeLayersBuf(void *pData, int nBufXSize, int nBufYSize, GDALDataType eBufType, int nPixelSpace, int nLineSpace, int nLayerCount, OGRLayerH *pahLayers, const char *pszDstProjection, double *padfDstGeoTransform, GDALTransformerFunc pfnTransformer, void *pTransformArg, double dfBurnValue, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Burn geometries from the specified list of layer into raster.
Definition: gdalrasterize.cpp:1161
double dfRadius1
Definition: gdal_alg.h:428
int GDALDitherRGB2PCT(GDALRasterBandH hRed, GDALRasterBandH hGreen, GDALRasterBandH hBlue, GDALRasterBandH hTarget, GDALColorTableH hColorTable, GDALProgressFunc pfnProgress, void *pProgressArg)
24bit to 8bit conversion with dithering.
Definition: gdaldither.cpp:92
GDALGridAlgorithm
Gridding Algorithms.
Definition: gdal_alg.h:352
CPLErr GDALFPolygonize(GDALRasterBandH hSrcBand, GDALRasterBandH hMaskBand, OGRLayerH hOutLayer, int iPixValField, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Create polygon coverage from raster data.
Definition: fpolygonize.cpp:544
GUInt32 nMinPoints
Definition: gdal_alg.h:457
Definition: gdal_alg.h:358
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:162
double dfAngle
Definition: gdal_alg.h:384
double dfNoDataValue
Definition: gdal_alg.h:399
CPLErr GDALComputeProximity(GDALRasterBandH hSrcBand, GDALRasterBandH hProximityBand, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Compute the proximity of all pixels in the image to a set of pixels in the source image...
Definition: gdalproximity.cpp:96
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:165
GUInt32 nMinPoints
Definition: gdal_alg.h:397
CPLErr GDALRasterizeLayers(GDALDatasetH hDS, int nBandCount, int *panBandList, int nLayerCount, OGRLayerH *pahLayers, GDALTransformerFunc pfnTransformer, void *pTransformArg, double *padfLayerBurnValues, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Burn geometries from the specified list of layers into raster.
Definition: gdalrasterize.cpp:784
double dfRadius2
Definition: gdal_alg.h:408
Moving average method control options.
Definition: gdal_alg.h:403
double dfRadius1
Definition: gdal_alg.h:377
double dfAnisotropyRatio
Definition: gdal_alg.h:373
double dfRadius1
Definition: gdal_alg.h:444
void GDALDestroyGenImgProjTransformer(void *)
GenImgProjTransformer deallocator.
Definition: gdaltransformer.cpp:1638
void * GDALCreateGCPTransformer(int nGCPCount, const GDAL_GCP *pasGCPList, int nReqOrder, int bReversed)
Create GCP based polynomial transformer.
Definition: gdal_crs.c:255
void GDALSetGenImgProjTransformerDstGeoTransform(void *, const double *)
Set GenImgProj output geotransform.
Definition: gdaltransformer.cpp:1608
Definition: gdal_alg.h:288
Nearest neighbor method control options.
Definition: gdal_alg.h:425
void GDALDestroyGCPTransformer(void *pTransformArg)
Destroy GCP transformer.
Definition: gdal_crs.c:289
Definition: gdal_alg.h:362
Public (C callable) GDAL entry points.
double dfRadius2
Definition: gdal_alg.h:430
Definition: gdal_alg.h:356
Definition: gdal_alg.h:360
void * GDALCreateRPCTransformer(GDALRPCInfo *psRPC, int bReversed, double dfPixErrThreshold, char **papszOptions)
Create an RPC based transformer.
Definition: gdal_rpc.cpp:390
double dfAnisotropyAngle
Definition: gdal_alg.h:375
int GDALReprojectionTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Perform reprojection transformation.
Definition: gdaltransformer.cpp:2364
double dfRadius1
Definition: gdal_alg.h:406
Definition: gdal_alg.h:354
double dfAngle
Definition: gdal_alg.h:435
int GDALGCPTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Transforms point based on GCP derived polynomial model.
Definition: gdal_nrgcrs.c:239
void * GDALCreateApproxTransformer(GDALTransformerFunc pfnRawTransformer, void *pRawTransformerArg, double dfMaxError)
Create an approximating transformer.
Definition: gdaltransformer.cpp:2591
CPLErr GDALContourGenerate(GDALRasterBandH hBand, double dfContourInterval, double dfContourBase, int nFixedLevelCount, double *padfFixedLevels, int bUseNoData, double dfNoDataValue, void *hLayer, int iIDField, int iElevField, GDALProgressFunc pfnProgress, void *pProgressArg)
Create vector contours from raster DEM.
Definition: contour.cpp:1532
int GDALSimpleImageWarp(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, int nBandCount, int *panBandList, GDALTransformerFunc pfnTransform, void *pTransformArg, GDALProgressFunc pfnProgress, void *pProgressArg, char **papszWarpOptions)
Perform simple image warp.
Definition: gdalsimplewarp.cpp:79
int(* GDALTransformerFunc)(void *pTransformerArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Definition: gdal_alg.h:114
double dfNoDataValue
Definition: gdal_alg.h:421
double dfRadius2
Definition: gdal_alg.h:379
Definition: gdal_alg.h:357
void * GDALCreateGenImgProjTransformer2(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, char **papszOptions)
Create image to image transformer.
Definition: gdaltransformer.cpp:1118
double dfRadius2
Definition: gdal_alg.h:446
int GDALApproxTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Perform approximate transformation.
Definition: gdaltransformer.cpp:2663
Inverse distance to a power method control options.
Definition: gdal_alg.h:366
void GDALDestroyTPSTransformer(void *pTransformArg)
Destroy TPS transformer.
Definition: gdal_tps.cpp:230
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:176
void * GDALCreateReprojectionTransformer(const char *pszSrcWKT, const char *pszDstWKT)
Create reprojection transformer.
Definition: gdaltransformer.cpp:2266
CPLErr GDALPolygonize(GDALRasterBandH hSrcBand, GDALRasterBandH hMaskBand, OGRLayerH hOutLayer, int iPixValField, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Create polygon coverage from raster data.
Definition: polygonize.cpp:495
double dfPower
Definition: gdal_alg.h:369
GUInt32 nMaxPoints
Definition: gdal_alg.h:391
Definition: gdal_alg.h:355
void * GDALCreateGenImgProjTransformer3(const char *pszSrcWKT, const double *padfSrcGeoTransform, const char *pszDstWKT, const double *padfDstGeoTransform)
Create image to image transformer.
Definition: gdaltransformer.cpp:1494
int GDALComputeMedianCutPCT(GDALRasterBandH hRed, GDALRasterBandH hGreen, GDALRasterBandH hBlue, int(*pfnIncludePixel)(int, int, void *), int nColors, GDALColorTableH hColorTable, GDALProgressFunc pfnProgress, void *pProgressArg)
Compute optimal PCT for RGB image.
Definition: gdalmediancut.cpp:109
double dfNoDataValue
Definition: gdal_alg.h:459
double dfAngle
Definition: gdal_alg.h:413
Ground Control Point.
Definition: gdal.h:255
double dfSmoothing
Definition: gdal_alg.h:371
void * GDALCreateTPSTransformer(int nGCPCount, const GDAL_GCP *pasGCPList, int bReversed)
Create Thin Plate Spline transformer from GCPs.
Definition: gdal_tps.cpp:116
int GDALChecksumImage(GDALRasterBandH hBand, int nXOff, int nYOff, int nXSize, int nYSize)
Compute checksum for image region.
Definition: gdalchecksum.cpp:58