【C++】atan2

int main() {
    // atan(y, x)

    p(atan2(0, 1)); // 0度
    p(atan2(1, 1)); // 右上 45 degree = PI/4
    p(atan2(1, -1)); // 左上 
    p(atan2(-1, -1)); // 左下
    p(atan2(-1, 1)); // 右下 
}
0
0.785398
2.35619
-2.35619
-0.785398

注意点

  • atan2はy, xの順に入れる!

wikipedia

x軸の正の向きとの間の角度θを返す。ただし、範囲は(−π,π]

f:id:peroon:20210928013928p:plain

使う問題のeditorial