5 ms·
Quaternions always irk me because they're overspecified. It shouldn't need more than 3 variables, but somehow there are 4. Argh...
by dheera 3y ago
Quaternions always irk me because they're overspecified. It shouldn't need more than 3 variables, but somehow there are 4. Argh...
- ducttapecrown 3y agoWell, the way quaternions model rotation is by unit quaternions (the unit vectors in 4-space) acting on pure imaginary quaternions ai + bj + ck. The unit quaternions form a 3 dimensional space called the 3-sphere or SU(2). But 3 variables isn't enough parameters to describe the 3-sphere completely (it will always miss at least 1 point). So there's half a fix to your objection!
- deleted 3y ago[deleted]
- tagrun 3y agoQuaternions that represent 3D rotations have exactly 3 parameters, because they are normalized: https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotati... Quaternions that are not normalized do not form a representation of the spin group Spin(3).
- Hydraulix989 3y agoI'm assuming Spin(3) is equivalent to SO(3)?
- tagrun 3y agoIt's a double cover of SO(3) (because q and -q correspond to the same element of SO(3)), and is isomorphic to SU(2)
- deleted 3y ago[deleted]
- Hydraulix989 3y agoOh wow thanks I understand
- kklisura 3y agoYou can always use Euler's angles. Well, maybe not quite _always_...
- dheera 3y agoEuler angles irk me too because latitude rings are parallel to each other but longitude rings aren't, one runs from 0 to 2pi, anther runs from -pi to pi, another runs from 0 to pi, it's a mess. I wish we could find a system with better symmetry and consistency without being overspecified.
- dahart 3y agoThere is no such system. https://en.wikipedia.org/wiki/Hairy_ball_theorem https://en.wikipedia.org/wiki/Hairy_ball_theorem
- dheera 3y agoI mean, one could create an "east pole" and a "west pole" on the Earth and have latitudes behave like longitudes ...
- seanhunter 3y agoYou couuld also have an East pole and a West pole and have great circles for both latitude and longitude. It's not clear eitherr of those would be preferable to the system we have now.
- dahart 3y agoIt took me a minute to understand what you mean, but think for a minute about the disadvantages and inconsistencies of your idea, because this seems like it would be worse in every possible way for Earth coordinates and navigation, aside from the imagined symmetry. Smart people have already considered this idea, and it hasn’t caught on. Why? - First of all, this is minor, but you cannot call them east and west poles, because the east one is only to the east from one side. One the other side, the “east pole” would be to the west of the “west” pole. - Bigger problem but related: traveling along latitudes is no longer traveling north or south, and no longer traveling in great arcs. When you stay in one latitude in your system, you have to know where you are in order to know what compass heading you’re traveling (or vice versa - if you start with a heading, you don’t know whether your longitude or latitude is either increasing or decreasing), it cycles through all direction on the compass without passing the north or south pole. - That means that latitudinal navigation by the stars is no longer an option, and latitudinal travel by the compass (!) is no longer an option either. Your east-west-pole idea would require GPS for sailing. (Might be technically fine today, but should be pretty obvious by now why earth coordinates could never have evolved this way and would be extra bad for pre-computer navigation.) - You lose the property that longitude lines and latitude lines are perpendicular to each other on the surface - except at the two non-poles - the two spots on the axis in between the 4 “poles”. Longitude and latitude in this system are no longer orthogonal, and in some places you can specify ways to travel from one longitude to another via either longitude or latitude, in other places you can’t. - You add two more singularities to your coordinate system. And now you have a 3-dimensional coordinate system, but only 2 axes. Why have 4 poles and not 6? That feels asymmetric somehow. How do you pick the location of these east & west poles (and what would you call them instead of east & west?) - Finally, think about how you’d draw a map. If you get rid of the north-south axis, then which way is up on the map? How do you flatten your coordinate system and put it on a 2d rectangle? Do you want the lat/long lines to look straight and perpendicular, or faithfully represent the local surface while letting lat/long lines curve all over the map? Could you actually do either of those things with this system? The existing solutions aren’t great, but it seems like this would be even worse. There are very good reasons, for example, that nobody uses a 4-pole system for texture-mapping spheres.
- codeguro 3y ago>It shouldn't need more than 3 variables But you do. Think about what it means to describe orientation. You need enough degrees of freedom. When describing rotation of of a sphere projected onto a 2d plane, having two variables (X,Y) isn't enough. Because the sphere could rotate about the axis between the origin and that point. There's an an entire degree of freedom you could describe for a complete rotation about that axis. In the same way, having 3 variables to describe a quaternion rotation is not enough. You again, have an entire degree of freedom you could rotate the quaternion about.
- ajkjk 3y agoThere are four terms: an identity term and three rotations. Q = a + bi + cj + dk = a I + b R_yz + c R_zx + d R_xy = aI + v·R, where v is the axis of rotation. Basically you have an extra degree of freedom because you can multiply the whole thing by a scalar that just scales whatever vector it multiplies. But if you just want to represent rotations, you want it to have unit magnitude, so you ensure that a = cos θ and |v| = sin θ. (or θ/2 on each if you want to use the two-sided qpq^{-1} rotation).
- dahart 3y agoIt’s better than a matrix though. ;) This is like worrying that imaginary numbers are overspecified for representing reals, or that 3D vectors is overspecified for representing normal vectors. Quaternions themselves aren’t overspecified, they are naturally 4-dimensional, but it’s true that 3 components is sufficient for an orientation (unit quat). Using quats for orientation is useful in part precisely because of the added dimension - it’s what makes interpolating quaternion orientations better than other representations - you naturally get the minimal and most direct motion. Interpolating any of 3 component orientations doesn’t work as well. So don’t let it irk you, instead find the utility and beauty in the extra dimension.
- ngcc_hk 3y agoIt is not over but too specialised. Look at other geometry which is more generalised algebraic geometry. Useful for rotation but then what. See my other comment. Matrix and group and algebraic geometry all have its use. Of course q now use in computer game and that is helpful. But specialised.
- creata 3y ago> It shouldn't need more than 3 variables Why do you say that? For example, we could represent any point on the sphere {x^2 + y^2 + z^2 = 1} by two numbers, but for most purposes, three numbers is a lot nicer. And graphics programmers use homogeneous coordinates for everything, mainly because they make translations and perspective projections nicer. (Coincidentally, quaternions are also a kind of homogeneous coordinates, since the space of 3D rotations is (diffeomorphic to) 3D real projective space.) So there are lots of places where adding extra variables makes things cleaner.
- kzrdude 3y agoReal numbers are also overspecifed, there's too many of them, most of them you'll never be able to compute or even conceptualize(!) But they are mathematically useful.
- kzrdude 3y agoIt is explained why in the Stereographic projection (3d) interactive video in the linked article, just before the 5 minute mark.
- gmadsen 3y agoI think you might have some mathematical gaps, they are not overspecified. It is impossible to fully specify 3d rotations as 3 variables.. if you want a nice algebraic structure. R^3 is not isomorphic to SO(3). All the representations have tradeoffs, quarterions are the simplest algebraically.