まず、これは非常に些細なことのように聞こえるかもしれませんが、現在、指定された角度から象限を返すための関数getQuadrant(degree)を作成しています。
たとえば、次数が> = 0かつ<90の場合、1を返します。次数が> = 90かつ<180の場合、2を返します。これは非常に些細なことです。ただし、0〜360度以外の度を処理できるようにするために、最初にこれらの数値を0〜360度の範囲に正規化して次のようにします。
while (angle > 360)
angle = angle - 360;
end
while (angle < 0)
angle = angle + 360;
end
その後、計算します。しかし、率直に言って、私はこのようなwhileステートメントを使用するのは嫌いです。角度の象限を一度に指摘できる他の数学的方法はありますか?
編集:良い答えがたくさんあることがわかります。「どのアルゴリズムが最速になるか」を追加させてください。