Coverage Report

Created: 2026-01-17 06:39

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/PROJ/src/iso19111/operation/esriparammappings.cpp
Line
Count
Source
1
// This file was generated by scripts/build_esri_projection_mapping.py. DO NOT
2
// EDIT !
3
4
/******************************************************************************
5
 *
6
 * Project:  PROJ
7
 * Purpose:  Mappings between ESRI projection and parameters names and WKT2
8
 * Author:   Even Rouault <even dot rouault at spatialys dot com>
9
 *
10
 ******************************************************************************
11
 * Copyright (c) 2019, Even Rouault <even dot rouault at spatialys dot com>
12
 *
13
 * Permission is hereby granted, free of charge, to any person obtaining a
14
 * copy of this software and associated documentation files (the "Software"),
15
 * to deal in the Software without restriction, including without limitation
16
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
17
 * and/or sell copies of the Software, and to permit persons to whom the
18
 * Software is furnished to do so, subject to the following conditions:
19
 *
20
 * The above copyright notice and this permission notice shall be included
21
 * in all copies or substantial portions of the Software.
22
 *
23
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
24
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
26
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
28
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
29
 * DEALINGS IN THE SOFTWARE.
30
 ****************************************************************************/
31
32
#ifndef FROM_PROJ_CPP
33
#define FROM_PROJ_CPP
34
#endif
35
36
#include "esriparammappings.hpp"
37
#include "proj_constants.h"
38
39
#include "proj/internal/internal.hpp"
40
41
NS_PROJ_START
42
43
using namespace internal;
44
45
namespace operation {
46
47
//! @cond Doxygen_Suppress
48
49
const ESRIParamMapping paramsESRI_Equidistant_Cylindrical[] = {
50
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
51
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
52
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
53
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
54
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
55
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
56
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
57
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
58
    {nullptr, nullptr, 0, "0.0", false}};
59
60
const ESRIParamMapping paramsESRI_Plate_Carree[] = {
61
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
62
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
63
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
64
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
65
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
66
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
67
    {nullptr, nullptr, 0, "0.0", false}};
68
69
static const ESRIParamMapping paramsESRI_Miller_Cylindrical[] = {
70
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
71
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
72
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
73
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
74
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
75
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
76
    {nullptr, nullptr, 0, "0.0", false}};
77
78
static const ESRIParamMapping paramsESRI_Mercator[] = {
79
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
80
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
81
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
82
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
83
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
84
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
85
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
86
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
87
    {nullptr, nullptr, 0, "0.0", false}};
88
89
const ESRIParamMapping paramsESRI_Gauss_Kruger[] = {
90
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
91
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
92
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
93
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
94
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
95
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
96
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
97
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
98
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
99
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
100
    {nullptr, nullptr, 0, "0.0", false}};
101
102
const ESRIParamMapping paramsESRI_Transverse_Mercator[] = {
103
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
104
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
105
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
106
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
107
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
108
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
109
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
110
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
111
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
112
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
113
    {nullptr, nullptr, 0, "0.0", false}};
114
115
static const ESRIParamMapping paramsESRI_Transverse_Mercator_Complex[] = {
116
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
117
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
118
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
119
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
120
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
121
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
122
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
123
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
124
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
125
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
126
    {nullptr, nullptr, 0, "0.0", false}};
127
128
static const ESRIParamMapping paramsESRI_Albers[] = {
129
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_FALSE_ORIGIN,
130
     EPSG_CODE_PARAMETER_EASTING_FALSE_ORIGIN, "0.0", false},
131
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_FALSE_ORIGIN,
132
     EPSG_CODE_PARAMETER_NORTHING_FALSE_ORIGIN, "0.0", false},
133
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_FALSE_ORIGIN,
134
     EPSG_CODE_PARAMETER_LONGITUDE_FALSE_ORIGIN, "0.0", false},
135
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
136
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
137
    {"Standard_Parallel_2", EPSG_NAME_PARAMETER_LATITUDE_2ND_STD_PARALLEL,
138
     EPSG_CODE_PARAMETER_LATITUDE_2ND_STD_PARALLEL, "0.0", false},
139
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_FALSE_ORIGIN,
140
     EPSG_CODE_PARAMETER_LATITUDE_FALSE_ORIGIN, "0.0", false},
141
    {nullptr, nullptr, 0, "0.0", false}};
142
143
static const ESRIParamMapping paramsESRI_Sinusoidal[] = {
144
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
145
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
146
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
147
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
148
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
149
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
150
    {nullptr, nullptr, 0, "0.0", false}};
151
152
static const ESRIParamMapping paramsESRI_Mollweide[] = {
153
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
154
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
155
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
156
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
157
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
158
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
159
    {nullptr, nullptr, 0, "0.0", false}};
160
161
static const ESRIParamMapping paramsESRI_Eckert_I[] = {
162
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
163
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
164
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
165
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
166
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
167
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
168
    {nullptr, nullptr, 0, "0.0", false}};
169
170
static const ESRIParamMapping paramsESRI_Eckert_II[] = {
171
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
172
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
173
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
174
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
175
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
176
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
177
    {nullptr, nullptr, 0, "0.0", false}};
178
179
static const ESRIParamMapping paramsESRI_Eckert_III[] = {
180
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
181
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
182
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
183
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
184
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
185
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
186
    {nullptr, nullptr, 0, "0.0", false}};
187
188
static const ESRIParamMapping paramsESRI_Eckert_IV[] = {
189
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
190
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
191
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
192
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
193
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
194
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
195
    {nullptr, nullptr, 0, "0.0", false}};
196
197
static const ESRIParamMapping paramsESRI_Eckert_V[] = {
198
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
199
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
200
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
201
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
202
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
203
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
204
    {nullptr, nullptr, 0, "0.0", false}};
205
206
static const ESRIParamMapping paramsESRI_Eckert_VI[] = {
207
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
208
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
209
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
210
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
211
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
212
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
213
    {nullptr, nullptr, 0, "0.0", false}};
214
215
static const ESRIParamMapping paramsESRI_Gall_Stereographic[] = {
216
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
217
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
218
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
219
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
220
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
221
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
222
    {nullptr, nullptr, 0, "0.0", false}};
223
224
static const ESRIParamMapping paramsESRI_Winkel_I[] = {
225
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
226
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
227
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
228
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
229
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
230
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
231
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
232
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
233
    {nullptr, nullptr, 0, "0.0", false}};
234
235
static const ESRIParamMapping paramsESRI_Winkel_II[] = {
236
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
237
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
238
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
239
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
240
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
241
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
242
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
243
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
244
    {nullptr, nullptr, 0, "0.0", false}};
