Transflection

From Projective Geometric Algebra
Jump to navigation Jump to search

A transflection is an improper isometry of Euclidean space consisting of a reflection through a plane and a translation parallel to the same plane. All combinations of a reflection and a translation, even if the original translation vector is not parallel to the original reflection plane, can be formulated as a transflection with respect to some plane.

The specific kind of flector

$$\mathbf G = s_x \mathbf e_{1} + s_y \mathbf e_{2} + s_z \mathbf e_{3} + h_x \mathbf e_{234} + h_y \mathbf e_{314} + h_z \mathbf e_{124} + h_w \mathbf e_{321}$$ ,

in which $$s_w = 0$$, performs a reflection through the plane $$\mathbf h$$ and a translation by twice the displacement vector given by the cross product $$(h_x, h_y, h_z) \times (s_x, s_y, s_z)$$. The exact transflection calculations for points, lines, and planes are shown in the following table.

Type Transformation
Point

$$\mathbf p = p_x \mathbf e_1 + p_y \mathbf e_2 + p_z \mathbf e_3 + p_w \mathbf e_4$$

$$\begin{split}\mathbf G \mathbin{\unicode{x27C7}} \mathbf p \mathbin{\unicode{x27C7}} \smash{\mathbf{\underset{\Large\unicode{x7E}}{G}}} =\, &\left[(2h_y^2 + 2h_z^2 - 1)p_x - 2h_xh_yp_y - 2h_zh_xp_z + 2(h_ys_z - h_zs_y - h_xh_w)p_w\right]\mathbf e_1 \\ +\, &\left[(2h_z^2 + 2h_x^2 - 1)p_y - 2h_yh_zp_z - 2h_xh_yp_x + 2(h_zs_x - h_xs_z - h_yh_w)p_w\right]\mathbf e_2 \\ +\, &\left[(2h_x^2 + 2h_y^2 - 1)p_z - 2h_zh_xp_x - 2h_yh_zp_y + 2(h_xs_y - h_ys_x - h_zh_w)p_w\right]\mathbf e_3 \\ +\, &p_w\mathbf e_4\end{split}$$
Line

$$\begin{split}\mathbf L =\, &v_x \mathbf e_{41} + v_y \mathbf e_{42} + v_z \mathbf e_{43} \\ +\, &m_x \mathbf e_{23} + m_y \mathbf e_{31} + m_z \mathbf e_{12}\end{split}$$

$$\begin{split}\mathbf G \mathbin{\unicode{x27C7}} \mathbf L \mathbin{\unicode{x27C7}} \smash{\mathbf{\underset{\Large\unicode{x7E}}{G}}} =\, &\left[(1 - 2h_y^2 - 2h_z^2)v_x + 2h_xh_yv_y + 2h_zh_xv_z\right]\mathbf e_{41} \\ +\, &\left[(1 - 2h_z^2 - 2h_x^2)v_y + 2h_yh_zv_z + 2h_xh_yv_x\right]\mathbf e_{42} \\ +\, &\left[(1 - 2h_x^2 - 2h_y^2)v_z + 2h_zh_xv_x + 2h_yh_zv_y\right]\mathbf e_{43} \\ +\, &\left[-4(h_ys_y + h_zs_z)v_x + 2(h_xs_y + h_ys_x)v_y + 2(h_xs_z + h_zs_x + h_yh_w)v_z + (2h_y^2 + 2h_z^2 - 1)m_x - 2h_xh_ym_y - 2h_zh_xm_z\right]\mathbf e_{23} \\ +\, &\left[-4(h_zs_z + h_xs_x)v_y + 2(h_ys_z + h_zs_y)v_z + 2(h_ys_x + h_xs_y + h_zh_w)v_x + (2h_z^2 + 2h_x^2 - 1)m_y - 2h_yh_zm_z - 2h_xh_ym_x\right]\mathbf e_{31} \\ +\, &\left[-4(h_xs_x + h_ys_y)v_z + 2(h_zs_x + h_xs_z)v_x + 2(h_zs_y + h_ys_z + h_xh_w)v_y + (2h_x^2 + 2h_y^2 - 1)m_z - 2h_zh_xm_x - 2h_yh_zm_y\right]\mathbf e_{12}\end{split}$$
Plane

$$\mathbf f = f_x \mathbf e_{234} + f_y \mathbf e_{314} + f_z \mathbf e_{124} + f_w \mathbf e_{321}$$

$$\begin{split}\mathbf G \mathbin{\unicode{x27C7}} \mathbf f \mathbin{\unicode{x27C7}} \smash{\mathbf{\underset{\Large\unicode{x7E}}{G}}} =\, &\left[(1 - 2h_y^2 - 2h_z^2)f_x + 2h_xh_yf_y + 2h_zh_xf_z\right]\mathbf e_{234} \\ +\, &\left[(1 - 2h_z^2 - 2h_x^2)f_y + 2h_yh_zf_z + 2h_xh_yf_x\right]\mathbf e_{314} \\ +\, &\left[(1 - 2h_x^2 - 2h_y^2)f_z + 2h_zh_xf_x + 2h_yh_zf_y\right]\mathbf e_{124} \\ +\, &\left[2(h_ys_z - h_zs_y + h_xh_w)f_x + 2(h_zs_x - h_xs_z + h_yh_w)f_y + 2(h_xs_y - h_ys_x + h_zh_w)f_z - f_w\right]\mathbf e_{321}\end{split}$$

By the geometric property, we must have $$s_xh_x + s_yh_y + s_zh_z = 0$$, so the vector $$(s_x, s_y, s_z)$$ and the displacement vector are both parallel to the plane $$\mathbf h$$.

See Also