3 ms·
I did a little digging in curiosity about the Plimpton 322 story, and discovered that essentially Wildberger was already a proponent of rational trigonometry an
by svachalek 9y ago
I did a little digging in curiosity about the Plimpton 322 story, and discovered that essentially Wildberger was already a proponent of rational trigonometry and then figured out that this tablet was based on it, which is the opposite order the news stories led me to believe.
But anyway the aspect of it that has me curious is whether it benefits 3D graphics or anything else that depends on lots of triangle computations. I found a paper that concludes it's more easily computed, but it seems to make some pretty simplistic assumptions (cost of sqrt = cost of sin, all algebraic costs = 0).
- noobermin 9y agoHow curious! I knew about rational trigonometry, and I was thinking the modern proponent of that idea would be so mad others are capitalizing on it without citing him...it so turns out he was a co-author, fancy that.
- jacobolus 9y agoUsing base 60 makes no sense for computer graphics. However, doing everything possible in terms of vectors and never using angle measure unless interfacing with humans or legacy software is a generally good idea. If you want to represent a rotation use a complex number of unit magnitude. If you want to represent a 3-dimensional rotation use a unit quaternion. If you want to store one of these using only 1 or 3 parameters, respectively, take the stereographic projection and optionally reduce the precision of your floating point numbers afterward. This doesn’t imply turning everything into Wildberger’s rational trigonometry per se, but if you need metrical comparisons then you end up developing/using some of the same machinery.
- vog 9y ago> doing everything possible in terms of vectors and never using angle measure unless interfacing with humans or legacy software is a generally good idea More generally, use scalar products instead of angles. Calculations based on scalar products are faster, numerically more accurate, simpler, and easier chained. Convert from/to angles only for input/output. Even more generally, always use sane representations internally, and press cumbersome stuff to the borders of your system. Examples: - You should use unicode strings internally, and decode/encode only on I/O. - You should use simple, native data structures internally, and deal with XML representations only at the boundaries. - And so on.