diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2019-12-06 14:07:27 +0100 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2019-12-06 21:35:15 +0100 |
| commit | 916a92062ffa2f2b59007047fae2176bbb463ca3 (patch) | |
| tree | 0c9af22bd14db3cc0c56d1f5450a6f544c5d4f91 /src/grids.hpp | |
| parent | 6875ef7116b9dab4021afeb06e2b79cd5679743b (diff) | |
| download | PROJ-916a92062ffa2f2b59007047fae2176bbb463ca3.tar.gz PROJ-916a92062ffa2f2b59007047fae2176bbb463ca3.zip | |
Remove hgrids and vgrids member from PJ structure, and store them in hgridshift/vgridshift/deformation structures
Diffstat (limited to 'src/grids.hpp')
| -rw-r--r-- | src/grids.hpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/grids.hpp b/src/grids.hpp index 0c4af09f..975f7716 100644 --- a/src/grids.hpp +++ b/src/grids.hpp @@ -31,10 +31,9 @@ #include <memory> #include <vector> +#include "proj.h" #include "proj/util.hpp" -typedef struct projCtx_t PJ_CONTEXT; - NS_PROJ_START struct ExtentAndRes { @@ -149,6 +148,19 @@ class HorizontalShiftGridSet { const HorizontalShiftGrid *gridAt(double lon, double lat) const; }; +// --------------------------------------------------------------------------- + +typedef std::vector<std::unique_ptr<HorizontalShiftGridSet>> ListOfHGrids; +typedef std::vector<std::unique_ptr<VerticalShiftGridSet>> ListOfVGrids; + +ListOfVGrids proj_vgrid_init(PJ *P, const char *grids); +ListOfHGrids proj_hgrid_init(PJ *P, const char *grids); +double proj_vgrid_value(PJ *P, const ListOfVGrids &, PJ_LP lp, + double vmultiplier); +PJ_LP proj_hgrid_value(PJ *P, const ListOfHGrids &, PJ_LP lp); +PJ_LP proj_hgrid_apply(PJ *P, const ListOfHGrids &, PJ_LP lp, + PJ_DIRECTION direction); + NS_PROJ_END #endif // GRIDS_HPP_INCLUDED |
