MCPcopy Create free account
hub / github.com/OSGeo/PROJ / buildSetEquivalentParameters

Function buildSetEquivalentParameters

src/iso19111/operation/oputils.cpp:365–418  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

363}
364
365static std::set<std::string> buildSetEquivalentParameters() {
366
367 std::set<std::string> set;
368
369 const char *const listOfEquivalentParameterNames[][7] = {
370 {"latitude_of_point_1", "Latitude_Of_1st_Point", nullptr},
371 {"longitude_of_point_1", "Longitude_Of_1st_Point", nullptr},
372 {"latitude_of_point_2", "Latitude_Of_2nd_Point", nullptr},
373 {"longitude_of_point_2", "Longitude_Of_2nd_Point", nullptr},
374
375 {"satellite_height", "height", nullptr},
376
377 {EPSG_NAME_PARAMETER_FALSE_EASTING,
378 EPSG_NAME_PARAMETER_EASTING_FALSE_ORIGIN,
379 EPSG_NAME_PARAMETER_EASTING_PROJECTION_CENTRE, nullptr},
380
381 {EPSG_NAME_PARAMETER_FALSE_NORTHING,
382 EPSG_NAME_PARAMETER_NORTHING_FALSE_ORIGIN,
383 EPSG_NAME_PARAMETER_NORTHING_PROJECTION_CENTRE, nullptr},
384
385 {EPSG_NAME_PARAMETER_SCALE_FACTOR_AT_NATURAL_ORIGIN, WKT1_SCALE_FACTOR,
386 EPSG_NAME_PARAMETER_SCALE_FACTOR_INITIAL_LINE,
387 EPSG_NAME_PARAMETER_SCALE_FACTOR_PROJECTION_CENTRE,
388 EPSG_NAME_PARAMETER_SCALE_FACTOR_PSEUDO_STANDARD_PARALLEL, nullptr},
389
390 {WKT1_LATITUDE_OF_ORIGIN, WKT1_LATITUDE_OF_CENTER,
391 EPSG_NAME_PARAMETER_LATITUDE_OF_NATURAL_ORIGIN,
392 EPSG_NAME_PARAMETER_LATITUDE_FALSE_ORIGIN,
393 EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE, "Central_Parallel",
394 nullptr},
395
396 {WKT1_CENTRAL_MERIDIAN, WKT1_LONGITUDE_OF_CENTER,
397 EPSG_NAME_PARAMETER_LONGITUDE_OF_NATURAL_ORIGIN,
398 EPSG_NAME_PARAMETER_LONGITUDE_FALSE_ORIGIN,
399 EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE,
400 EPSG_NAME_PARAMETER_LONGITUDE_OF_ORIGIN, nullptr},
401
402 {EPSG_NAME_PARAMETER_AZIMUTH_INITIAL_LINE,
403 EPSG_NAME_PARAMETER_AZIMUTH_PROJECTION_CENTRE, nullptr},
404
405 {"pseudo_standard_parallel_1", WKT1_STANDARD_PARALLEL_1, nullptr},
406 };
407
408 for (const auto &paramList : listOfEquivalentParameterNames) {
409 for (size_t i = 0; paramList[i]; i++) {
410 auto a = metadata::Identifier::canonicalizeName(paramList[i]);
411 for (size_t j = i + 1; paramList[j]; j++) {
412 auto b = metadata::Identifier::canonicalizeName(paramList[j]);
413 set.insert(createEntryEqParam(a, b));
414 }
415 }
416 }
417 return set;
418}
419
420bool areEquivalentParameters(const std::string &a, const std::string &b) {
421

Callers 1

areEquivalentParametersFunction · 0.85

Calls 2

createEntryEqParamFunction · 0.85
insertMethod · 0.45

Tested by

no test coverage detected