2次元の回転は、以下のように定義することができる。
点 (x1,y1) をαラジアン回転して、点 (x2,y2) になるとすると以下の公式が成立する。
つまり、以下のようになる。
x2 = x1 * cos(α) - y1 * sin(α)
y2 = x1 * sin(α) + y1 * cos(α)
よって、Java で記述すると以下のようになる。
x11 = x1 * Math.cos(alpha) - y1 * Math.sin(alpha)
y11 = x1 * Math.sin(alpha) + y1 * Math.cos(alpha)