specfem::coordinate_systems::transform¶
-
template<typename Target, typename Source, typename Config>
Target specfem::coordinate_systems::transform(const Source &source, const Config &config)¶ Transform coordinates from one system to another.
The return type is the first template parameter (the target coordinate type). Source and config types are deduced from the arguments. Unimplemented source/target/config combinations produce a linker error.
Projection-specific headers (e.g., utm.hpp) declare explicit specializations.
- Template Parameters:
Target – Target coordinate type (e.g., cartesian_coordinates)
Source – Source coordinate type (deduced)
Config – Projection configuration type (deduced)
- Parameters:
source – Input coordinates
config – Projection configuration
- Returns:
Transformed coordinates of type Target
-
template<typename Target, typename Source>
Target specfem::coordinate_systems::transform(const Source &source)¶ Config-free overload for purely mathematical transforms.
- Template Parameters:
Target – Target coordinate type
Source – Source coordinate type (deduced)
- Parameters:
source – Input coordinates
- Returns:
Transformed coordinates of type Target