gooderp18绿色标准版
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

141 line
5.9KB

  1. /******************************************************************************
  2. * $Id: gdalgrid.h fcf615cbf6b2e03db17171af0ebba6da4b4a562d 2016-08-05 17:13:05Z Even Rouault $
  3. *
  4. * Project: GDAL Gridding API.
  5. * Purpose: Prototypes, and definitions for of GDAL scattered data gridder.
  6. * Author: Andrey Kiselev, dron@ak4719.spb.edu
  7. *
  8. ******************************************************************************
  9. * Copyright (c) 2007, Andrey Kiselev <dron@ak4719.spb.edu>
  10. * Copyright (c) 2012, Even Rouault <even dot rouault at mines-paris dot org>
  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. #ifndef GDALGRID_H_INCLUDED
  31. #define GDALGRID_H_INCLUDED
  32. /**
  33. * \file gdalgrid.h
  34. *
  35. * GDAL gridder related entry points and definitions.
  36. */
  37. #include "gdal_alg.h"
  38. /*
  39. * GridCreate Algorithm names
  40. */
  41. static const char szAlgNameInvDist[] = "invdist";
  42. static const char szAlgNameInvDistNearestNeighbor[] = "invdistnn";
  43. static const char szAlgNameAverage[] = "average";
  44. static const char szAlgNameNearest[] = "nearest";
  45. static const char szAlgNameMinimum[] = "minimum";
  46. static const char szAlgNameMaximum[] = "maximum";
  47. static const char szAlgNameRange[] = "range";
  48. static const char szAlgNameCount[] = "count";
  49. static const char szAlgNameAverageDistance[] = "average_distance";
  50. static const char szAlgNameAverageDistancePts[] = "average_distance_pts";
  51. static const char szAlgNameLinear[] = "linear";
  52. CPL_C_START
  53. /*! @cond Doxygen_Suppress */
  54. typedef CPLErr (*GDALGridFunction)( const void *, GUInt32,
  55. const double *, const double *,
  56. const double *,
  57. double, double, double *,
  58. void* );
  59. /*! @endcond */
  60. CPLErr
  61. GDALGridInverseDistanceToAPower( const void *, GUInt32,
  62. const double *, const double *,
  63. const double *,
  64. double, double, double *,
  65. void* );
  66. CPLErr
  67. GDALGridInverseDistanceToAPowerNearestNeighbor( const void *, GUInt32,
  68. const double *, const double *,
  69. const double *,
  70. double, double, double *,
  71. void* );
  72. CPLErr
  73. GDALGridInverseDistanceToAPowerNoSearch( const void *, GUInt32,
  74. const double *, const double *,
  75. const double *,
  76. double, double, double *,
  77. void* );
  78. CPLErr
  79. GDALGridMovingAverage( const void *, GUInt32,
  80. const double *, const double *, const double *,
  81. double, double, double *,
  82. void* );
  83. CPLErr
  84. GDALGridNearestNeighbor( const void *, GUInt32,
  85. const double *, const double *, const double *,
  86. double, double, double *,
  87. void* );
  88. CPLErr
  89. GDALGridDataMetricMinimum( const void *, GUInt32,
  90. const double *, const double *, const double *,
  91. double, double, double *,
  92. void* );
  93. CPLErr
  94. GDALGridDataMetricMaximum( const void *, GUInt32,
  95. const double *, const double *, const double *,
  96. double, double, double *,
  97. void* );
  98. CPLErr
  99. GDALGridDataMetricRange( const void *, GUInt32,
  100. const double *, const double *, const double *,
  101. double, double, double *,
  102. void* );
  103. CPLErr
  104. GDALGridDataMetricCount( const void *, GUInt32,
  105. const double *, const double *, const double *,
  106. double, double, double *,
  107. void* );
  108. CPLErr
  109. GDALGridDataMetricAverageDistance( const void *, GUInt32,
  110. const double *, const double *,
  111. const double *, double, double, double *,
  112. void* );
  113. CPLErr
  114. GDALGridDataMetricAverageDistancePts( const void *, GUInt32,
  115. const double *, const double *,
  116. const double *, double, double,
  117. double *,
  118. void* );
  119. CPLErr
  120. GDALGridLinear( const void *, GUInt32,
  121. const double *, const double *,
  122. const double *,
  123. double, double, double *,
  124. void* );
  125. CPLErr CPL_DLL
  126. ParseAlgorithmAndOptions( const char *,
  127. GDALGridAlgorithm *,
  128. void ** );
  129. CPL_C_END
  130. #endif /* GDALGRID_H_INCLUDED */
上海开阖软件有限公司 沪ICP备12045867号-1