I really like your thoughts here, but I personally think that Navigation::Compass is too broad...
This module deals exclusively and deliberately with the magnetic *offsets* that don't align with the true north grid, and realistically doesn't have anything to do with a compass, less a fractional angle that deviates from what perhaps a different module may provide.
What this module does, is spits out a directional difference between true north and magnetic north (as well as inclination deviations, but I digress) that can be applied to a compass heading to ensure when traveling, no matter where you are, the direction that is output is the direction you're supposed to be heading regardless of location.
So, a GPS software says you're to head in X.AB direction per grid north, and this software calculates the magnetic deviation from that. It would be up to the end user to combine these two numbers (addition, essentially) to understand the real magnetic direction they need to travel, which may become X.BC for example. Without the original direction (outside of this module's scope), this module doesn't do anything but produce the deviation itself.
|