9

デカルト座標から X と Y を使用して、極座標の回転角度を知る必要があります。

多くのIFステートメントなしでJSでそれを行う方法は? 私はそれを使用してそれを行うことができることを知っていますこのシステム

アニメ化サイクルなのでパフォーマンスは悪くなると思います。

4

1 に答える 1

19

Javascript には、画像で表されていることを行う組み込み関数が付属しています。Math.atan2()

Math.atan2()引数として取りy, x、角度をラジアンで返します。

例えば:

x = 3
y = 4    
Math.atan2(y, x) //Notice that y is first!

//returns 0.92729521... radians, which is 53.1301... degrees

デカルト座標から極座標に変換し、距離と角度 (ラジアン) を返すこの関数を作成しました。

function cartesian2Polar(x, y){
    distance = Math.sqrt(x*x + y*y)
    radians = Math.atan2(y,x) //This takes y first
    polarCoor = { distance:distance, radians:radians }
    return polarCoor
}

次のように使用して、ラジアンで角度を取得できます。

cartesian2Polar(5,5).radians

最後に、度が必要な場合は、次のようにラジアンを度に変換できます

degrees = radians * (180/Math.PI)
于 2015-10-09T17:19:59.350 に答える