Line
In the 4D rigid geometric algebra $$\mathcal G_{3,0,1}$$, a line $$\boldsymbol l$$ is a bivector having the general form
- $$\boldsymbol l = l_{vx} \mathbf e_{41} + l_{vy} \mathbf e_{42} + l_{vz} \mathbf e_{43} + l_{mx} \mathbf e_{23} + l_{my} \mathbf e_{31} + l_{mz} \mathbf e_{12}$$ .
The components $$(l_{vx}, l_{vy}, l_{vz})$$ correspond to the line's direction, and the components $$(l_{mx}, l_{my}, l_{mz})$$ correspond to the line's moment. (These are equivalent to the six Plücker coordinates of a line.) To satisfy the geometric constraint, the components of $$\boldsymbol l$$ must satisfy the equation
- $$l_{vx} l_{mx} + l_{vy} l_{my} + l_{vz} l_{mz} = 0$$ ,
which means that, when regarded as vectors, the direction and moment of a line are perpendicular.
The bulk of a line is given by its $$mx$$, $$my$$, and $$mz$$ coordinates, and the weight of a line is given by its $$vx$$, $$vy$$, and $$vz$$ coordinates. A line is unitized when $$l_{vx}^2 + l_{vy}^2 + l_{vz}^2 = 1$$. The attitude of a line is the vector $$l_{vx} \mathbf e_1 + l_{vy} \mathbf e_2 + l_{vz} \mathbf e_3$$ corresponding to its direction.
When used as an operator in the sandwich with the geometric antiproduct, a line is a specific kind of motor that performs a 180-degree rotation about itself.
Lines at Infinity
If the weight of a line is zero (i.e., its $$vx$$, $$vy$$, and $$vz$$ coordinates are all zero), then the line is contained in the horizon infinitely far away in all directions perpendicular to its moment $$\mathbf m = (l_{mx}, l_{my}, l_{mz})$$, regarded as a vector, as shown in Figure 2. Such a line cannot be unitized, but it can be normalized by dividing by its bulk norm.
When the moment $$\mathbf m$$ is regarded as a bivector, a line at infinity can be thought of as all directions $$\mathbf v$$ parallel to the moment, which satisfy $$\mathbf m \wedge \mathbf v = 0$$.
Skew Lines
Given two skew lines $$\boldsymbol l$$ and $$\mathbf k$$, as shown in Figure 3, a third line $$\mathbf j$$ that contains a point on each of the lines $$\boldsymbol l$$ and $$\mathbf k$$ is given by the axis of the motor $$\boldsymbol l \mathbin{\unicode{x27C7}} \smash{\mathbf{\underset{\Large\unicode{x7E}}{k}}}$$. The line $$\mathbf j$$ can be found by first calculating the line
- $$\mathbf i = [\boldsymbol l, \mathbf k]^{\Large\unicode{x27C7}}_- = (l_{vy} k_{vz} - l_{vz} k_{vy})\mathbf e_{41} + (l_{vz} k_{vx} - l_{vx} k_{vz})\mathbf e_{42} + (l_{vx} k_{vy} - l_{vy} k_{vx})\mathbf e_{43} + (l_{vy} k_{mz} - l_{vz} k_{my} + l_{my} k_{vz} - l_{mz} k_{vy})\mathbf e_{23} + (l_{vz} k_{mx} - l_{vx} k_{mz} + l_{mz} k_{vx} - l_{mx} k_{vz})\mathbf e_{31} + (l_{vx} k_{my} - l_{vy} k_{mx} + l_{mx} k_{vy} - l_{my} k_{vx})\mathbf e_{12}$$
and then orthogonalizing its direction and moment to obtain
- $$\mathbf j = i_{vx} \mathbf e_{41} + i_{vy} \mathbf e_{42} + i_{vz} \mathbf e_{43} + (i_{mx} - s i_{vx})\mathbf e_{23} + (i_{my} - s i_{vy})\mathbf e_{31} + (i_{mz} - s i_{vz})\mathbf e_{12}$$ ,
where
- $$s = \dfrac{i_{vx}i_{mx} + i_{vy}i_{my} + i_{vz}i_{mz}}{i_{vx}^2 + i_{vy}^2 + i_{vz}^2}$$ .
If $$l_{vx}k_{vx} + l_{vy}k_{vy} + l_{vz}k_{vz} = 0$$, meaning that the directions of the two lines are perpendicular, then $$\mathbf j = \mathbf i$$.
The direction of $$\mathbf j$$ is perpendicular to the directions of $$\boldsymbol l$$ and $$\mathbf k$$, and it contains the closest points of approach between $$\boldsymbol l$$ and $$\mathbf k$$. The points themselves can then be found by calculating $$(\mathbf j \wedge \operatorname{att}(\boldsymbol l)) \vee \mathbf k$$ and $$(\mathbf j \wedge \operatorname{att}(\mathbf k)) \vee \boldsymbol l$$, where $$\operatorname{att}$$ is the attitude function.
In the Book
- Homogeneous lines are discussed in Section 2.4.2.