What are spatial reference systems and how to convert between them? What are various ways of creating transformation representation in Boost.Geometry and how to use them to convert between polygons on the surface of a globe and flat surface of a map?
We discuss solutions to those questions highlighting some of the latest developments in Boost Geometry, the library that is currently being used to provide GIS support to MySQL. The implemented solutions allows to define transformations both in compile-time and run-time with known tradeoffs: execution time vs compilation time, run-time flexibility vs compile-time error reporting, etc. Last but not least we discuss similarities and differences between Boost.Geometry and Proj4 libraries.
The presentation is example driven thus emphasizing on the user perspective.