Projections: Difference between revisions
Eric Lengyel (talk | contribs) No edit summary |
Eric Lengyel (talk | contribs) No edit summary |
||
Line 17: | Line 17: | ||
$$(\mathbf g^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf p) \vee \mathbf g = (g_x^2 + g_y^2 + g_z^2)\mathbf p - (g_xp_x + g_yp_y + g_zp_z + g_wp_w)(g_x \mathbf e_1 + g_y \mathbf e_2 + g_z \mathbf e_3)$$ | $$(\mathbf g^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf p) \vee \mathbf g = (g_x^2 + g_y^2 + g_z^2)\mathbf p - (g_xp_x + g_yp_y + g_zp_z + g_wp_w)(g_x \mathbf e_1 + g_y \mathbf e_2 + g_z \mathbf e_3)$$ | ||
| style="padding: 12px;" | [[Image: | | style="padding: 12px;" | [[Image:point_onto_plane.svg|300px]] | ||
|- | |- | ||
| style="padding: 12px;" | Projection of point $$\mathbf p$$ onto line $$\boldsymbol l$$. | | style="padding: 12px;" | Projection of point $$\mathbf p$$ onto line $$\boldsymbol l$$. | ||
$$\begin{split}(\boldsymbol l^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf p) \vee \boldsymbol l =\, &(l_{vx} p_x + l_{vy} p_y + l_{vz} p_z)\mathbf v \\ +\, &(l_{vy} l_{mz} - l_{vz} l_{my})p_w \mathbf e_1 \\ +\, &(l_{vz} l_{mx} - l_{vx} l_{mz})p_w \mathbf e_2 \\ +\, &(l_{vx} l_{my} - l_{vy} l_{mx})p_w \mathbf e_3 \\ +\, &(l_{vx}^2 + l_{vy}^2 + l_{vz}^2)p_w \mathbf e_4\end{split}$$ | $$\begin{split}(\boldsymbol l^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf p) \vee \boldsymbol l =\, &(l_{vx} p_x + l_{vy} p_y + l_{vz} p_z)\mathbf v \\ +\, &(l_{vy} l_{mz} - l_{vz} l_{my})p_w \mathbf e_1 \\ +\, &(l_{vz} l_{mx} - l_{vx} l_{mz})p_w \mathbf e_2 \\ +\, &(l_{vx} l_{my} - l_{vy} l_{mx})p_w \mathbf e_3 \\ +\, &(l_{vx}^2 + l_{vy}^2 + l_{vz}^2)p_w \mathbf e_4\end{split}$$ | ||
| style="padding: 12px;" | [[Image: | | style="padding: 12px;" | [[Image:point_onto_line.svg|300px]] | ||
|- | |- | ||
| style="padding: 12px;" | Projection of line $$\boldsymbol l$$ onto plane $$\mathbf g$$. | | style="padding: 12px;" | Projection of line $$\boldsymbol l$$ onto plane $$\mathbf g$$. | ||
$$\begin{split}(\mathbf g^\unicode["segoe ui symbol"]{x2605} \wedge \boldsymbol l) \vee \mathbf g =\, &(g_x^2 + g_y^2 + g_z^2)(l_{vx} \mathbf e_{41} + l_{vy} \mathbf e_{42} + l_{vz} \mathbf e_{43}) \\ -\, &(g_x l_{vx} + g_y l_{vy} + g_z l_{vz})(g_x \mathbf e_{41} + g_y \mathbf e_{42} + g_z \mathbf e_{43}) \\ +\, &(g_x l_{mx} + g_y l_{my} + g_z l_{mz})(g_x \mathbf e_{23} + g_y \mathbf e_{31} + g_z \mathbf e_{12}) \\ -\, &(g_y l_{vz} - g_z l_{vy})g_w \mathbf e_{23} - (g_z l_{vx} - g_x l_{vz})g_w \mathbf e_{31} - (g_x l_{vy} - g_y l_{vx})g_w \mathbf e_{12}\end{split}$$ | $$\begin{split}(\mathbf g^\unicode["segoe ui symbol"]{x2605} \wedge \boldsymbol l) \vee \mathbf g =\, &(g_x^2 + g_y^2 + g_z^2)(l_{vx} \mathbf e_{41} + l_{vy} \mathbf e_{42} + l_{vz} \mathbf e_{43}) \\ -\, &(g_x l_{vx} + g_y l_{vy} + g_z l_{vz})(g_x \mathbf e_{41} + g_y \mathbf e_{42} + g_z \mathbf e_{43}) \\ +\, &(g_x l_{mx} + g_y l_{my} + g_z l_{mz})(g_x \mathbf e_{23} + g_y \mathbf e_{31} + g_z \mathbf e_{12}) \\ -\, &(g_y l_{vz} - g_z l_{vy})g_w \mathbf e_{23} - (g_z l_{vx} - g_x l_{vz})g_w \mathbf e_{31} - (g_x l_{vy} - g_y l_{vx})g_w \mathbf e_{12}\end{split}$$ | ||
| style="padding: 12px;" | [[Image: | | style="padding: 12px;" | [[Image:line_onto_plane.svg|300px]] | ||
|} | |} | ||
Line 44: | Line 44: | ||
$$(\mathbf p^\unicode["segoe ui symbol"]{x2605} \vee \mathbf g) \wedge \mathbf p = g_xp_w^2 \mathbf e_{423} + g_yp_w^2 \mathbf e_{431} + g_zp_w^2 \mathbf e_{412} - (g_xp_x + g_yp_y + g_zp_z)p_w \mathbf e_{321}$$ | $$(\mathbf p^\unicode["segoe ui symbol"]{x2605} \vee \mathbf g) \wedge \mathbf p = g_xp_w^2 \mathbf e_{423} + g_yp_w^2 \mathbf e_{431} + g_zp_w^2 \mathbf e_{412} - (g_xp_x + g_yp_y + g_zp_z)p_w \mathbf e_{321}$$ | ||
| style="padding: 12px;" | [[Image: | | style="padding: 12px;" | [[Image:plane_onto_point.svg|300px]] | ||
|- | |- | ||
| style="padding: 12px;" | Antiprojection of line $$\boldsymbol l$$ onto point $$\mathbf p$$. | | style="padding: 12px;" | Antiprojection of line $$\boldsymbol l$$ onto point $$\mathbf p$$. | ||
$$\begin{split}(\mathbf p^\unicode["segoe ui symbol"]{x2605} \vee \boldsymbol l) \wedge \mathbf p =\, &l_{vx} p_w^2 \mathbf e_{41} + l_{vy} p_w^2 \mathbf e_{42} + l_{vz} p_w^2 \mathbf e_{43} \\ +\, &(p_y l_{vz} - p_z l_{vy})p_w \mathbf e_{23} + (p_z l_{vx} - p_x l_{vz})p_w \mathbf e_{31} + (p_x l_{vy} - p_y l_{vx})p_w \mathbf e_{12}\end{split}$$ | $$\begin{split}(\mathbf p^\unicode["segoe ui symbol"]{x2605} \vee \boldsymbol l) \wedge \mathbf p =\, &l_{vx} p_w^2 \mathbf e_{41} + l_{vy} p_w^2 \mathbf e_{42} + l_{vz} p_w^2 \mathbf e_{43} \\ +\, &(p_y l_{vz} - p_z l_{vy})p_w \mathbf e_{23} + (p_z l_{vx} - p_x l_{vz})p_w \mathbf e_{31} + (p_x l_{vy} - p_y l_{vx})p_w \mathbf e_{12}\end{split}$$ | ||
| style="padding: 12px;" | [[Image: | | style="padding: 12px;" | [[Image:line_onto_point.svg|300px]] | ||
|- | |- | ||
| style="padding: 12px;" | Antiprojection of plane $$\mathbf g$$ onto line $$\boldsymbol l$$. | | style="padding: 12px;" | Antiprojection of plane $$\mathbf g$$ onto line $$\boldsymbol l$$. | ||
$$\begin{split}(\boldsymbol l^\unicode["segoe ui symbol"]{x2605} \vee \mathbf g) \wedge \boldsymbol l =\, &(l_{vx}^2 + l_{vy}^2 + l_{vz}^2)(g_x \mathbf e_{423} + g_y \mathbf e_{431} + g_z \mathbf e_{412}) \\ -\, &(g_x l_{vx} + g_y l_{vy} + g_z l_{vz})(l_{vx} \mathbf e_{423} + l_{vy} \mathbf e_{431} + l_{vz} \mathbf e_{412}) \\ +\, &(g_x l_{my} l_{vz} - g_x l_{mz} l_{vy} + g_y l_{mz} l_{vx} - g_y l_{mx} l_{vz} + g_z l_{mx} l_{vy} - g_z l_{my} l_{vx}) \mathbf e_{321}\end{split}$$ | $$\begin{split}(\boldsymbol l^\unicode["segoe ui symbol"]{x2605} \vee \mathbf g) \wedge \boldsymbol l =\, &(l_{vx}^2 + l_{vy}^2 + l_{vz}^2)(g_x \mathbf e_{423} + g_y \mathbf e_{431} + g_z \mathbf e_{412}) \\ -\, &(g_x l_{vx} + g_y l_{vy} + g_z l_{vz})(l_{vx} \mathbf e_{423} + l_{vy} \mathbf e_{431} + l_{vz} \mathbf e_{412}) \\ +\, &(g_x l_{my} l_{vz} - g_x l_{mz} l_{vy} + g_y l_{mz} l_{vx} - g_y l_{mx} l_{vz} + g_z l_{mx} l_{vy} - g_z l_{my} l_{vx}) \mathbf e_{321}\end{split}$$ | ||
| style="padding: 12px;" | [[Image: | | style="padding: 12px;" | [[Image:plane_onto_line.svg|300px]] | ||
|} | |} | ||
Revision as of 00:48, 27 August 2023
Projections and antiprojections of one geometric object onto another can be accomplished using the connect and meet operations as described below.
The formulas on this page are general and do not require the geometric objects to be unitized. Most of them become simpler if unitization can be assumed.
Projection
The geometric projection of an object $$\mathbf x$$ onto an object $$\mathbf y$$ is given by the general formula
- $$(\mathbf y^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf x) \vee \mathbf y$$ .
Projections involving points, lines, and planes in the 4D rigid geometric algebra $$\mathcal G_{3,0,1}$$ are shown in the following table.
Antiprojection
The geometric antiprojection of an object $$\mathbf x$$ onto an object $$\mathbf y$$ is given by the general formula
- $$(\mathbf y^\unicode["segoe ui symbol"]{x2605} \vee \mathbf x) \wedge \mathbf y$$ .
Antiprojections involving points, lines, and planes in the 4D rigid geometric algebra $$\mathcal G_{3,0,1}$$ are shown in the following table.
Projection of Origin
When a point $$\mathbf p$$ is projected onto another geometry, the result can be interpreted as the point on that geometry that is closest to the original point $$\mathbf p$$. In the particular case that $$\mathbf p = \mathbf e_4$$, which is the unitized origin, the projection finds the point on a geometry that is closest to the origin. Specific formulas are listed in the following table.
Projection Formula | Description |
---|---|
$$(\mathbf g^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf e_4) \vee \mathbf g = -g_xg_w \mathbf e_1 - g_yg_w \mathbf e_2 - g_zg_w \mathbf e_3 + (g_x^2 + g_y^2 + g_z^2)\mathbf e_4$$ | Point closest to the origin on the plane $$\mathbf g$$. |
$$(\boldsymbol l^\unicode["segoe ui symbol"]{x2605} \wedge \mathbf e_4) \vee \boldsymbol l = (l_{vy} l_{mz} - l_{vz} l_{my})\mathbf e_1 + (l_{vz} l_{mx} - l_{vx} l_{mz})\mathbf e_2 + (l_{vx} l_{my} - l_{vy} l_{mx})\mathbf e_3 + (l_{vx}^2 + l_{vy}^2 + l_{vz}^2)\mathbf e_4$$ | Point closest to the origin on the line $$\boldsymbol l$$. |
Antiprojection of Horizon
Symmetrically to the projection of the origin, the horizon $$\mathbf g = \mathbf e_{321}$$ (the plane at infinity) can be antiprojected onto a point or line using the connect operation with the antidual instead of the dual. This operation finds the plane containing the geometry that is farthest from the origin. Specific formulas are listed in the following table.
Antiprojection Formula | Description |
---|---|
$$(\mathbf p^\unicode["segoe ui symbol"]{x2606} \vee \mathbf e_{321}) \wedge \mathbf p = p_xp_w \mathbf e_{423} + p_yp_w \mathbf e_{431} + p_zp_w \mathbf e_{412} - (p_x^2 + p_y^2 + p_z^2)\mathbf e_{321}$$ | Plane farthest from the origin containing the point $$\mathbf p$$. |
$$(\boldsymbol l^\unicode["segoe ui symbol"]{x2606} \vee \mathbf e_{321}) \wedge \boldsymbol l = (l_{my} l_{vz} - l_{mz} l_{vy})\mathbf e_{423} + (l_{mz} l_{vx} - l_{mx} l_{vz})\mathbf e_{431} + (l_{mx} l_{vy} - l_{my} l_{vx})\mathbf e_{412} + (l_{mx}^2 + l_{my}^2 + l_{mz}^2)\mathbf e_{321}$$ | Plane farthest from the origin containing the line $$\boldsymbol l$$. |