GDAL

gdal_alg.h
Go to the documentation of this file.
1 /******************************************************************************
2 * $Id$
3 *
4 * Project: GDAL Image Processing Algorithms
5 * Purpose: Prototypes, and definitions for various GDAL based algorithms.
6 * Author: Frank Warmerdam, warmerdam@pobox.com
7 *
8 ******************************************************************************
9 * Copyright (c) 2001, Frank Warmerdam
10 * Copyright (c) 2008-2012, Even Rouault <even dot rouault at spatialys.com>
11 *
12 * Permission is hereby granted, free of charge, to any person obtaining a
13 * copy of this software and associated documentation files (the "Software"),
14 * to deal in the Software without restriction, including without limitation
15 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16 * and/or sell copies of the Software, and to permit persons to whom the
17 * Software is furnished to do so, subject to the following conditions:
18 *
19 * The above copyright notice and this permission notice shall be included
20 * in all copies or substantial portions of the Software.
21 *
22 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28 * DEALINGS IN THE SOFTWARE.
29 ****************************************************************************/
30
31 #ifndef GDAL_ALG_H_INCLUDED
32 #define GDAL_ALG_H_INCLUDED
33
40 #ifndef DOXYGEN_SKIP
41 #include "gdal.h"
42 #include "cpl_minixml.h"
43 #include "ogr_api.h"
44 #include <stdint.h>
45 #endif
46
47 CPL_C_START
48
49 int CPL_DLL CPL_STDCALL GDALComputeMedianCutPCT( GDALRasterBandH hRed,
50 GDALRasterBandH hGreen,
51 GDALRasterBandH hBlue,
52 int (*pfnIncludePixel)(int,int,void*),
53 int nColors,
54 GDALColorTableH hColorTable,
55 GDALProgressFunc pfnProgress,
56 void * pProgressArg );
57
58 int CPL_DLL CPL_STDCALL GDALDitherRGB2PCT( GDALRasterBandH hRed,
59 GDALRasterBandH hGreen,
60 GDALRasterBandH hBlue,
61 GDALRasterBandH hTarget,
62 GDALColorTableH hColorTable,
63 GDALProgressFunc pfnProgress,
64 void * pProgressArg );
65
66 int CPL_DLL CPL_STDCALL GDALChecksumImage( GDALRasterBandH hBand,
67 int nXOff, int nYOff, int nXSize, int nYSize );
68
69 CPLErr CPL_DLL CPL_STDCALL
70 GDALComputeProximity( GDALRasterBandH hSrcBand,
71 GDALRasterBandH hProximityBand,
72 char **papszOptions,
73 GDALProgressFunc pfnProgress,
74 void * pProgressArg );
75
76 CPLErr CPL_DLL CPL_STDCALL
77 GDALFillNodata( GDALRasterBandH hTargetBand,
78 GDALRasterBandH hMaskBand,
79 double dfMaxSearchDist,
80 int bDeprecatedOption,
81 int nSmoothingIterations,
82 char **papszOptions,
83 GDALProgressFunc pfnProgress,
84 void * pProgressArg );
85
86 CPLErr CPL_DLL CPL_STDCALL
87 GDALPolygonize( GDALRasterBandH hSrcBand,
88 GDALRasterBandH hMaskBand,
89 OGRLayerH hOutLayer, int iPixValField,
90 char **papszOptions,
91 GDALProgressFunc pfnProgress,
92 void * pProgressArg );
93
94 CPLErr CPL_DLL CPL_STDCALL
95 GDALFPolygonize( GDALRasterBandH hSrcBand,
96 GDALRasterBandH hMaskBand,
97 OGRLayerH hOutLayer, int iPixValField,
98 char **papszOptions,
99 GDALProgressFunc pfnProgress,
100 void * pProgressArg );
101
102 CPLErr CPL_DLL CPL_STDCALL
103 GDALSieveFilter( GDALRasterBandH hSrcBand, GDALRasterBandH hMaskBand,
104 GDALRasterBandH hDstBand,
105 int nSizeThreshold, int nConnectedness,
106 char **papszOptions,
107 GDALProgressFunc pfnProgress,
108 void * pProgressArg );
109
110 /*
111 * Warp Related.
112 */
113
114 typedef int
115 (*GDALTransformerFunc)( void *pTransformerArg,
116 int bDstToSrc, int nPointCount,
117 double *x, double *y, double *z, int *panSuccess );
118
120 #define GDAL_GTI2_SIGNATURE "GTI2"
121
122 typedef struct {
123 GByte abySignature[4];
124 const char *pszClassName;
125 GDALTransformerFunc pfnTransform;
126 void (*pfnCleanup)( void * pTransformerArg );
127 CPLXMLNode *(*pfnSerialize)( void * pTransformerArg );
128 void* (*pfnCreateSimilar)( void* pTransformerArg, double dfSrcRatioX, double dfSrcRatioY );
129 } GDALTransformerInfo;
133 void CPL_DLL GDALDestroyTransformer( void *pTransformerArg );
134 int CPL_DLL GDALUseTransformer( void *pTransformerArg,
135 int bDstToSrc, int nPointCount,
136 double *x, double *y, double *z,
137 int *panSuccess );
138 void* GDALCreateSimilarTransformer( void* psTransformerArg, double dfSrcRatioX, double dfSrcRatioY );
141 /* High level transformer for going from image coordinates on one file
142 to image coordinates on another, potentially doing reprojection,
143 utilizing GCPs or using the geotransform. */
144
145 void CPL_DLL *
146 GDALCreateGenImgProjTransformer( GDALDatasetH hSrcDS, const char *pszSrcWKT,
147 GDALDatasetH hDstDS, const char *pszDstWKT,
148 int bGCPUseOK, double dfGCPErrorThreshold,
149 int nOrder );
150 void CPL_DLL *
151 GDALCreateGenImgProjTransformer2( GDALDatasetH hSrcDS, GDALDatasetH hDstDS,
152 char **papszOptions );
153 void CPL_DLL *
154 GDALCreateGenImgProjTransformer3( const char *pszSrcWKT,
155 const double *padfSrcGeoTransform,
156 const char *pszDstWKT,
157 const double *padfDstGeoTransform );
158
159 void CPL_DLL *
160 GDALCreateGenImgProjTransformer4( OGRSpatialReferenceH hSrcSRS,
161 const double *padfSrcGeoTransform,
162 OGRSpatialReferenceH hDstSRS,
163 const double *padfDstGeoTransform,
164 const char* const *papszOptions );
165
166 void CPL_DLL GDALSetGenImgProjTransformerDstGeoTransform( void *,
167 const double * );
168 void CPL_DLL GDALDestroyGenImgProjTransformer( void * );
169 int CPL_DLL GDALGenImgProjTransform(
170 void *pTransformArg, int bDstToSrc, int nPointCount,
171 double *x, double *y, double *z, int *panSuccess );
172
173 void GDALSetTransformerDstGeoTransform( void *, const double * );
174 void GDALGetTransformerDstGeoTransform( void*, double* );
175
176 /* Geo to geo reprojection transformer. */
177 void CPL_DLL *
178 GDALCreateReprojectionTransformer( const char *pszSrcWKT,
179 const char *pszDstWKT );
180 void CPL_DLL *
181 GDALCreateReprojectionTransformerEx(
182 OGRSpatialReferenceH hSrcSRS,
183 OGRSpatialReferenceH hDstSRS,
184 const char* const *papszOptions);
185 void CPL_DLL GDALDestroyReprojectionTransformer( void * );
186 int CPL_DLL GDALReprojectionTransform(
187 void *pTransformArg, int bDstToSrc, int nPointCount,
188 double *x, double *y, double *z, int *panSuccess );
189
190 /* GCP based transformer ... forward is to georef coordinates */
191 void CPL_DLL *
192 GDALCreateGCPTransformer( int nGCPCount, const GDAL_GCP *pasGCPList,
193 int nReqOrder, int bReversed );
194
195 /* GCP based transformer with refinement of the GCPs ... forward is to georef coordinates */
196 void CPL_DLL *
197 GDALCreateGCPRefineTransformer( int nGCPCount, const GDAL_GCP *pasGCPList,
198 int nReqOrder, int bReversed, double tolerance, int minimumGcps);
199
200 void CPL_DLL GDALDestroyGCPTransformer( void *pTransformArg );
201 int CPL_DLL GDALGCPTransform(
202 void *pTransformArg, int bDstToSrc, int nPointCount,
203 double *x, double *y, double *z, int *panSuccess );
204
205 /* Thin Plate Spine transformer ... forward is to georef coordinates */
206
207 void CPL_DLL *
208 GDALCreateTPSTransformer( int nGCPCount, const GDAL_GCP *pasGCPList,
209 int bReversed );
210 void CPL_DLL GDALDestroyTPSTransformer( void *pTransformArg );
211 int CPL_DLL GDALTPSTransform(
212 void *pTransformArg, int bDstToSrc, int nPointCount,
213 double *x, double *y, double *z, int *panSuccess );
214
216 #ifdef GDAL_COMPILATION
217 #define RPCInfoV1ToMD RPCInfoToMD
218 #else
219 #define RPCInfoToMD RPCInfoV2ToMD
220 #endif
221 char CPL_DLL ** RPCInfoV1ToMD( GDALRPCInfoV1 *psRPCInfo );
222 char CPL_DLL ** RPCInfoV2ToMD( GDALRPCInfoV2 *psRPCInfo );
225 /* RPC based transformer ... src is pixel/line/elev, dst is long/lat/elev */
226
228 #ifdef GDAL_COMPILATION
229 #define GDALCreateRPCTransformerV1 GDALCreateRPCTransformer
230 #else
231 #define GDALCreateRPCTransformer GDALCreateRPCTransformerV2
232 #endif
233
234 void CPL_DLL *
235 GDALCreateRPCTransformerV1( GDALRPCInfoV1 *psRPC, int bReversed,
236 double dfPixErrThreshold,
237 char **papszOptions );
240 void CPL_DLL *
241 GDALCreateRPCTransformerV2( const GDALRPCInfoV2 *psRPC, int bReversed,
242 double dfPixErrThreshold,
243 char **papszOptions );
244
245 void CPL_DLL GDALDestroyRPCTransformer( void *pTransformArg );
246 int CPL_DLL GDALRPCTransform(
247 void *pTransformArg, int bDstToSrc, int nPointCount,
248 double *x, double *y, double *z, int *panSuccess );
249
250 /* Geolocation transformer */
251
252 void CPL_DLL *
253 GDALCreateGeoLocTransformer( GDALDatasetH hBaseDS,
254 char **papszGeolocationInfo,
255 int bReversed );
256 void CPL_DLL GDALDestroyGeoLocTransformer( void *pTransformArg );
257 int CPL_DLL GDALGeoLocTransform(
258 void *pTransformArg, int bDstToSrc, int nPointCount,
259 double *x, double *y, double *z, int *panSuccess );
260
261 /* Approximate transformer */
262 void CPL_DLL *
263 GDALCreateApproxTransformer( GDALTransformerFunc pfnRawTransformer,
264 void *pRawTransformerArg, double dfMaxError );
265 void CPL_DLL GDALApproxTransformerOwnsSubtransformer( void *pCBData,
266 int bOwnFlag );
267 void CPL_DLL GDALDestroyApproxTransformer( void *pApproxArg );
268 int CPL_DLL GDALApproxTransform(
269 void *pTransformArg, int bDstToSrc, int nPointCount,
270 double *x, double *y, double *z, int *panSuccess );
271
272 int CPL_DLL CPL_STDCALL
273 GDALSimpleImageWarp( GDALDatasetH hSrcDS,
274 GDALDatasetH hDstDS,
275 int nBandCount, int *panBandList,
276 GDALTransformerFunc pfnTransform,
277 void *pTransformArg,
278 GDALProgressFunc pfnProgress,
279 void *pProgressArg,
280 char **papszWarpOptions );
281
282 CPLErr CPL_DLL CPL_STDCALL
283 GDALSuggestedWarpOutput( GDALDatasetH hSrcDS,
284 GDALTransformerFunc pfnTransformer,
285 void *pTransformArg,
286 double *padfGeoTransformOut,
287 int *pnPixels, int *pnLines );
288
290 #define GDAL_SWO_ROUND_UP_SIZE 0x1
291
292 CPLErr CPL_DLL CPL_STDCALL
293 GDALSuggestedWarpOutput2( GDALDatasetH hSrcDS,
294 GDALTransformerFunc pfnTransformer,
295 void *pTransformArg,
296 double *padfGeoTransformOut,
297 int *pnPixels, int *pnLines,
298 double *padfExtents,
299 int nOptions );
300
302 CPLXMLNode CPL_DLL *
303 GDALSerializeTransformer( GDALTransformerFunc pfnFunc, void *pTransformArg );
304 CPLErr CPL_DLL GDALDeserializeTransformer( CPLXMLNode *psTree,
305 GDALTransformerFunc *ppfnFunc,
306 void **ppTransformArg );
309 CPLErr CPL_DLL
310 GDALTransformGeolocations( GDALRasterBandH hXBand,
311 GDALRasterBandH hYBand,
312 GDALRasterBandH hZBand,
313 GDALTransformerFunc pfnTransformer,
314 void *pTransformArg,
315 GDALProgressFunc pfnProgress,
316 void *pProgressArg,
317 char **papszOptions );
318
319 /* -------------------------------------------------------------------- */
320 /* Contour Line Generation */
321 /* -------------------------------------------------------------------- */
322
324 typedef CPLErr (*GDALContourWriter)( double dfLevel, int nPoints,
325 double *padfX, double *padfY, void * );
326
328 typedef void *GDALContourGeneratorH;
329
330 GDALContourGeneratorH CPL_DLL
331 GDAL_CG_Create( int nWidth, int nHeight,
332 int bNoDataSet, double dfNoDataValue,
333 double dfContourInterval, double dfContourBase,
334 GDALContourWriter pfnWriter, void *pCBData );
335 CPLErr CPL_DLL GDAL_CG_FeedLine( GDALContourGeneratorH hCG,
336 double *padfScanline );
337 void CPL_DLL GDAL_CG_Destroy( GDALContourGeneratorH hCG );
338
340 typedef struct
341 {
342 void *hLayer;
343
344 double adfGeoTransform[6];
345
346 int nElevField;
347 int nElevFieldMin;
348 int nElevFieldMax;
349 int nIDField;
350 int nNextID;
351 } OGRContourWriterInfo;
352
353 CPLErr CPL_DLL
354 OGRContourWriter( double, int, double *, double *, void *pInfo );
357 CPLErr CPL_DLL
358 GDALContourGenerate( GDALRasterBandH hBand,
359 double dfContourInterval, double dfContourBase,
360 int nFixedLevelCount, double *padfFixedLevels,
361 int bUseNoData, double dfNoDataValue,
362 void *hLayer, int iIDField, int iElevField,
363 GDALProgressFunc pfnProgress, void *pProgressArg );
364
365 CPLErr CPL_DLL
366 GDALContourGenerateEx( GDALRasterBandH hBand, void *hLayer,
367 CSLConstList options,
368 GDALProgressFunc pfnProgress, void *pProgressArg );
369
370 /* -------------------------------------------------------------------- */
371 /* Viewshed Generation */
372 /* -------------------------------------------------------------------- */
373
375 typedef enum {
376 GVM_Diagonal = 1,
377 GVM_Edge = 2,
378 GVM_Max = 3,
379 GVM_Min = 4
380 } GDALViewshedMode;
381
383 typedef enum {
384 GVOT_NORMAL = 1,
385 GVOT_MIN_TARGET_HEIGHT_FROM_DEM = 2,
386 GVOT_MIN_TARGET_HEIGHT_FROM_GROUND = 3
387 } GDALViewshedOutputType;
388
389 GDALDatasetH CPL_DLL
390 GDALViewshedGenerate(GDALRasterBandH hBand,
391 const char* pszDriverName,
392 const char* pszTargetRasterName,
393 CSLConstList papszCreationOptions,
394 double dfObserverX, double dfObserverY, double dfObserverHeight,
395 double dfTargetHeight, double dfVisibleVal, double dfInvisibleVal,
396 double dfOutOfRangeVal, double dfNoDataVal, double dfCurvCoeff,
397 GDALViewshedMode eMode, double dfMaxDistance,
398 GDALProgressFunc pfnProgress, void *pProgressArg,
399 GDALViewshedOutputType heightMode, CSLConstList papszExtraOptions);
400
401 /************************************************************************/
402 /* Rasterizer API - geometries burned into GDAL raster. */
403 /************************************************************************/
404
405 CPLErr CPL_DLL
406 GDALRasterizeGeometries( GDALDatasetH hDS,
407 int nBandCount, const int *panBandList,
408 int nGeomCount, const OGRGeometryH *pahGeometries,
409 GDALTransformerFunc pfnTransformer,
410 void *pTransformArg,
411 const double *padfGeomBurnValues,
412 CSLConstList papszOptions,
413 GDALProgressFunc pfnProgress,
414 void * pProgressArg );
415
416 CPLErr CPL_DLL
417 GDALRasterizeGeometriesInt64( GDALDatasetH hDS,
418 int nBandCount, const int *panBandList,
419 int nGeomCount, const OGRGeometryH *pahGeometries,
420 GDALTransformerFunc pfnTransformer,
421 void *pTransformArg,
422 const int64_t *panGeomBurnValues,
423 CSLConstList papszOptions,
424 GDALProgressFunc pfnProgress,
425 void * pProgressArg );
426
427 CPLErr CPL_DLL
428 GDALRasterizeLayers( GDALDatasetH hDS,
429 int nBandCount, int *panBandList,
430 int nLayerCount, OGRLayerH *pahLayers,
431 GDALTransformerFunc pfnTransformer,
432 void *pTransformArg,
433 double *padfLayerBurnValues,
434 char **papszOptions,
435 GDALProgressFunc pfnProgress,
436 void *pProgressArg );
437
438 CPLErr CPL_DLL
439 GDALRasterizeLayersBuf( void *pData, int nBufXSize, int nBufYSize,
440 GDALDataType eBufType, int nPixelSpace, int nLineSpace,
441 int nLayerCount, OGRLayerH *pahLayers,
442 const char *pszDstProjection,
443 double *padfDstGeoTransform,
444 GDALTransformerFunc pfnTransformer,
445 void *pTransformArg, double dfBurnValue,
446 char **papszOptions, GDALProgressFunc pfnProgress,
447 void *pProgressArg );
448
449 /************************************************************************/
450 /* Gridding interface. */
451 /************************************************************************/
452
454 typedef enum { GGA_InverseDistanceToAPower = 1, GGA_MovingAverage = 2, GGA_NearestNeighbor = 3, GGA_MetricMinimum = 4, GGA_MetricMaximum = 5, GGA_MetricRange = 6, GGA_MetricCount = 7, GGA_MetricAverageDistance = 8,
464 GGA_MetricAverageDistancePts = 9,
466 GGA_Linear = 10,
468 GGA_InverseDistanceToAPowerNearestNeighbor = 11
469 } GDALGridAlgorithm;
470
472 typedef struct
473 {
475 size_t nSizeOfStructure;
477 double dfPower;
479 double dfSmoothing;
481 double dfAnisotropyRatio;
483 double dfAnisotropyAngle;
485 double dfRadius1;
487 double dfRadius2;
492 double dfAngle;
497 GUInt32 nMaxPoints;
503 GUInt32 nMinPoints;
505 double dfNoDataValue;
506 } GDALGridInverseDistanceToAPowerOptions;
507
509 typedef struct
510 {
512 size_t nSizeOfStructure;
514 double dfPower;
516 double dfRadius;
518 double dfSmoothing;
519
524 GUInt32 nMaxPoints;
530 GUInt32 nMinPoints;
532 double dfNoDataValue;
537 GUInt32 nMaxPointsPerQuadrant;
543 GUInt32 nMinPointsPerQuadrant;
544 } GDALGridInverseDistanceToAPowerNearestNeighborOptions;
545
547 typedef struct
548 {
550 size_t nSizeOfStructure;
552 double dfRadius1;
554 double dfRadius2;
559 double dfAngle;
564 GUInt32 nMaxPoints;
570 GUInt32 nMinPoints;
572 double dfNoDataValue;
577 GUInt32 nMaxPointsPerQuadrant;
583 GUInt32 nMinPointsPerQuadrant;
584 } GDALGridMovingAverageOptions;
585
587 typedef struct
588 {
590 size_t nSizeOfStructure;
592 double dfRadius1;
594 double dfRadius2;
599 double dfAngle;
601 double dfNoDataValue;
602 } GDALGridNearestNeighborOptions;
603
605 typedef struct
606 {
608 size_t nSizeOfStructure;
610 double dfRadius1;
612 double dfRadius2;
617 double dfAngle;
623 GUInt32 nMinPoints;
625 double dfNoDataValue;
630 GUInt32 nMaxPointsPerQuadrant;
636 GUInt32 nMinPointsPerQuadrant;
637 } GDALGridDataMetricsOptions;
638
640 typedef struct
641 {
643 size_t nSizeOfStructure;
649 double dfRadius;
651 double dfNoDataValue;
652 } GDALGridLinearOptions;
653
654 CPLErr CPL_DLL
655 GDALGridCreate( GDALGridAlgorithm, const void *, GUInt32,
656 const double *, const double *, const double *,
657 double, double, double, double,
658 GUInt32, GUInt32, GDALDataType, void *,
659 GDALProgressFunc, void *);
660
662 typedef struct GDALGridContext GDALGridContext;
663
664 GDALGridContext CPL_DLL*
665 GDALGridContextCreate( GDALGridAlgorithm eAlgorithm, const void *poOptions,
666 GUInt32 nPoints,
667 const double *padfX, const double *padfY, const double *padfZ,
668 int bCallerWillKeepPointArraysAlive );
669
670 void CPL_DLL GDALGridContextFree(GDALGridContext* psContext);
671
672 CPLErr CPL_DLL GDALGridContextProcess(GDALGridContext* psContext,
673 double dfXMin, double dfXMax, double dfYMin, double dfYMax,
674 GUInt32 nXSize, GUInt32 nYSize, GDALDataType eType, void *pData,
675 GDALProgressFunc pfnProgress, void *pProgressArg );
676
677 GDAL_GCP CPL_DLL *
678 GDALComputeMatchingPoints( GDALDatasetH hFirstImage,
679 GDALDatasetH hSecondImage,
680 char **papszOptions,
681 int *pnGCPCount );
682
683 /************************************************************************/
684 /* Delaunay triangulation interface. */
685 /************************************************************************/
686
688 typedef struct
689 {
690 int anVertexIdx[3];
691 int anNeighborIdx[3];
692 /* anNeighborIdx[k] is the triangle to the opposite side */
693 /* of the opposite segment of anVertexIdx[k] */
694 } GDALTriFacet;
695
703 typedef struct
704 {
705 double dfMul1X;
706 double dfMul1Y;
707 double dfMul2X;
708 double dfMul2Y;
709 double dfCstX;
710 double dfCstY;
711 } GDALTriBarycentricCoefficients;
712
714 typedef struct
715 {
716 int nFacets;
717 GDALTriFacet *pasFacets;
718 GDALTriBarycentricCoefficients *pasFacetCoefficients;
719 } GDALTriangulation;
720
721 int CPL_DLL GDALHasTriangulation(void);
722
723 GDALTriangulation CPL_DLL *GDALTriangulationCreateDelaunay(int nPoints,
724 const double* padfX,
725 const double* padfY);
726 int CPL_DLL GDALTriangulationComputeBarycentricCoefficients(
727 GDALTriangulation* psDT,
728 const double* padfX,
729 const double* padfY);
730 int CPL_DLL GDALTriangulationComputeBarycentricCoordinates(
731 const GDALTriangulation* psDT,
732 int nFacetIdx,
733 double dfX,
734 double dfY,
735 double* pdfL1,
736 double* pdfL2,
737 double* pdfL3);
738 int CPL_DLL GDALTriangulationFindFacetBruteForce( const GDALTriangulation* psDT,
739 double dfX,
740 double dfY,
741 int* panOutputFacetIdx );
742 int CPL_DLL GDALTriangulationFindFacetDirected( const GDALTriangulation* psDT,
743 int nFacetIdx,
744 double dfX,
745 double dfY,
746 int* panOutputFacetIdx );
747 void CPL_DLL GDALTriangulationFree(GDALTriangulation* psDT);
748
750 #ifndef CPL_WARN_DEPRECATED_GDALOpenVerticalShiftGrid
751 #define CPL_WARN_DEPRECATED_GDALOpenVerticalShiftGrid CPL_WARN_DEPRECATED
752 #endif
753
755 GDALDatasetH CPL_DLL GDALOpenVerticalShiftGrid(
756 const char* pszProj4Geoidgrids,
757 int* pbError )
759 CPL_WARN_DEPRECATED_GDALOpenVerticalShiftGrid("GDALOpenVerticalShiftGrid() will be removed in GDAL 4.0")
761 ;
762
764 #ifndef CPL_WARN_DEPRECATED_GDALApplyVerticalShiftGrid
765 #define CPL_WARN_DEPRECATED_GDALApplyVerticalShiftGrid CPL_WARN_DEPRECATED
766 #endif
767
769 GDALDatasetH CPL_DLL GDALApplyVerticalShiftGrid( GDALDatasetH hSrcDataset,
770 GDALDatasetH hGridDataset,
771 int bInverse,
772 double dfSrcUnitToMeter,
773 double dfDstUnitToMeter,
774 const char* const* papszOptions )
776 CPL_WARN_DEPRECATED_GDALApplyVerticalShiftGrid("GDALApplyVerticalShiftGrid() will be removed in GDAL 4.0")
778 ;
779
780 CPL_C_END
781
782 #endif /* ndef GDAL_ALG_H_INCLUDED */
GDALGridInverseDistanceToAPowerNearestNeighborOptions::nMaxPointsPerQuadrant
GUInt32 nMaxPointsPerQuadrant
Definition: gdal_alg.h:537
GDALTransformGeolocations
CPLErr GDALTransformGeolocations(GDALRasterBandH hXBand, GDALRasterBandH hYBand, GDALRasterBandH hZBand, GDALTransformerFunc pfnTransformer, void *pTransformArg, GDALProgressFunc pfnProgress, void *pProgressArg, char **papszOptions)
Transform locations held in bands.
Definition: gdaltransformgeolocs.cpp:68
GDALGridMovingAverageOptions::nSizeOfStructure
size_t nSizeOfStructure
Definition: gdal_alg.h:550
GDALGridDataMetricsOptions
Data metrics method control options.
Definition: gdal_alg.h:605
GDALGridContextCreate
GDALGridContext * GDALGridContextCreate(GDALGridAlgorithm eAlgorithm, const void *poOptions, GUInt32 nPoints, const double *padfX, const double *padfY, const double *padfZ, int bCallerWillKeepPointArraysAlive)
Creates a context to do regular gridding from the scattered data.
Definition: gdalgrid.cpp:2757
GDALDestroyGenImgProjTransformer
void GDALDestroyGenImgProjTransformer(void *)
GenImgProjTransformer deallocator.
Definition: gdaltransformer.cpp:2649
GByte
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:203
GGA_Linear
@ GGA_Linear
Definition: gdal_alg.h:466
GDALCreateGenImgProjTransformer4
void * GDALCreateGenImgProjTransformer4(OGRSpatialReferenceH hSrcSRS, const double *padfSrcGeoTransform, OGRSpatialReferenceH hDstSRS, const double *padfDstGeoTransform, const char *const *papszOptions)
Create image to image transformer.
Definition: gdaltransformer.cpp:2509
gdal.h
GDALGCPTransform
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_crs.cpp:409
GDALDestroyGeoLocTransformer
void GDALDestroyGeoLocTransformer(void *pTransformArg)
Destroy GeoLocation transformer.
Definition: gdalgeoloc.cpp:1983
GDALGridDataMetricsOptions::dfRadius2
double dfRadius2
Definition: gdal_alg.h:612
GDALCreateReprojectionTransformerEx
void * GDALCreateReprojectionTransformerEx(OGRSpatialReferenceH hSrcSRS, OGRSpatialReferenceH hDstSRS, const char *const *papszOptions)
Create reprojection transformer.
Definition: gdaltransformer.cpp:3252
GDALComputeMedianCutPCT
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:147
GDAL_CG_Destroy
void GDAL_CG_Destroy(GDALContourGeneratorH hCG)
Destroy contour generator.
Definition: contour.cpp:746
GDALTransformerFunc
int(* GDALTransformerFunc)(void *pTransformerArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Definition: gdal_alg.h:115
GDALCreateGCPTransformer
void * GDALCreateGCPTransformer(int nGCPCount, const GDAL_GCP *pasGCPList, int nReqOrder, int bReversed)
Create GCP based polynomial transformer.
Definition: gdal_crs.cpp:330
GDALTriangulation::pasFacetCoefficients
GDALTriBarycentricCoefficients * pasFacetCoefficients
arra of nFacets barycentric coefficients
Definition: gdal_alg.h:718
GDALGridDataMetricsOptions::nMinPoints
GUInt32 nMinPoints
Definition: gdal_alg.h:623
GDALCreateGenImgProjTransformer3
void * GDALCreateGenImgProjTransformer3(const char *pszSrcWKT, const double *padfSrcGeoTransform, const char *pszDstWKT, const double *padfDstGeoTransform)
Create image to image transformer.
Definition: gdaltransformer.cpp:2454
cpl_minixml.h
GDALSieveFilter
CPLErr GDALSieveFilter(GDALRasterBandH hSrcBand, GDALRasterBandH hMaskBand, GDALRasterBandH hDstBand, int nSizeThreshold, int nConnectedness, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Removes small raster polygons.
Definition: gdalsievefilter.cpp:200
GDALViewshedOutputType
GDALViewshedOutputType
Viewshed output types.
Definition: gdal_alg.h:383
GDALContourGenerate
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:310
GDALGridInverseDistanceToAPowerOptions::dfAnisotropyAngle
double dfAnisotropyAngle
Definition: gdal_alg.h:483
GDALColorTableH
void * GDALColorTableH
Opaque type used for the C bindings of the C++ GDALColorTable class.
Definition: gdal.h:278
GDALGridMovingAverageOptions::nMaxPointsPerQuadrant
GUInt32 nMaxPointsPerQuadrant
Definition: gdal_alg.h:577
GGA_MovingAverage
@ GGA_MovingAverage
Definition: gdal_alg.h:456
GDALApplyVerticalShiftGrid
GDALDatasetH GDALApplyVerticalShiftGrid(GDALDatasetH hSrcDataset, GDALDatasetH hGridDataset, int bInverse, double dfSrcUnitToMeter, double dfDstUnitToMeter, const char *const *papszOptions)
Apply a vertical shift grid to a source (DEM typically) dataset.
Definition: gdalapplyverticalshiftgrid.cpp:376
GGA_MetricCount
@ GGA_MetricCount
Definition: gdal_alg.h:461
GDALSuggestedWarpOutput2
CPLErr GDALSuggestedWarpOutput2(GDALDatasetH hSrcDS, GDALTransformerFunc pfnTransformer, void *pTransformArg, double *padfGeoTransformOut, int *pnPixels, int *pnLines, double *padfExtents, int nOptions)
Suggest output file size.
Definition: gdaltransformer.cpp:409
GDALSuggestedWarpOutput
CPLErr GDALSuggestedWarpOutput(GDALDatasetH hSrcDS, GDALTransformerFunc pfnTransformer, void *pTransformArg, double *padfGeoTransformOut, int *pnPixels, int *pnLines)
Suggest output file size.
Definition: gdaltransformer.cpp:231
GDALComputeMatchingPoints
GDAL_GCP * GDALComputeMatchingPoints(GDALDatasetH hFirstImage, GDALDatasetH hSecondImage, char **papszOptions, int *pnGCPCount)
GDALComputeMatchingPoints.
Definition: gdalmatching.cpp:188
GGA_InverseDistanceToAPowerNearestNeighbor
@ GGA_InverseDistanceToAPowerNearestNeighbor
Definition: gdal_alg.h:468
GDALGridMovingAverageOptions::nMinPoints
GUInt32 nMinPoints
Definition: gdal_alg.h:570
GDALGridInverseDistanceToAPowerOptions::nMaxPoints
GUInt32 nMaxPoints
Definition: gdal_alg.h:497
GDALTriangulationComputeBarycentricCoordinates
int GDALTriangulationComputeBarycentricCoordinates(const GDALTriangulation *psDT, int nFacetIdx, double dfX, double dfY, double *pdfL1, double *pdfL2, double *pdfL3)
Computes the barycentric coordinates of a point.
Definition: delaunay.c:378
GDALGridInverseDistanceToAPowerNearestNeighborOptions::dfNoDataValue
double dfNoDataValue
Definition: gdal_alg.h:532
GDALRasterizeLayersBuf
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:1776
GDALDataType
GDALDataType
Definition: gdal.h:63
CPLXMLNode
Document node structure.
Definition: cpl_minixml.h:69
GDALComputeProximity
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:112
GDALViewshedMode
GDALViewshedMode
Viewshed Modes.
Definition: gdal_alg.h:375
GDALGridInverseDistanceToAPowerNearestNeighborOptions::nMinPoints
GUInt32 nMinPoints
Definition: gdal_alg.h:530
GDALGridLinearOptions::dfNoDataValue
double dfNoDataValue
Definition: gdal_alg.h:651
GDALGridInverseDistanceToAPowerNearestNeighborOptions
Inverse distance to a power, with nearest neighbour search, control options.
Definition: gdal_alg.h:509
GDALGridInverseDistanceToAPowerOptions::nMinPoints
GUInt32 nMinPoints
Definition: gdal_alg.h:503
GDALPolygonize
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:953
GDALGridLinearOptions::dfRadius
double dfRadius
Definition: gdal_alg.h:649
GDALGridDataMetricsOptions::dfNoDataValue
double dfNoDataValue
Definition: gdal_alg.h:625
GDALGetTransformerDstGeoTransform
void GDALGetTransformerDstGeoTransform(void *, double *)
Get ApproxTransformer or GenImgProj output geotransform.
Definition: gdaltransformer.cpp:4740
GDALDestroyApproxTransformer
void GDALDestroyApproxTransformer(void *pApproxArg)
Cleanup approximate transformer.
Definition: gdaltransformer.cpp:3751
GDALTriangulationFindFacetDirected
int GDALTriangulationFindFacetDirected(const GDALTriangulation *psDT, int nFacetIdx, double dfX, double dfY, int *panOutputFacetIdx)
Returns the index of the triangle that contains the point by walking in the triangulation.
Definition: delaunay.c:521
GDALGridInverseDistanceToAPowerNearestNeighborOptions::dfRadius
double dfRadius
Definition: gdal_alg.h:516
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:304
GDALGridInverseDistanceToAPowerNearestNeighborOptions::nMinPointsPerQuadrant
GUInt32 nMinPointsPerQuadrant
Definition: gdal_alg.h:543
GDALTriBarycentricCoefficients::dfCstY
double dfCstY
dfCstY
Definition: gdal_alg.h:710
OGRSpatialReferenceH
void * OGRSpatialReferenceH
Opaque type for a spatial reference system.
Definition: ogr_api.h:81
GDALGridInverseDistanceToAPowerOptions::dfSmoothing
double dfSmoothing
Definition: gdal_alg.h:479
GDALRasterizeGeometriesInt64
CPLErr GDALRasterizeGeometriesInt64(GDALDatasetH hDS, int nBandCount, const int *panBandList, int nGeomCount, const OGRGeometryH *pahGeometries, GDALTransformerFunc pfnTransformer, void *pTransformArg, const int64_t *panGeomBurnValues, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Burn geometries into raster.
Definition: gdalrasterize.cpp:915
GDALTriangulationFree
void GDALTriangulationFree(GDALTriangulation *psDT)
Free a triangulation.
Definition: delaunay.c:275
GDALGridMovingAverageOptions::dfRadius2
double dfRadius2
Definition: gdal_alg.h:554
GDALContourWriter
CPLErr(* GDALContourWriter)(double dfLevel, int nPoints, double *padfX, double *padfY, void *)
Contour writer callback type.
Definition: gdal_alg.h:324
GDALCreateGeoLocTransformer
void * GDALCreateGeoLocTransformer(GDALDatasetH hBaseDS, char **papszGeolocationInfo, int bReversed)
Create GeoLocation transformer.
Definition: gdalgeoloc.cpp:1969
GDALGridDataMetricsOptions::nMinPointsPerQuadrant
GUInt32 nMinPointsPerQuadrant
Definition: gdal_alg.h:636
GDALTriangulation::nFacets
int nFacets
number of facets
Definition: gdal_alg.h:716
GDALCreateApproxTransformer
void * GDALCreateApproxTransformer(GDALTransformerFunc pfnRawTransformer, void *pRawTransformerArg, double dfMaxError)
Create an approximating transformer.
Definition: gdaltransformer.cpp:3687
GDALDestroyRPCTransformer
void GDALDestroyRPCTransformer(void *pTransformArg)
Destroy RPC tranformer.
Definition: gdal_rpc.cpp:1098
GDAL_CG_FeedLine
CPLErr GDAL_CG_FeedLine(GDALContourGeneratorH hCG, double *padfScanline)
Feed a line to the contour generator.
Definition: contour.cpp:734
GDALCreateRPCTransformerV2
void * GDALCreateRPCTransformerV2(const GDALRPCInfoV2 *psRPC, int bReversed, double dfPixErrThreshold, char **papszOptions)
Create an RPC based transformer.
Definition: gdal_rpc.cpp:810
GDALCreateGCPRefineTransformer
void * GDALCreateGCPRefineTransformer(int nGCPCount, const GDAL_GCP *pasGCPList, int nReqOrder, int bReversed, double tolerance, int minimumGcps)
Create GCP based polynomial transformer, with a tolerance threshold to discard GCPs that transform ba...
Definition: gdal_crs.cpp:340
CSLConstList
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition: cpl_port.h:1056
GDALGridInverseDistanceToAPowerOptions::dfPower
double dfPower
Definition: gdal_alg.h:477
GDALRPCTransform
int GDALRPCTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
RPC transform.
Definition: gdal_rpc.cpp:2046
GDALGridMovingAverageOptions
Moving average method control options.
Definition: gdal_alg.h:547
GDALGridNearestNeighborOptions::nSizeOfStructure
size_t nSizeOfStructure
Definition: gdal_alg.h:590
GDALGridMovingAverageOptions::nMinPointsPerQuadrant
GUInt32 nMinPointsPerQuadrant
Definition: gdal_alg.h:583
GDALGeoLocTransform
int GDALGeoLocTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Use GeoLocation transformer.
Definition: gdalgeoloc.cpp:2014
GDAL_GCP
Ground Control Point.
Definition: gdal.h:892
GDALGridMovingAverageOptions::nMaxPoints
GUInt32 nMaxPoints
Definition: gdal_alg.h:564
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:306
GDALFillNodata
CPLErr GDALFillNodata(GDALRasterBandH hTargetBand, GDALRasterBandH hMaskBand, double dfMaxSearchDist, int bDeprecatedOption, int nSmoothingIterations, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Fill selected raster regions by interpolation from the edges.
Definition: rasterfill.cpp:414
GDALDestroyGCPTransformer
void GDALDestroyGCPTransformer(void *pTransformArg)
Destroy GCP transformer.
Definition: gdal_crs.cpp:367
GDALGridLinearOptions
Linear method control options.
Definition: gdal_alg.h:640
GDALDestroyTPSTransformer
void GDALDestroyTPSTransformer(void *pTransformArg)
Destroy TPS transformer.
Definition: gdal_tps.cpp:313
GDALViewshedGenerate
GDALDatasetH GDALViewshedGenerate(GDALRasterBandH hBand, const char *pszDriverName, const char *pszTargetRasterName, CSLConstList papszCreationOptions, double dfObserverX, double dfObserverY, double dfObserverHeight, double dfTargetHeight, double dfVisibleVal, double dfInvisibleVal, double dfOutOfRangeVal, double dfNoDataVal, double dfCurvCoeff, GDALViewshedMode eMode, double dfMaxDistance, GDALProgressFunc pfnProgress, void *pProgressArg, GDALViewshedOutputType heightMode, CSLConstList papszExtraOptions)
Create viewshed from raster DEM.
Definition: viewshed.cpp:202
GDAL_CG_Create
GDALContourGeneratorH GDAL_CG_Create(int nWidth, int nHeight, int bNoDataSet, double dfNoDataValue, double dfContourInterval, double dfContourBase, GDALContourWriter pfnWriter, void *pCBData)
Create contour generator.
Definition: contour.cpp:712
GDALCreateGenImgProjTransformer
void * GDALCreateGenImgProjTransformer(GDALDatasetH hSrcDS, const char *pszSrcWKT, GDALDatasetH hDstDS, const char *pszDstWKT, int bGCPUseOK, double dfGCPErrorThreshold, int nOrder)
Create image to image transformer.
Definition: gdaltransformer.cpp:1353
GDALGridInverseDistanceToAPowerNearestNeighborOptions::dfSmoothing
double dfSmoothing
Definition: gdal_alg.h:518
GDALCreateReprojectionTransformer
void * GDALCreateReprojectionTransformer(const char *pszSrcWKT, const char *pszDstWKT)
Create reprojection transformer.
Definition: gdaltransformer.cpp:3181
GDALTriFacet
Triangle fact.
Definition: gdal_alg.h:688
GDALGridInverseDistanceToAPowerOptions::dfRadius2
double dfRadius2
Definition: gdal_alg.h:487
GDALDestroyReprojectionTransformer
void GDALDestroyReprojectionTransformer(void *)
Destroy reprojection transformation.
Definition: gdaltransformer.cpp:3351
GDALFPolygonize
CPLErr GDALFPolygonize(GDALRasterBandH hSrcBand, GDALRasterBandH hMaskBand, OGRLayerH hOutLayer, int iPixValField, char **papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Create polygon coverage from raster data.
Definition: polygonize.cpp:1032
GDALGridNearestNeighborOptions
Nearest neighbor method control options.
Definition: gdal_alg.h:587
GDALTPSTransform
int GDALTPSTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Transforms point based on GCP derived polynomial model.
Definition: gdal_tps.cpp:358
GDALGridContextFree
void GDALGridContextFree(GDALGridContext *psContext)
Free a context used created by GDALGridContextCreate()
Definition: gdalgrid.cpp:3338
OGRGeometryH
void * OGRGeometryH
Opaque type for a geometry.
Definition: ogr_api.h:66
GDALGridMovingAverageOptions::dfNoDataValue
double dfNoDataValue
Definition: gdal_alg.h:572
GDALApproxTransformerOwnsSubtransformer
void GDALApproxTransformerOwnsSubtransformer(void *pCBData, int bOwnFlag)
Set bOwnSubtransformer flag.
Definition: gdaltransformer.cpp:3730
GDALGridNearestNeighborOptions::dfAngle
double dfAngle
Definition: gdal_alg.h:599
GDALGridDataMetricsOptions::nMaxPointsPerQuadrant
GUInt32 nMaxPointsPerQuadrant
Definition: gdal_alg.h:630
GDALTriBarycentricCoefficients::dfMul1Y
double dfMul1Y
dfMul1Y
Definition: gdal_alg.h:706
GDALSetGenImgProjTransformerDstGeoTransform
void GDALSetGenImgProjTransformerDstGeoTransform(void *, const double *)
Set GenImgProj output geotransform.
Definition: gdaltransformer.cpp:2618
GDALSetTransformerDstGeoTransform
void GDALSetTransformerDstGeoTransform(void *, const double *)
Set ApproxTransformer or GenImgProj output geotransform.
Definition: gdaltransformer.cpp:4716
GDALCreateTPSTransformer
void * GDALCreateTPSTransformer(int nGCPCount, const GDAL_GCP *pasGCPList, int bReversed)
Create Thin Plate Spline transformer from GCPs.
Definition: gdal_tps.cpp:144
GGA_MetricAverageDistancePts
@ GGA_MetricAverageDistancePts
Definition: gdal_alg.h:464
GDALGridNearestNeighborOptions::dfRadius2
double dfRadius2
Definition: gdal_alg.h:594
GDALTriBarycentricCoefficients::dfMul1X
double dfMul1X
dfMul1X
Definition: gdal_alg.h:705
GDALGridNearestNeighborOptions::dfNoDataValue
double dfNoDataValue
Definition: gdal_alg.h:601
GGA_MetricRange
@ GGA_MetricRange
Definition: gdal_alg.h:460
GDALGridDataMetricsOptions::dfRadius1
double dfRadius1
Definition: gdal_alg.h:610
GDALGridInverseDistanceToAPowerNearestNeighborOptions::nSizeOfStructure
size_t nSizeOfStructure
Definition: gdal_alg.h:512
GDALApproxTransform
int GDALApproxTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Perform approximate transformation.
Definition: gdaltransformer.cpp:4079
GDALContourGeneratorH
void * GDALContourGeneratorH
Contour generator opaque type.
Definition: gdal_alg.h:328
GDALGenImgProjTransform
int GDALGenImgProjTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Perform general image reprojection transformation.
Definition: gdaltransformer.cpp:2687
GDALRasterizeGeometries
CPLErr GDALRasterizeGeometries(GDALDatasetH hDS, int nBandCount, const int *panBandList, int nGeomCount, const OGRGeometryH *pahGeometries, GDALTransformerFunc pfnTransformer, void *pTransformArg, const double *padfGeomBurnValues, CSLConstList papszOptions, GDALProgressFunc pfnProgress, void *pProgressArg)
Burn geometries into raster.
Definition: gdalrasterize.cpp:882
GDALTriangulation::pasFacets
GDALTriFacet * pasFacets
array of nFacets facets
Definition: gdal_alg.h:717
GDALContourGenerateEx
CPLErr GDALContourGenerateEx(GDALRasterBandH hBand, void *hLayer, CSLConstList options, GDALProgressFunc pfnProgress, void *pProgressArg)
Create vector contours from raster DEM.
Definition: contour.cpp:523
GDALGridInverseDistanceToAPowerOptions::dfAnisotropyRatio
double dfAnisotropyRatio
Definition: gdal_alg.h:481
GDALGridContext
struct GDALGridContext GDALGridContext
Grid context opaque type.
Definition: gdal_alg.h:662
GDALOpenVerticalShiftGrid
GDALDatasetH GDALOpenVerticalShiftGrid(const char *pszProj4Geoidgrids, int *pbError)
Load proj.4 geoidgrids as GDAL dataset.
Definition: gdalapplyverticalshiftgrid.cpp:619
GDALGridMovingAverageOptions::dfRadius1
double dfRadius1
Definition: gdal_alg.h:552
ogr_api.h
GDALChecksumImage
int GDALChecksumImage(GDALRasterBandH hBand, int nXOff, int nYOff, int nXSize, int nYSize)
Compute checksum for image region.
Definition: gdalchecksum.cpp:66
GDALSimpleImageWarp
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:230
GDALGridDataMetricsOptions::nSizeOfStructure
size_t nSizeOfStructure
Definition: gdal_alg.h:608
GDALGridNearestNeighborOptions::dfRadius1
double dfRadius1
Definition: gdal_alg.h:592
GDALDitherRGB2PCT
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:147
CPLErr
CPLErr
Error category.
Definition: cpl_error.h:52
GDALCreateGenImgProjTransformer2
void * GDALCreateGenImgProjTransformer2(GDALDatasetH hSrcDS, GDALDatasetH hDstDS, char **papszOptions)
Create image to image transformer.
Definition: gdaltransformer.cpp:1766
GDALTriBarycentricCoefficients::dfMul2Y
double dfMul2Y
dfMul2Y
Definition: gdal_alg.h:708
GDALHasTriangulation
int GDALHasTriangulation(void)
Returns if GDAL is built with Delaunay triangulation support.
Definition: delaunay.c:92
GDALTriBarycentricCoefficients::dfMul2X
double dfMul2X
dfMul2X
Definition: gdal_alg.h:707
GDALGridInverseDistanceToAPowerOptions::nSizeOfStructure
size_t nSizeOfStructure
Definition: gdal_alg.h:475
GDALReprojectionTransform
int GDALReprojectionTransform(void *pTransformArg, int bDstToSrc, int nPointCount, double *x, double *y, double *z, int *panSuccess)
Perform reprojection transformation.
Definition: gdaltransformer.cpp:3384
GDALGridInverseDistanceToAPowerOptions::dfNoDataValue
double dfNoDataValue
Definition: gdal_alg.h:505
GDALGridDataMetricsOptions::dfAngle
double dfAngle
Definition: gdal_alg.h:617
GDALGridInverseDistanceToAPowerNearestNeighborOptions::dfPower
double dfPower
Definition: gdal_alg.h:514
GDALGridInverseDistanceToAPowerOptions::dfAngle
double dfAngle
Definition: gdal_alg.h:492
GDALTriangulationComputeBarycentricCoefficients
int GDALTriangulationComputeBarycentricCoefficients(GDALTriangulation *psDT, const double *padfX, const double *padfY)
Computes barycentric coefficients for each triangles of the triangulation.
Definition: delaunay.c:301
GDALGridMovingAverageOptions::dfAngle
double dfAngle
Definition: gdal_alg.h:559
GDALGridCreate
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:3631
GDALTriangulationCreateDelaunay
GDALTriangulation * GDALTriangulationCreateDelaunay(int nPoints, const double *padfX, const double *padfY)
Computes a Delaunay triangulation of the passed points.
Definition: delaunay.c:115
GGA_NearestNeighbor
@ GGA_NearestNeighbor
Definition: gdal_alg.h:457
GGA_MetricMaximum
@ GGA_MetricMaximum
Definition: gdal_alg.h:459
GDALGridInverseDistanceToAPowerOptions
Inverse distance to a power method control options.
Definition: gdal_alg.h:472
GDALRasterizeLayers
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:1382
GGA_MetricAverageDistance
@ GGA_MetricAverageDistance
Definition: gdal_alg.h:462
GGA_InverseDistanceToAPower
@ GGA_InverseDistanceToAPower
Definition: gdal_alg.h:455
GDALTriBarycentricCoefficients
Triangle barycentric coefficients.
Definition: gdal_alg.h:703
GDALRPCInfoV2
Structure to store Rational Polynomial Coefficients / Rigorous Projection Model.
Definition: gdal.h:1478
OGRLayerH
void * OGRLayerH
Opaque type for a layer (OGRLayer)
Definition: ogr_api.h:592
GDALGridAlgorithm
GDALGridAlgorithm
Gridding Algorithms.
Definition: gdal_alg.h:454
GDALRasterBandH
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:272
GDALGridLinearOptions::nSizeOfStructure
size_t nSizeOfStructure
Definition: gdal_alg.h:643
GDALTriangulation
Triangulation structure.
Definition: gdal_alg.h:714
GDALGridInverseDistanceToAPowerOptions::dfRadius1
double dfRadius1
Definition: gdal_alg.h:485
GDALDatasetH
void * GDALDatasetH
Opaque type used for the C bindings of the C++ GDALDataset class.
Definition: gdal.h:269
GDALGridContextProcess
CPLErr GDALGridContextProcess(GDALGridContext *psContext, double dfXMin, double dfXMax, double dfYMin, double dfYMax, GUInt32 nXSize, GUInt32 nYSize, GDALDataType eType, void *pData, GDALProgressFunc pfnProgress, void *pProgressArg)
Do the gridding of a window of a raster.
Definition: gdalgrid.cpp:3392
GDALTriBarycentricCoefficients::dfCstX
double dfCstX
dfCstX
Definition: gdal_alg.h:709
GDALTriangulationFindFacetBruteForce
int GDALTriangulationFindFacetBruteForce(const GDALTriangulation *psDT, double dfX, double dfY, int *panOutputFacetIdx)
Returns the index of the triangle that contains the point by iterating over all triangles.
Definition: delaunay.c:426
GDALGridInverseDistanceToAPowerNearestNeighborOptions::nMaxPoints
GUInt32 nMaxPoints
Definition: gdal_alg.h:524
GGA_MetricMinimum
@ GGA_MetricMinimum
Definition: gdal_alg.h:458
GUInt32
unsigned int GUInt32
Unsigned int32 type.
Definition: cpl_port.h:195