Derivation of the 4x4 Matrix Transformation
for the Reflection of a 4D Point/Vector about a Plane
Kenneth E. Hoff III
7/13/98

Given a plane defined by the 4D vector [ A B C D ] where the implicit form of the plane is defined as Ax+By+Cz+D=0 for all points (x,y,z) on the plane), we wish to reflect the point (x,y,z) about the plane.

NOTE: the plane must be normalized; the normal to the plane is the vector (A,B,C) of unit length, and D is the negative distance from the origin to the plane along the normal direction. We can easily normalize an arbitrary plane by dividing each coefficient of the plane equation by the length of the vector (A,B,C).

To find the reflected point (x',y',z'), we proceed as follows:

1) get the distance between the point and the plane. We can do this by simply evaluating the plane equation for the given point:

2) we will shift the point to the reflected position by simply adding a translation vector equal to the normal vector scaled by two times the negative distance between the point and the plane: It is important to note that the plane's normal (A,B,C) need not be normalized.

To derive a 4x4 matrix transformation we will need to expand this expression:

The reflection of a point becomes: The reflection of a vector becomes: