This is an essential tool to teach, not only map projections, but the more general concept of Riemannian metrics!
See also the Dupin indicatrix, whose wikipedia article unfortunately lacks good figures: https://en.wikipedia.org/wiki/Dupin_indicatrix (it makes a funny appeal to "just imagine them"...)
> Named cells look like, and function almost like, assignment expressions in vanilla JavaScript
> But sometimes you want statements, such as for loops. For that you'll need curly braces, and a return statement to give the cell a value. Think of a cell as a function, except the function has no arguments
So `x = { let y = 5; return y }` declares named cell x with value from the return value of that function-like code block. So basically that should be same as `x = 5`, which also is named cell declaration and not JS variable assignment.
16 comments
[ 2.9 ms ] story [ 46.2 ms ] threadThis is an essential tool to teach, not only map projections, but the more general concept of Riemannian metrics!
See also the Dupin indicatrix, whose wikipedia article unfortunately lacks good figures: https://en.wikipedia.org/wiki/Dupin_indicatrix (it makes a funny appeal to "just imagine them"...)
https://xkcd.com/977/
Which itself is a combination of Hammer & Spielmann, centered on Antarctica.
https://www.geographyrealm.com/the-spilhaus-endless-ocean-ma...
It doesn't have Euler Spiral[1] either, but maybe that's expecting too much.
[1] http://andersk.mit.edu/euler-spiral-projection/
AKA the "apple peel" projection.
But like someone else said, a very interesting read.
[1] https://observablehq.com/documentation/cells/javascript#nami...
[2] https://observablehq.com/documentation/cells/javascript#expr...
> But sometimes you want statements, such as for loops. For that you'll need curly braces, and a return statement to give the cell a value. Think of a cell as a function, except the function has no arguments
So `x = { let y = 5; return y }` declares named cell x with value from the return value of that function-like code block. So basically that should be same as `x = 5`, which also is named cell declaration and not JS variable assignment.
https://observablehq.com/@d3/projection-comparison