245
246
static const ESRIParamMapping paramsESRI_Lambert_Conformal_Conic_alt1[] = {
247
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
248
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
249
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
250
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
251
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
252
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
253
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
254
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
255
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
256
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
257
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
258
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
259
    {nullptr, nullptr, 0, "0.0", false}};
260
static const ESRIParamMapping paramsESRI_Lambert_Conformal_Conic_alt2[] = {
261
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_FALSE_ORIGIN,
262
     EPSG_CODE_PARAMETER_EASTING_FALSE_ORIGIN, "0.0", false},
263
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_FALSE_ORIGIN,
264
     EPSG_CODE_PARAMETER_NORTHING_FALSE_ORIGIN, "0.0", false},
265
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_FALSE_ORIGIN,
266
     EPSG_CODE_PARAMETER_LONGITUDE_FALSE_ORIGIN, "0.0", false},
267
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
268
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
269
    {"Standard_Parallel_2", EPSG_NAME_PARAMETER_LATITUDE_2ND_STD_PARALLEL,
270
     EPSG_CODE_PARAMETER_LATITUDE_2ND_STD_PARALLEL, "0.0", false},
271
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_FALSE_ORIGIN,
272
     EPSG_CODE_PARAMETER_LATITUDE_FALSE_ORIGIN, "0.0", false},
273
    {nullptr, nullptr, 0, "0.0", false}};
274
static const ESRIParamMapping paramsESRI_Lambert_Conformal_Conic_alt3[] = {
275
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_FALSE_ORIGIN,
276
     EPSG_CODE_PARAMETER_EASTING_FALSE_ORIGIN, "0.0", false},
277
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_FALSE_ORIGIN,
278
     EPSG_CODE_PARAMETER_NORTHING_FALSE_ORIGIN, "0.0", false},
279
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_FALSE_ORIGIN,
280
     EPSG_CODE_PARAMETER_LONGITUDE_FALSE_ORIGIN, "0.0", false},
281
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
282
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
283
    {"Standard_Parallel_2", EPSG_NAME_PARAMETER_LATITUDE_2ND_STD_PARALLEL,
284
     EPSG_CODE_PARAMETER_LATITUDE_2ND_STD_PARALLEL, "0.0", false},
285
    {"Scale_Factor", nullptr, 0, "1.0", false},
286
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_FALSE_ORIGIN,
287
     EPSG_CODE_PARAMETER_LATITUDE_FALSE_ORIGIN, "0.0", false},
288
    {nullptr, nullptr, 0, "0.0", false}};
289
static const ESRIParamMapping paramsESRI_Lambert_Conformal_Conic_alt4[] = {
290
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_FALSE_ORIGIN,
291
     EPSG_CODE_PARAMETER_EASTING_FALSE_ORIGIN, "0.0", false},
292
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_FALSE_ORIGIN,
293
     EPSG_CODE_PARAMETER_NORTHING_FALSE_ORIGIN, "0.0", false},
294
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_FALSE_ORIGIN,
295
     EPSG_CODE_PARAMETER_LONGITUDE_FALSE_ORIGIN, "0.0", false},
296
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
297
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
298
    {"Standard_Parallel_2", EPSG_NAME_PARAMETER_LATITUDE_2ND_STD_PARALLEL,
299
     EPSG_CODE_PARAMETER_LATITUDE_2ND_STD_PARALLEL, "0.0", false},
300
    {"Scale_Factor", EPSG_NAME_PARAMETER_ELLIPSOID_SCALE_FACTOR,
301
     EPSG_CODE_PARAMETER_ELLIPSOID_SCALE_FACTOR, "0.0", false},
302
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_FALSE_ORIGIN,
303
     EPSG_CODE_PARAMETER_LATITUDE_FALSE_ORIGIN, "0.0", false},
304
    {nullptr, nullptr, 0, "0.0", false}};
305
306
static const ESRIParamMapping paramsESRI_Polyconic[] = {
307
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
308
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
309
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
310
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
311
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
312
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
313
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
314
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
315
    {nullptr, nullptr, 0, "0.0", false}};
316
317
static const ESRIParamMapping paramsESRI_Quartic_Authalic[] = {
318
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
319
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
320
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
321
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
322
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
323
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
324
    {nullptr, nullptr, 0, "0.0", false}};
325
326
static const ESRIParamMapping paramsESRI_Loximuthal[] = {
327
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
328
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
329
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
330
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
331
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
332
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
333
    {"Central_Parallel", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
334
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
335
    {nullptr, nullptr, 0, "0.0", false}};
336
337
static const ESRIParamMapping paramsESRI_Bonne[] = {
338
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
339
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
340
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
341
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
342
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
343
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
344
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
345
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
346
    {nullptr, nullptr, 0, "0.0", false}};
347
348
static const ESRIParamMapping
349
    paramsESRI_Hotine_Oblique_Mercator_Two_Point_Natural_Origin[] = {
350
        {"False_Easting", EPSG_NAME_PARAMETER_EASTING_PROJECTION_CENTRE,
351
         EPSG_CODE_PARAMETER_EASTING_PROJECTION_CENTRE, "0.0", false},
352
        {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_PROJECTION_CENTRE,
353
         EPSG_CODE_PARAMETER_NORTHING_PROJECTION_CENTRE, "0.0", false},
354
        {"Latitude_Of_1st_Point", "Latitude of 1st point", 0, "0.0", false},
355
        {"Latitude_Of_2nd_Point", "Latitude of 2nd point", 0, "0.0", false},
356
        {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
357
         EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
358
        {"Longitude_Of_1st_Point", "Longitude of 1st point", 0, "0.0", false},
359
        {"Longitude_Of_2nd_Point", "Longitude of 2nd point", 0, "0.0", false},
360
        {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
361
         EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
362
        {nullptr, nullptr, 0, "0.0", false}};
363
364
static const ESRIParamMapping paramsESRI_Stereographic[] = {
365
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
366
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
367
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
368
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
369
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
370
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
371
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
372
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
373
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
374
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
375
    {nullptr, nullptr, 0, "0.0", false}};
376
377
static const ESRIParamMapping paramsESRI_Polar_Stereographic_Variant_A[] = {
378
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
379
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
380
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
381
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
382
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
383
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
384
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
385
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
386
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
387
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
388
    {nullptr, nullptr, 0, "0.0", false}};
389
390
static const ESRIParamMapping paramsESRI_Equidistant_Conic[] = {
391
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_FALSE_ORIGIN,
392
     EPSG_CODE_PARAMETER_EASTING_FALSE_ORIGIN, "0.0", false},
393
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_FALSE_ORIGIN,
394
     EPSG_CODE_PARAMETER_NORTHING_FALSE_ORIGIN, "0.0", false},
395
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_FALSE_ORIGIN,
396
     EPSG_CODE_PARAMETER_LONGITUDE_FALSE_ORIGIN, "0.0", false},
397
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
398
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
399
    {"Standard_Parallel_2", EPSG_NAME_PARAMETER_LATITUDE_2ND_STD_PARALLEL,
400
     EPSG_CODE_PARAMETER_LATITUDE_2ND_STD_PARALLEL, "0.0", false},
401
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_FALSE_ORIGIN,
402
     EPSG_CODE_PARAMETER_LATITUDE_FALSE_ORIGIN, "0.0", false},
