= Solution
In the solid-modelling convention used here, a <rigid-body transformation> is an orientation-preserving <rigid transformation>, represented by a <proper rotation> and a <translation>. The proposed upper-left block $S$ is <orthogonal> but has
$$
S=\begin{pmatrix}0&1&0\\1&0&0\\0&0&1\end{pmatrix},\qquad S^TS=I,\qquad \det S=-1.
$$
It is a <reflection> in the <plane> $x=y$. It preserves distances, but reverses handedness, so it cannot describe continuous motion of a rigid solid through <proper rotations> and <translations>. Some mathematical uses of <rigid transformation> include this orientation-reversing case; the <determinant> is the distinction relevant to the warning.
In a solid modeller, <triangle> winding and outward <normal vectors> must agree. A <reflection> reverses the winding: for edge <vectors> $a,b$,
$$
(Sa)\times(Sb)=\det(S)S(a\times b)=-S(a\times b).
$$
Simply transforming stored <normal vectors> by $S$ while retaining the original vertex order therefore makes the geometric and stored normals disagree. <Back-face culling>, inside/outside tests and <Phong reflection model> calculations can then use the wrong side. Code assuming a positive oriented volume can likewise interpret the reflected solid incorrectly. A modeller can support <reflections> if it deliberately corrects these orientation conventions.
A suitable alternative rotates by $-\pi/2$ about $z$ and then translates upward by `height`. Writing $h=\texttt{height}$,
$$
\boxed{T=\begin{pmatrix}0&1&0&0\\-1&0&0&h\\0&0&1&0\\0&0&0&1\end{pmatrix},\qquad (x,y,z)\mapsto(y,h-x,z).}
$$
Its <rotation matrix> has determinant $+1$. The source bounds $0\leq x\leq h$, $0\leq y\leq w$, $z=0$ become $0\leq x'\leq w$, $0\leq y'\leq h$, $z'=0$, where $w=\texttt{width}$. A horizontal stripe $y=k\,\texttt{step}$ becomes the vertical stripe $x'=k\,\texttt{step}$, so even the stripe positions from the left edge are preserved. The face's $+z$ <normal vector> is also preserved.
Back to article page