Planes in 3D Space
alexharri.com
alexharri.com
They'll be scaled such that the point not on a plane will evaluate to 1 when plugged into the equation. You can see this easily because multiplying the planes matrix by the points matrix is just plugging each of the 4 points into each of the 4 plane equations, and you get the identity matrix by definition.
Evaluating a plane equation with a point will give a signed distance from the point to the plane. However, unless the equation is normalized, the distance could be scaled in unusual ways that are less than useful. I think a better way to say this is that a point who's shortest straight line distance to the line is 1 will evaluate to 1, after taking the absolute value.
The LRBni ISA had a whole set of instructions designed to take advantage of signed distance fields defined in both plane equation & barycentric forms. (That's what the bit mask for the lanes was for, in part.)
> > []the[] point not on a plane will evaluate to 1
They mean the vertex (of the tetrahedron). The signed distance function is scaled such that the (single remaining) vertex that isn't at distance 0 (by construction) will instead be at distance 1. So the distance is always scaled in a unique well-defined way (assuming not all four points are coplanar). Whether that way of scaling is useful depends on your use case, of course.
Let's forget we're in finite dimension for a minute, in which case it is not trivial to expect a scalar product on our vector space.
So now we have two things, which are separate: a vector space, and a scalar product.
The vector space says: you can sum my elements, multiply them by a scalar, and I'm stable by linear combinations. That's all it says, really.
Everything else, the geometry, is a consequence of the scalar product. It even defines the norm in the first place, thus the topology. For instance, there's no talking about convergence in a vector space if you don't have a norm. You can't even tell if a sequence converges.
You can define a norm without a scalar product, of course. But then you lose certain notions, like orthogonality.
Anyways, in the case of finite dimension vector spaces, there's always a scalar product at hand, and this is where the geometry comes from, really. The algebra portion of it - being a group with a scalar multiplication - is certainly necessary, but not the one to define geometry.
Instead of a normal and point or constant you get (x,y,z,1) . P = 0. The translation between the two is trivial. If you want a plane spanned by 3 points you just can use the generalized cross product to find P.
One advantage is that you can avoid all the special cases with 3 intersecting planes. There exists exactly 1 point that is on all 3 planes, but as this is in projective coordinates it might lie at infinity.
You can start with a description of how projective matrices work (and how translation and rotation are related to it). After that, best tips I can give are start with 2D until you can't bear to see another cross product. Then get familiar with Cramer's rule and higher dimensions. You'll need sone fluency in linear algebra.
My first practical use of the concept was to rectify photographs where e.g. a building was not quite upright. That might be a good starting point.
This is handy because it puts similar planes nearby in space. For example, it allows you to efficiently cluster objects by coplanarity using a spatial index.
Most of the last sections (all intersections) feel like corner cases, when in PGA they are one and the same.
Edit: nevermind, read in other comments that https://bivector.net/ has a ton of resources.
https://github.com/jeremyong/klein
I've always wanted to find an excuse to rebuild some projects at work around this.
You get transformations too, as easy as M=b/a, where M can be applied to any element in the algebra by taking the square root and applying double-sided multiplication such that b = √M a ~√M, where tilde represents the reverse. These transformations are isomorphic to complex numbers, quaternions, and hypercomplex numbers, and understanding them makes other explanations of these concepts feel inadequate and woefully un-geometric.
Add in logarithms and the exponential map for these transformations and we can perform linear interpolation between states and parametrize transformations.
I'm just a motivated amateur and I can do all of these things. The vector algebra I learned in engineering is useful, and it's often all I need for simple 3-dimensional problems, but it's just shy of something far more powerful and far more general.
A remark: a plane has two (different) unit length normals, which point in exactly opposite directions (one can be obtained by multiplying the other by -1). This determines the positive and negative half-spaces in which each plane splits the 3 dimensional space - the positive and negative direction, which appears for example in the distance calculation on the site.
Fun fact - if you have the coefficients of the equation ax+by+cz+d=0 that represents your plane, you can plug any point (x,y,z) into the expression ax+by+cz+d, and the result will be positive in one half-space, and negative in the other. I think if you divide the values by sqrt(a^2+b^2+c^2), you end up with the distance from the point to the plane. Easy enough to see which half-space is which by plugging in the origin. I.e., if 'd' is positive, the origin is in the positive half.
I know I'm not the only one...
What kinds of industries should I look for to essentially work with programming math problems like this?
Imagine how far human society can go if people dumped the desire for intuition that appeals to anthropocentric sensibilities.
But I guess that's forbidden dark arts and wasting time with trivial pursuits and stuff is the culture to adopt while you're in the modern day Rome equivalent.
y = mx + b is enough for me.
And finally I think even if you don’t care for intuition, it cares for you. I mean, if you play with y=mx+c long enough, you’ll gain an intuition, intuitively. So, with these devices (like visualisers etc.), we’re essentially trying to gain an intuitive understanding deliberately, which I see nothing wrong with. It’s just meta intuition.
Source: https://www.britannica.com/story/how-albert-einstein-develop...
"Level two" ? As if there is a single best way to think and we should all climb towards it? There are advantages and disadvantages to every approach. Find what works in a domain and keep experimenting.
I take it, then, this modern society and civilization wants to specialize in low level technician style work and wait for aliens or angels to come and do the hard work of inventing faster than light travel? You know, intuition is the best scientists and engineers can do and all.
No one is saying we shouldn't also have other kinds of intelligence. You just started bashing one kind of intelligence, and provided quite possibly the absolute worst possible example.
Thought, in the general sense, isn't a solved problem or even all that clearly understood yet. We don't yet have a working mathematical model of it and aren't even sure that will be a thing. At present we know of many kinds of intelligence and we can see then work differently on different problems.
Quantum mechanics is a magical system, to you, only because you're limited and guided by your human biases and preferences. Dumping intuition is the way to go for seeing past the toys and child's play that is modern science, technology, engineering, and mathematics.
The theory of special relativity showed how to transform the physical quantities between inertial reference systems, i.e. systems where Newton's law of inertia is true. The relative velocity between the origins of such systems must be constant and there must be no relative rotational movement between them.
The theory of special relativity was not applicable to non-inertial reference systems, like one that has an accelerated motion relative to an inertial system.
Einstein's quest has been to find the transformation relations for this more general case. Together with the theory of the stimulated emission of radiation (1917), this has been the most original part of Einstein's work, because the previous transformations of the special relativity had been discovered before Einstein, he had just given a new explanation for them.
The only intuition related to general relativity was the guiding principle that whatever transformations will be found they must lead to indistinguishable local behavior of the forces of gravity vs. the forces of inertia.
It's a simple equation: take away intuition and you're left with revolutions in technology and science.