403
    {nullptr, nullptr, 0, "0.0", false}};
404
405
static const ESRIParamMapping paramsESRI_Cassini[] = {
406
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
407
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
408
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
409
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
410
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
411
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
412
    {"Scale_Factor", nullptr, 0, "1.0", false},
413
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
414
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
415
    {nullptr, nullptr, 0, "0.0", false}};
416
417
static const ESRIParamMapping paramsESRI_Van_der_Grinten_I[] = {
418
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
419
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
420
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
421
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
422
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
423
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
424
    {nullptr, nullptr, 0, "0.0", false}};
425
426
static const ESRIParamMapping paramsESRI_Robinson[] = {
427
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
428
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
429
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
430
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
431
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
432
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
433
    {nullptr, nullptr, 0, "0.0", false}};
434
435
static const ESRIParamMapping paramsESRI_Two_Point_Equidistant[] = {
436
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
437
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
438
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
439
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
440
    {"Latitude_Of_1st_Point", "Latitude of 1st point", 0, "0.0", false},
441
    {"Latitude_Of_2nd_Point", "Latitude of 2nd point", 0, "0.0", false},
442
    {"Longitude_Of_1st_Point", "Longitude of 1st point", 0, "0.0", false},
443
    {"Longitude_Of_2nd_Point", "Longitude of 2nd point", 0, "0.0", false},
444
    {nullptr, nullptr, 0, "0.0", false}};
445
446
static const ESRIParamMapping paramsESRI_Azimuthal_Equidistant[] = {
447
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
448
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
449
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
450
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
451
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
452
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
453
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
454
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
455
    {nullptr, nullptr, 0, "0.0", false}};
456
457
static const ESRIParamMapping paramsESRI_Lambert_Azimuthal_Equal_Area[] = {
458
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
459
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
460
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
461
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
462
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
463
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
464
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
465
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
466
    {nullptr, nullptr, 0, "0.0", false}};
467
468
static const ESRIParamMapping paramsESRI_Cylindrical_Equal_Area[] = {
469
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
470
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
471
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
472
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
473
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
474
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
475
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
476
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
477
    {nullptr, nullptr, 0, "0.0", false}};
478
479
static const ESRIParamMapping paramsESRI_Behrmann[] = {
480
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
481
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
482
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
483
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
484
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
485
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", true},
486
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
487
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "30.0", true},
488
    {nullptr, nullptr, 0, "0.0", false}};
489
490
static const ESRIParamMapping
491
    paramsESRI_Hotine_Oblique_Mercator_Two_Point_Center[] = {
492
        {"False_Easting", EPSG_NAME_PARAMETER_EASTING_PROJECTION_CENTRE,
493
         EPSG_CODE_PARAMETER_EASTING_PROJECTION_CENTRE, "0.0", false},
494
        {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_PROJECTION_CENTRE,
495
         EPSG_CODE_PARAMETER_NORTHING_PROJECTION_CENTRE, "0.0", false},
496
        {"Latitude_Of_1st_Point", "Latitude of 1st point", 0, "0.0", false},
497
        {"Latitude_Of_2nd_Point", "Latitude of 2nd point", 0, "0.0", false},
498
        {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
499
         EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
500
        {"Longitude_Of_1st_Point", "Longitude of 1st point", 0, "0.0", false},
501
        {"Longitude_Of_2nd_Point", "Longitude of 2nd point", 0, "0.0", false},
502
        {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
503
         EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
504
        {nullptr, nullptr, 0, "0.0", false}};
505
506
const ESRIParamMapping
507
    paramsESRI_Hotine_Oblique_Mercator_Azimuth_Natural_Origin[] = {
508
        {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
509
         EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
510
        {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
511
         EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
512
        {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
513
         EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
514
        {"Azimuth", EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE,
515
         EPSG_CODE_PARAMETER_AZIMUTH_PROJECTION_CENTRE, "0.0", false},
516
        {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
517
         EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, "0.0", false},
518
        {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
519
         EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
520
        {nullptr, nullptr, 0, "0.0", false}};
521
522
const ESRIParamMapping paramsESRI_Hotine_Oblique_Mercator_Azimuth_Center[] = {
523
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_PROJECTION_CENTRE,
524
     EPSG_CODE_PARAMETER_EASTING_PROJECTION_CENTRE, "0.0", false},
525
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_PROJECTION_CENTRE,
526
     EPSG_CODE_PARAMETER_NORTHING_PROJECTION_CENTRE, "0.0", false},
527
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
528
     EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
529
    {"Azimuth", EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE,
530
     EPSG_CODE_PARAMETER_AZIMUTH_PROJECTION_CENTRE, "0.0", false},
531
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
532
     EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, "0.0", false},
533
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
534
     EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
535
    {nullptr, nullptr, 0, "0.0", false}};
536
537
static const ESRIParamMapping paramsESRI_Double_Stereographic[] = {
538
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
539
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
540
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
541
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
542
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
543
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
544
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
545
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
546
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
547
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
548
    {nullptr, nullptr, 0, "0.0", false}};
549
550
static const ESRIParamMapping paramsESRI_Krovak_alt1[] = {
551
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
552
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
553
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
554
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
555
    {"Pseudo_Standard_Parallel_1",
556
     EPSG_NAME_PARAMETER_LATITUDE_PSEUDO_STANDARD_PARALLEL,
557
     EPSG_CODE_PARAMETER_LATITUDE_PSEUDO_STANDARD_PARALLEL, "0.0", false},
558
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PSEUDO_STANDARD_PARALLEL,
559
     EPSG_CODE_PARAMETER_SCALE_FACTOR_PSEUDO_STANDARD_PARALLEL, "0.0", false},
560
    {"Azimuth", EPSG_NAME_PARAMETER_COLATITUDE_CONE_AXIS,
561
     EPSG_CODE_PARAMETER_COLATITUDE_CONE_AXIS, "0.0", false},
562
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_ORIGIN,
563
     EPSG_CODE_PARAMETER_LONGITUDE_OF_ORIGIN, "0.0", false},
564
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
565
     EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
566
    {"X_Scale", nullptr, 0, "1.0", false},
567
    {"Y_Scale", nullptr, 0, "1.0", false},
568
    {"XY_Plane_Rotation", nullptr, 0, "0.0", false},
569
    {nullptr, nullptr, 0, "0.0", false}};
570
static const ESRIParamMapping paramsESRI_Krovak_alt2[] = {
571
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
572
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
573
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
574
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
575
    {"Pseudo_Standard_Parallel_1",
576
     EPSG_NAME_PARAMETER_LATITUDE_PSEUDO_STANDARD_PARALLEL,
577
     EPSG_CODE_PARAMETER_LATITUDE_PSEUDO_STANDARD_PARALLEL, "0.0", false},
578
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PSEUDO_STANDARD_PARALLEL,
579
     EPSG_CODE_PARAMETER_SCALE_FACTOR_PSEUDO_STANDARD_PARALLEL, "0.0", false},
580
    {"Azimuth", EPSG_NAME_PARAMETER_COLATITUDE_CONE_AXIS,
581
     EPSG_CODE_PARAMETER_COLATITUDE_CONE_AXIS, "0.0", false},
582
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_ORIGIN,
583
     EPSG_CODE_PARAMETER_LONGITUDE_OF_ORIGIN, "0.0", false},
