Geographic coordinates are transparently supported (ie converted to/from lat/lon as well as between cartesian coordinate systems) through the Coords class. Therefore, coordinate system conversions are quite easy, as illustrated by the example below.
Adding support for another cartesian coordinate system is simple, once you have the official conversion wgs84 to/from this system.
National cartesian coordinate systems often come with an official conversion formula to and from WGS84 lat/lon. This could be found by the national geographic authority. Then implement two private methods into the Coords class (replacing the "XXX" by an abbreviation for the coordinate system you are implementing):
It is highly recommended to add the link to the official conversion specification in the doxygen comments of these two methods.
Once these two methods have been implemented, they need to be registered for the user to be able to use them. This is done by following these steps:
Please update and expand the doxygen documentation at the beginning of the Coords.cc file in order to specify the coordinate system keywords that has been used (ie the the coordinate system abbreviation). Feel free to add links to official documentation about this coordinate system. Please also properly document the conversion (with links to the official specification) in the conversion implementations.
Try to set a Coords object constructed with the chosen keywords to a set of Easting/Northing and then retrieve the lat/lon as well as the opposite. Make sure that for various points, including points close to the boundaries of the coordinate system definition, the conversion remains correct. Often the official specifications come with a set of test coordinates that you can use. Then try to set the coordinate system by EPSG code and make sure Easting/Northing to and from WGS84 conversions work properly.