(updated 5/15/05)
The CORDIC method derives from the Givens transform of linear and matrix algebra.This transform relates the coordinates of a point p in one coordinate system to the coordinates of that same point in another coordinate system that has been rotated by an fixed angle around the origin. This is depicted in figure #A below. The coordinates of the single point p are (x,y) in the black coordinate system, and (x',y') in the red coordinate system. The red coordinates have been rotated by an angle H. (The diagram uses the Greek letter phi instead of H-sorry about that.) The equation relating the coordinates are:
x' = x cos H + y sin H
y' = y cos H - x sin H
Now, how do you derive that, from geometrical reasoning? Please refer to figure B.
Figure #D justifies the claim that the top angle in the green triangle (chi in figure D) is equal to the original angle, phi (same as H). The horizontal line through points y and c is constructed parallel to the x axis. Angle alpha is equal to angle phi, because Oc cuts two parallel lines and phi and alpha are on opposite sides. Triangle pcx' is a right triangle, so the sum of angles alpha and beta must equal 90 degrees. Likewise, line px is constructed perpendicular to the x axis and to line yc. So the sum of chi plus beta must also equal 90 degrees. That means that chi equals alpha equals phi, which was to be proved.
Figure #C illustrates how the rotation of coordinates is related
to rotation of a vector. The original vector from O to the
point (x,y) is
rotated through an angle -H to a new position with its tip at (x',y').
Now we have moved the point instead of the coordinate system. The
transform of the coordinates is the same as above, except that now we
have the angle -H instead of +H. So the sign changes as follows:
vector rotation;
note sign of the sin H terms are reversed, compared with coordinate transform above
x' = x cos H - y sin H
y' = y cos H + x sin H