I added a rating system! All maps have a rating 0-4, now. Since this
rating is completely subjective, I doubt I'll put it into the main
program. I haven't actually decided what to do with it yet, but I like
having it. The criteria I used were fairly straightforward:
0 - Terrible. Do not use. There are objectively better alternatives. I
hate it.
1 - Bad. Could be worse, but using this projection reflects a lack of
thought or understanding.
2 - Okay. I can't fault anyone for using it. It's not the best, but it
is fine. Good for at least some situations.
3 - Good. People who use this know what's up.
4 - Fantastic. One of the best. There can only be four.
These ratings reflect how the projection is most often used, not
necessarily how it ought to be used.
I also now measure average distortion in Decibels, because I like the
zeroth order of magnitude better than the negative first order of
magnitude.
I changed up a few map projections to look more like they did when they were first published. I added a triangular version of Lee, I changed AuthaGraph to have the aspect built in, and I fixed all of the ones without aspects to actually not have aspects (there was a bug there that I fixed).
I also cleaned up SVGMap a bit to try to make it work better with this great Tissot's indicatrices image I found, but the image was too messy, and I couldn't make it work.
A Strebe projection!
I implemented the Strebe 1995 projection, and Eckert IV, since it was a prerequisite. What a weird map!
I also reorganised my other maps by adding more specific geometry types, putting the full list in alphabetical order, and standardising every instance of Newton-Raphson approximation to actually call NumericalAnalysis.newtonRaphsonApproximation().
I altered the SVG saving code so that it actually properly fits the map to the artboard. While I was at it, I altered a few .project() methods that were returning NaN, which was messing up the SVG.
I added an option to remove the unnecessary stuff on the side of the map. It makes some pretty cool looking stuff. Not as good stuff, in my opinion, since it implies that the world has hard edges, but it works real well for the map analyser, where it prevents the distorted margins from distracting from the less distorted part that actually matters.