584
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
585
     EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
586
    {"X_Scale", nullptr, 0, "-1.0", false},
587
    {"Y_Scale", nullptr, 0, "1.0", false},
588
    {"XY_Plane_Rotation", nullptr, 0, "90.0", false},
589
    {nullptr, nullptr, 0, "0.0", false}};
590
591
static const ESRIParamMapping paramsESRI_New_Zealand_Map_Grid[] = {
592
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
593
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
594
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
595
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
596
    {"Longitude_Of_Origin", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
597
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
598
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
599
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
600
    {nullptr, nullptr, 0, "0.0", false}};
601
602
static const ESRIParamMapping paramsESRI_Orthographic[] = {
603
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
604
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
605
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
606
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
607
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
608
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
609
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
610
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
611
    {nullptr, nullptr, 0, "0.0", false}};
612
613
static const ESRIParamMapping paramsESRI_Local[] = {
614
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_PROJECTION_CENTRE,
615
     EPSG_CODE_PARAMETER_EASTING_PROJECTION_CENTRE, "0.0", false},
616
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_PROJECTION_CENTRE,
617
     EPSG_CODE_PARAMETER_NORTHING_PROJECTION_CENTRE, "0.0", false},
618
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
619
     EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
620
    {"Azimuth", EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE,
621
     EPSG_CODE_PARAMETER_AZIMUTH_PROJECTION_CENTRE, "0.0", false},
622
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
623
     EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, "0.0", false},
624
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
625
     EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
626
    {nullptr, nullptr, 0, "0.0", false}};
627
628
static const ESRIParamMapping paramsESRI_Winkel_Tripel[] = {
629
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
630
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
631
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
632
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
633
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
634
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
635
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
636
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
637
    {nullptr, nullptr, 0, "0.0", false}};
638
639
static const ESRIParamMapping paramsESRI_Aitoff[] = {
640
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
641
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
642
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
643
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
644
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
645
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
646
    {nullptr, nullptr, 0, "0.0", false}};
647
648
static const ESRIParamMapping paramsESRI_Flat_Polar_Quartic[] = {
649
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
650
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
651
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
652
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
653
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
654
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
655
    {nullptr, nullptr, 0, "0.0", false}};
656
657
static const ESRIParamMapping paramsESRI_Craster_Parabolic[] = {
658
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
659
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
660
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
661
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
662
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
663
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
664
    {nullptr, nullptr, 0, "0.0", false}};
665
666
static const ESRIParamMapping paramsESRI_Gnomonic[] = {
667
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
668
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
669
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
670
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
671
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
672
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
673
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
674
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
675
    {nullptr, nullptr, 0, "0.0", false}};
676
677
static const ESRIParamMapping paramsESRI_Times[] = {
678
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
679
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
680
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
681
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
682
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
683
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
684
    {nullptr, nullptr, 0, "0.0", false}};
685
686
static const ESRIParamMapping paramsESRI_Vertical_Near_Side_Perspective[] = {
687
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
688
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
689
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
690
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
691
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_TOPOGRAPHIC_ORIGIN,
692
     EPSG_CODE_PARAMETER_LONGITUDE_TOPOGRAPHIC_ORIGIN, "0.0", false},
693
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_TOPOGRAPHIC_ORIGIN,
694
     EPSG_CODE_PARAMETER_LATITUDE_TOPOGRAPHIC_ORIGIN, "0.0", false},
695
    {"Height", EPSG_NAME_PARAMETER_VIEWPOINT_HEIGHT,
696
     EPSG_CODE_PARAMETER_VIEWPOINT_HEIGHT, "0.0", false},
697
    {nullptr, nullptr, 0, "0.0", false}};
698
699
static const ESRIParamMapping paramsESRI_Stereographic_North_Pole[] = {
700
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
701
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
702
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
703
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
704
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_ORIGIN,
705
     EPSG_CODE_PARAMETER_LONGITUDE_OF_ORIGIN, "0.0", false},
706
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_STD_PARALLEL,
707
     EPSG_CODE_PARAMETER_LATITUDE_STD_PARALLEL, "0.0", false},
708
    {nullptr, nullptr, 0, "0.0", false}};
709
710
static const ESRIParamMapping paramsESRI_Stereographic_South_Pole[] = {
711
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
712
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
713
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
714
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
715
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_ORIGIN,
716
     EPSG_CODE_PARAMETER_LONGITUDE_OF_ORIGIN, "0.0", false},
717
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_STD_PARALLEL,
718
     EPSG_CODE_PARAMETER_LATITUDE_STD_PARALLEL, "0.0", false},
719
    {nullptr, nullptr, 0, "0.0", false}};
720
721
const ESRIParamMapping paramsESRI_Rectified_Skew_Orthomorphic_Natural_Origin[] =
722
    {{"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
723
      EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
724
     {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
725
      EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
726
     {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
727
      EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
728
     {"Azimuth", EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE,
729
      EPSG_CODE_PARAMETER_AZIMUTH_PROJECTION_CENTRE, "0.0", false},
730
     {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
731
      EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, "0.0", false},
732
     {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
733
      EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
734
     {"XY_Plane_Rotation", EPSG_NAME_PARAMETER_ANGLE_RECTIFIED_TO_SKEW_GRID,
735
      EPSG_CODE_PARAMETER_ANGLE_RECTIFIED_TO_SKEW_GRID, "0.0", false},
736
     {nullptr, nullptr, 0, "0.0", false}};
737
738
const ESRIParamMapping paramsESRI_Rectified_Skew_Orthomorphic_Center[] = {
739
    {"False_Easting", EPSG_NAME_PARAMETER_EASTING_PROJECTION_CENTRE,
740
     EPSG_CODE_PARAMETER_EASTING_PROJECTION_CENTRE, "0.0", false},
741
    {"False_Northing", EPSG_NAME_PARAMETER_NORTHING_PROJECTION_CENTRE,
742
     EPSG_CODE_PARAMETER_NORTHING_PROJECTION_CENTRE, "0.0", false},
743
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
744
     EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
745
    {"Azimuth", EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE,
746
     EPSG_CODE_PARAMETER_AZIMUTH_PROJECTION_CENTRE, "0.0", false},
747
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
748
     EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, "0.0", false},
749
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
750
     EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
751
    {"XY_Plane_Rotation", EPSG_NAME_PARAMETER_ANGLE_RECTIFIED_TO_SKEW_GRID,
752
     EPSG_CODE_PARAMETER_ANGLE_RECTIFIED_TO_SKEW_GRID, "0.0", false},
753
    {nullptr, nullptr, 0, "0.0", false}};
754
755
static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt1[] = {
756
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
757
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
758
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
759
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
760
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
761
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
762
    {"Option", nullptr, 0, "0.0", false},
763
    {nullptr, nullptr, 0, "0.0", false}};
764
static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt2[] = {
765
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
766
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
767
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
768
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
769
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
770
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
771
    {"Option", nullptr, 0, "1.0", false},
772
    {nullptr, nullptr, 0, "0.0", false}};
773
static const ESRIParamMapping paramsESRI_Goode_Homolosine_alt3[] = {
774
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
775
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
776
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
777
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
778
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
779
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
780
    {"Option", nullptr, 0, "2.0", false},
781
    {nullptr, nullptr, 0, "0.0", false}};
782
783
static const ESRIParamMapping paramsESRI_Equidistant_Cylindrical_Ellipsoidal[] =
784
    {{"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
785
      EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
786
     {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
787
      EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
788
     {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
789
      EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
790
     {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
791
      EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
792
     {nullptr, nullptr, 0, "0.0", false}};
793
794
static const ESRIParamMapping paramsESRI_Laborde_Oblique_Mercator[] = {
795
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
796
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
797
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
798
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
799
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
800
     EPSG_CODE_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE, "0.0", false},
801
    {"Azimuth", EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE,
802
     EPSG_CODE_PARAMETER_AZIMUTH_PROJECTION_CENTRE, "0.0", false},
803
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
804
     EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, "0.0", false},
805
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE,
806
     EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, "0.0", false},
807
    {nullptr, nullptr, 0, "0.0", false}};
808
809
static const ESRIParamMapping paramsESRI_Gnomonic_Ellipsoidal[] = {
810
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
811
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
812
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
813
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
814
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
815
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
816
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
817
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
818
    {nullptr, nullptr, 0, "0.0", false}};
819
820
static const ESRIParamMapping paramsESRI_Wagner_IV[] = {
821
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
822
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
823
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
824
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
825
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
826
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
827
    {"Latitude_Of_Origin", nullptr, 0, "0.0", false},
828
    {nullptr, nullptr, 0, "0.0", false}};
829
830
static const ESRIParamMapping paramsESRI_Wagner_V[] = {
831
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
832
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
833
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
834
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
835
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
836
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
837
    {nullptr, nullptr, 0, "0.0", false}};
838
839
static const ESRIParamMapping paramsESRI_Wagner_VII[] = {
840
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
841
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
842
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
843
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
844
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
845
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
846
    {nullptr, nullptr, 0, "0.0", false}};
847
848
static const ESRIParamMapping paramsESRI_Natural_Earth[] = {
849
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
850
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
851
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
852
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
853
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
854
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
855
    {nullptr, nullptr, 0, "0.0", false}};
856
857
static const ESRIParamMapping paramsESRI_Natural_Earth_II[] = {
858
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
859
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
860
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
861
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
862
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
863
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
864
    {nullptr, nullptr, 0, "0.0", false}};
865
866
static const ESRIParamMapping paramsESRI_Patterson[] = {
867
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
868
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
869
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
870
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
871
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
872
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
873
    {nullptr, nullptr, 0, "0.0", false}};
874
875
static const ESRIParamMapping paramsESRI_Compact_Miller[] = {
876
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
877
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
878
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
879
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
880
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
881
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
882
    {nullptr, nullptr, 0, "0.0", false}};
883
884
static const ESRIParamMapping paramsESRI_Geostationary_Satellite[] = {
885
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
886
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
887
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
888
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
889
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
890
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
891
    {"Height", "Satellite Height", 0, "0.0", false},
892
    {"Option", nullptr, 0, "0.0", false},
893
    {nullptr, nullptr, 0, "0.0", false}};
894
895
static const ESRIParamMapping paramsESRI_Mercator_Auxiliary_Sphere[] = {
896
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
897
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
898
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
899
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
900
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
901
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
902
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
903
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
904
    {"Auxiliary_Sphere_Type", nullptr, 0, "0.0", false},
905
    {nullptr, nullptr, 0, "0.0", false}};
906
907
static const ESRIParamMapping paramsESRI_Mercator_Variant_A[] = {
908
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
909
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
910
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
911
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
912
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
913
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
914
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
915
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
916
    {nullptr, nullptr, 0, "0.0", false}};
917
918
static const ESRIParamMapping paramsESRI_Mercator_Variant_C[] = {
919
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
920
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
921
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
922
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
923
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
924
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
925
    {"Standard_Parallel_1", EPSG_NAME_PARAMETER_LATITUDE_1ST_STD_PARALLEL,
926
     EPSG_CODE_PARAMETER_LATITUDE_1ST_STD_PARALLEL, "0.0", false},
927
    {"Latitude_Of_Origin", nullptr, 0, "0.0", false},
928
    {nullptr, nullptr, 0, "0.0", false}};
929
930
static const ESRIParamMapping paramsESRI_Transverse_Cylindrical_Equal_Area[] = {
931
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
932
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
933
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
934
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
935
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
936
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
937
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
938
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
939
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
940
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
941
    {nullptr, nullptr, 0, "0.0", false}};
942
943
static const ESRIParamMapping paramsESRI_IGAC_Plano_Cartesiano[] = {
944
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
945
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
946
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
947
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
948
    {"Longitude_Of_Center", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
949
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
950
    {"Latitude_Of_Center", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
951
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
952
    {"Height", EPSG_NAME_PARAMETER_PROJECTION_PLANE_ORIGIN_HEIGHT,
953
     EPSG_CODE_PARAMETER_PROJECTION_PLANE_ORIGIN_HEIGHT, "0.0", false},
954
    {nullptr, nullptr, 0, "0.0", false}};
955
956
static const ESRIParamMapping paramsESRI_Equal_Earth[] = {
957
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
958
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
959
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
960
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
961
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
962
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
963
    {nullptr, nullptr, 0, "0.0", false}};
964
965
static const ESRIParamMapping paramsESRI_Peirce_Quincuncial_alt1[] = {
966
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
967
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
968
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
969
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
970
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
971
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
972
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
973
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
974
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
975
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
976
    {"Option", nullptr, 0, "0.0", false},
977
    {nullptr, nullptr, 0, "0.0", false}};
978
static const ESRIParamMapping paramsESRI_Peirce_Quincuncial_alt2[] = {
979
    {"False_Easting", EPSG_NAME_PARAMETER_FALSE_EASTING,
980
     EPSG_CODE_PARAMETER_FALSE_EASTING, "0.0", false},
981
    {"False_Northing", EPSG_NAME_PARAMETER_FALSE_NORTHING,
982
     EPSG_CODE_PARAMETER_FALSE_NORTHING, "0.0", false},
983
    {"Central_Meridian", EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
984
     EPSG_CODE_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN, "0.0", false},
985
    {"Scale_Factor", EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN,
986
     EPSG_CODE_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, "0.0", false},
987
    {"Latitude_Of_Origin", EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
988
     EPSG_CODE_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN, "0.0", false},
989
    {"Option", nullptr, 0, "1.0", false},
990
    {nullptr, nullptr, 0, "0.0", false}};
991
992
static const ESRIMethodMapping esriMappings[] = {
993
    {"Equidistant_Cylindrical", EPSG_NAME_METHOD_EQUIDISTANT_CYLINDRICAL,
994
     EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL,
995
     paramsESRI_Equidistant_Cylindrical},
996
    {"Plate_Carree", EPSG_NAME_METHOD_EQUIDISTANT_CYLINDRICAL,
997
     EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL, paramsESRI_Plate_Carree},
998
    {"Plate_Carree", EPSG_NAME_METHOD_EQUIDISTANT_CYLINDRICAL_SPHERICAL,
999
     EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL_SPHERICAL,
1000
     paramsESRI_Plate_Carree},
1001
    {"Miller_Cylindrical", PROJ_WKT2_NAME_METHOD_MILLER_CYLINDRICAL, 0,
1002
     paramsESRI_Miller_Cylindrical},
1003
    {"Mercator", EPSG_NAME_METHOD_MERCATOR_VARIANT_B,
1004
     EPSG_CODE_METHOD_MERCATOR_VARIANT_B, paramsESRI_Mercator},
1005
    {"Gauss_Kruger", EPSG_NAME_METHOD_TRANSVERSE_MERCATOR,
1006
     EPSG_CODE_METHOD_TRANSVERSE_MERCATOR, paramsESRI_Gauss_Kruger},
1007
    {"Transverse_Mercator", EPSG_NAME_METHOD_TRANSVERSE_MERCATOR,
1008
     EPSG_CODE_METHOD_TRANSVERSE_MERCATOR, paramsESRI_Transverse_Mercator},
1009
    {"Transverse_Mercator_Complex", EPSG_NAME_METHOD_TRANSVERSE_MERCATOR,
1010
     EPSG_CODE_METHOD_TRANSVERSE_MERCATOR,
1011
     paramsESRI_Transverse_Mercator_Complex},
1012
    {"Albers", EPSG_NAME_METHOD_ALBERS_EQUAL_AREA,
1013
     EPSG_CODE_METHOD_ALBERS_EQUAL_AREA, paramsESRI_Albers},
1014
    {"Sinusoidal", PROJ_WKT2_NAME_METHOD_SINUSOIDAL, 0, paramsESRI_Sinusoidal},
1015
    {"Mollweide", PROJ_WKT2_NAME_METHOD_MOLLWEIDE, 0, paramsESRI_Mollweide},
1016
    {"Eckert_I", PROJ_WKT2_NAME_METHOD_ECKERT_I, 0, paramsESRI_Eckert_I},
1017
    {"Eckert_II", PROJ_WKT2_NAME_METHOD_ECKERT_II, 0, paramsESRI_Eckert_II},
1018
    {"Eckert_III", PROJ_WKT2_NAME_METHOD_ECKERT_III, 0, paramsESRI_Eckert_III},
1019
    {"Eckert_IV", PROJ_WKT2_NAME_METHOD_ECKERT_IV, 0, paramsESRI_Eckert_IV},
1020
    {"Eckert_V", PROJ_WKT2_NAME_METHOD_ECKERT_V, 0, paramsESRI_Eckert_V},
1021
    {"Eckert_VI", PROJ_WKT2_NAME_METHOD_ECKERT_VI, 0, paramsESRI_Eckert_VI},
1022
    {"Gall_Stereographic", PROJ_WKT2_NAME_METHOD_GALL_STEREOGRAPHIC, 0,
1023
     paramsESRI_Gall_Stereographic},
1024
    {"Winkel_I", "Winkel I", 0, paramsESRI_Winkel_I},
1025
    {"Winkel_II", "Winkel II", 0, paramsESRI_Winkel_II},
1026
    {"Lambert_Conformal_Conic", EPSG_NAME_METHOD_LAMBERT_CONIC_CONFORMAL_1SP,
1027
     EPSG_CODE_METHOD_LAMBERT_CONIC_CONFORMAL_1SP,
1028
     paramsESRI_Lambert_Conformal_Conic_alt1},
1029
    {"Lambert_Conformal_Conic", EPSG_NAME_METHOD_LAMBERT_CONIC_CONFORMAL_2SP,
1030
     EPSG_CODE_METHOD_LAMBERT_CONIC_CONFORMAL_2SP,
1031
     paramsESRI_Lambert_Conformal_Conic_alt2},
1032
    {"Lambert_Conformal_Conic", EPSG_NAME_METHOD_LAMBERT_CONIC_CONFORMAL_2SP,
1033
     EPSG_CODE_METHOD_LAMBERT_CONIC_CONFORMAL_2SP,
1034
     paramsESRI_Lambert_Conformal_Conic_alt3},
1035
    {"Lambert_Conformal_Conic",
1036
     EPSG_NAME_METHOD_LAMBERT_CONIC_CONFORMAL_2SP_MICHIGAN,
1037
     EPSG_CODE_METHOD_LAMBERT_CONIC_CONFORMAL_2SP_MICHIGAN,
1038
     paramsESRI_Lambert_Conformal_Conic_alt4},
1039
    {"Polyconic", EPSG_NAME_METHOD_AMERICAN_POLYCONIC,
1040
     EPSG_CODE_METHOD_AMERICAN_POLYCONIC, paramsESRI_Polyconic},
1041
    {"Quartic_Authalic", "Quartic Authalic", 0, paramsESRI_Quartic_Authalic},
1042
    {"Loximuthal", "Loximuthal", 0, paramsESRI_Loximuthal},
1043
    {"Bonne", EPSG_NAME_METHOD_BONNE, EPSG_CODE_METHOD_BONNE, paramsESRI_Bonne},
1044
    {"Hotine_Oblique_Mercator_Two_Point_Natural_Origin",
1045
     PROJ_WKT2_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN, 0,
1046
     paramsESRI_Hotine_Oblique_Mercator_Two_Point_Natural_Origin},
1047
    {"Stereographic", PROJ_WKT2_NAME_METHOD_STEREOGRAPHIC, 0,
1048
     paramsESRI_Stereographic},
1049
    {"Polar_Stereographic_Variant_A",
1050
     EPSG_NAME_METHOD_POLAR_STEREOGRAPHIC_VARIANT_A,
1051
     EPSG_CODE_METHOD_POLAR_STEREOGRAPHIC_VARIANT_A,
1052
     paramsESRI_Polar_Stereographic_Variant_A},
1053
    {"Equidistant_Conic", EPSG_NAME_METHOD_EQUIDISTANT_CONIC,
1054
     EPSG_CODE_METHOD_EQUIDISTANT_CONIC, paramsESRI_Equidistant_Conic},
1055
    {"Cassini", EPSG_NAME_METHOD_CASSINI_SOLDNER,
1056
     EPSG_CODE_METHOD_CASSINI_SOLDNER, paramsESRI_Cassini},
1057
    {"Van_der_Grinten_I", PROJ_WKT2_NAME_METHOD_VAN_DER_GRINTEN, 0,
1058
     paramsESRI_Van_der_Grinten_I},
1059
    {"Robinson", PROJ_WKT2_NAME_METHOD_ROBINSON, 0, paramsESRI_Robinson},
1060
    {"Two_Point_Equidistant", PROJ_WKT2_NAME_METHOD_TWO_POINT_EQUIDISTANT, 0,
1061
     paramsESRI_Two_Point_Equidistant},
1062
    {"Azimuthal_Equidistant", EPSG_NAME_METHOD_AZIMUTHAL_EQUIDISTANT,
1063
     EPSG_CODE_METHOD_AZIMUTHAL_EQUIDISTANT, paramsESRI_Azimuthal_Equidistant},
1064
    {"Lambert_Azimuthal_Equal_Area",
1065
     EPSG_NAME_METHOD_LAMBERT_AZIMUTHAL_EQUAL_AREA,
1066
     EPSG_CODE_METHOD_LAMBERT_AZIMUTHAL_EQUAL_AREA,
1067
     paramsESRI_Lambert_Azimuthal_Equal_Area},
1068
    {"Cylindrical_Equal_Area", EPSG_NAME_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA,
1069
     EPSG_CODE_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA,
1070
     paramsESRI_Cylindrical_Equal_Area},
1071
    {"Behrmann", EPSG_NAME_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA,
1072
     EPSG_CODE_METHOD_LAMBERT_CYLINDRICAL_EQUAL_AREA, paramsESRI_Behrmann},
1073
    {"Hotine_Oblique_Mercator_Two_Point_Center",
1074
     PROJ_WKT2_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN, 0,
1075
     paramsESRI_Hotine_Oblique_Mercator_Two_Point_Center},
1076
    {"Hotine_Oblique_Mercator_Azimuth_Natural_Origin",
1077
     EPSG_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_A,
1078
     EPSG_CODE_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_A,
1079
     paramsESRI_Hotine_Oblique_Mercator_Azimuth_Natural_Origin},
1080
    {"Hotine_Oblique_Mercator_Azimuth_Center",
1081
     EPSG_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_B,
1082
     EPSG_CODE_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_B,
1083
     paramsESRI_Hotine_Oblique_Mercator_Azimuth_Center},
1084
    {"Double_Stereographic", EPSG_NAME_METHOD_OBLIQUE_STEREOGRAPHIC,
1085
     EPSG_CODE_METHOD_OBLIQUE_STEREOGRAPHIC, paramsESRI_Double_Stereographic},
1086
    {"Krovak", EPSG_NAME_METHOD_KROVAK, EPSG_CODE_METHOD_KROVAK,
1087
     paramsESRI_Krovak_alt1},
1088
    {"Krovak", EPSG_NAME_METHOD_KROVAK_NORTH_ORIENTED,
1089
     EPSG_CODE_METHOD_KROVAK_NORTH_ORIENTED, paramsESRI_Krovak_alt2},
1090
    {"New_Zealand_Map_Grid", EPSG_NAME_METHOD_NZMG, EPSG_CODE_METHOD_NZMG,
1091
     paramsESRI_New_Zealand_Map_Grid},
1092
    {"Orthographic", PROJ_WKT2_NAME_ORTHOGRAPHIC_SPHERICAL, 0,
1093
     paramsESRI_Orthographic},
1094
    {"Local", EPSG_NAME_METHOD_LOCAL_ORTHOGRAPHIC,
1095
     EPSG_CODE_METHOD_LOCAL_ORTHOGRAPHIC, paramsESRI_Local},
1096
    {"Winkel_Tripel", "Winkel Tripel", 0, paramsESRI_Winkel_Tripel},
1097
    {"Aitoff", "Aitoff", 0, paramsESRI_Aitoff},
1098
    {"Flat_Polar_Quartic", PROJ_WKT2_NAME_METHOD_FLAT_POLAR_QUARTIC, 0,
1099
     paramsESRI_Flat_Polar_Quartic},
1100
    {"Craster_Parabolic", "Craster Parabolic", 0, paramsESRI_Craster_Parabolic},
1101
    {"Gnomonic", PROJ_WKT2_NAME_METHOD_GNOMONIC, 0, paramsESRI_Gnomonic},
1102
    {"Times", PROJ_WKT2_NAME_METHOD_TIMES, 0, paramsESRI_Times},
1103
    {"Vertical_Near_Side_Perspective", EPSG_NAME_METHOD_VERTICAL_PERSPECTIVE,
1104
     EPSG_CODE_METHOD_VERTICAL_PERSPECTIVE,
1105
     paramsESRI_Vertical_Near_Side_Perspective},
1106
    {"Stereographic_North_Pole", EPSG_NAME_METHOD_POLAR_STEREOGRAPHIC_VARIANT_B,
1107
     EPSG_CODE_METHOD_POLAR_STEREOGRAPHIC_VARIANT_B,
1108
     paramsESRI_Stereographic_North_Pole},
1109
    {"Stereographic_South_Pole", EPSG_NAME_METHOD_POLAR_STEREOGRAPHIC_VARIANT_B,
1110
     EPSG_CODE_METHOD_POLAR_STEREOGRAPHIC_VARIANT_B,
1111
     paramsESRI_Stereographic_South_Pole},
1112
    {"Rectified_Skew_Orthomorphic_Natural_Origin",
1113
     EPSG_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_A,
1114
     EPSG_CODE_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_A,
1115
     paramsESRI_Rectified_Skew_Orthomorphic_Natural_Origin},
1116
    {"Rectified_Skew_Orthomorphic_Center",
1117
     EPSG_NAME_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_B,
1118
     EPSG_CODE_METHOD_HOTINE_OBLIQUE_MERCATOR_VARIANT_B,
1119
     paramsESRI_Rectified_Skew_Orthomorphic_Center},
1120
    {"Goode_Homolosine", PROJ_WKT2_NAME_METHOD_GOODE_HOMOLOSINE, 0,
1121
     paramsESRI_Goode_Homolosine_alt1},
1122
    {"Goode_Homolosine", PROJ_WKT2_NAME_METHOD_INTERRUPTED_GOODE_HOMOLOSINE, 0,
1123
     paramsESRI_Goode_Homolosine_alt2},
1124
    {"Goode_Homolosine",
1125
     PROJ_WKT2_NAME_METHOD_INTERRUPTED_GOODE_HOMOLOSINE_OCEAN, 0,
1126
     paramsESRI_Goode_Homolosine_alt3},
1127
    {"Equidistant_Cylindrical_Ellipsoidal",
1128
     EPSG_NAME_METHOD_EQUIDISTANT_CYLINDRICAL,
1129
     EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL,
1130
     paramsESRI_Equidistant_Cylindrical_Ellipsoidal},
1131
    {"Laborde_Oblique_Mercator", EPSG_NAME_METHOD_LABORDE_OBLIQUE_MERCATOR,
1132
     EPSG_CODE_METHOD_LABORDE_OBLIQUE_MERCATOR,
1133
     paramsESRI_Laborde_Oblique_Mercator},
1134
    {"Gnomonic_Ellipsoidal", PROJ_WKT2_NAME_METHOD_GNOMONIC, 0,
1135
     paramsESRI_Gnomonic_Ellipsoidal},
1136
    {"Wagner_IV", PROJ_WKT2_NAME_METHOD_WAGNER_IV, 0, paramsESRI_Wagner_IV},
1137
    {"Wagner_V", PROJ_WKT2_NAME_METHOD_WAGNER_V, 0, paramsESRI_Wagner_V},
1138
    {"Wagner_VII", PROJ_WKT2_NAME_METHOD_WAGNER_VII, 0, paramsESRI_Wagner_VII},
1139
    {"Natural_Earth", PROJ_WKT2_NAME_METHOD_NATURAL_EARTH, 0,
1140
     paramsESRI_Natural_Earth},
1141
    {"Natural_Earth_II", PROJ_WKT2_NAME_METHOD_NATURAL_EARTH_II, 0,
1142
     paramsESRI_Natural_Earth_II},
1143
    {"Patterson", PROJ_WKT2_NAME_METHOD_PATTERSON, 0, paramsESRI_Patterson},
1144
    {"Compact_Miller", PROJ_WKT2_NAME_METHOD_COMPACT_MILLER, 0,
1145
     paramsESRI_Compact_Miller},
1146
    {"Geostationary_Satellite",
1147
     PROJ_WKT2_NAME_METHOD_GEOSTATIONARY_SATELLITE_SWEEP_Y, 0,
1148
     paramsESRI_Geostationary_Satellite},
1149
    {"Mercator_Auxiliary_Sphere",
1150
     EPSG_NAME_METHOD_POPULAR_VISUALISATION_PSEUDO_MERCATOR,
1151
     EPSG_CODE_METHOD_POPULAR_VISUALISATION_PSEUDO_MERCATOR,
1152
     paramsESRI_Mercator_Auxiliary_Sphere},
1153
    {"Mercator_Variant_A", EPSG_NAME_METHOD_MERCATOR_VARIANT_A,
1154
     EPSG_CODE_METHOD_MERCATOR_VARIANT_A, paramsESRI_Mercator_Variant_A},
1155
    {"Mercator_Variant_C", EPSG_NAME_METHOD_MERCATOR_VARIANT_B,
1156
     EPSG_CODE_METHOD_MERCATOR_VARIANT_B, paramsESRI_Mercator_Variant_C},
1157
    {"Transverse_Cylindrical_Equal_Area", "Transverse Cylindrical Equal Area",
1158
     0, paramsESRI_Transverse_Cylindrical_Equal_Area},
1159
    {"IGAC_Plano_Cartesiano", EPSG_NAME_METHOD_COLOMBIA_URBAN,
1160
     EPSG_CODE_METHOD_COLOMBIA_URBAN, paramsESRI_IGAC_Plano_Cartesiano},
1161
    {"Equal_Earth", EPSG_NAME_METHOD_EQUAL_EARTH, EPSG_CODE_METHOD_EQUAL_EARTH,
1162
     paramsESRI_Equal_Earth},
1163
    {"Peirce_Quincuncial", PROJ_WKT2_NAME_METHOD_PEIRCE_QUINCUNCIAL_SQUARE, 0,
1164
     paramsESRI_Peirce_Quincuncial_alt1},
1165
    {"Peirce_Quincuncial", PROJ_WKT2_NAME_METHOD_PEIRCE_QUINCUNCIAL_DIAMOND, 0,
1166
     paramsESRI_Peirce_Quincuncial_alt2},
1167
};
1168
1169
// ---------------------------------------------------------------------------
1170
1171
0
const ESRIMethodMapping *getEsriMappings(size_t &nElts) {
1172
0
    nElts = sizeof(esriMappings) / sizeof(esriMappings[0]);
1173
0
    return esriMappings;
1174
0
}
1175
1176
// ---------------------------------------------------------------------------
1177
1178
std::vector<const ESRIMethodMapping *>
1179
822
getMappingsFromESRI(const std::string &esri_name) {
1180
822
    std::vector<const ESRIMethodMapping *> res;
1181
67.4k
    for (const auto &mapping : esriMappings) {
1182
67.4k
        if (ci_equal(esri_name, mapping.esri_name)) {
1183
673
            res.push_back(&mapping);
1184
673
        }
1185
67.4k
    }
1186
822
    return res;
1187
822
}
1188
1189
//! @endcond
1190
1191
// ---------------------------------------------------------------------------
1192
1193
} // namespace operation
1194
NS_PROJ_END