方向角度は通常、参照方向(北など)に対して時計回りにポイントが回転する角度を表します。平面座標系では、それらの座標に基づいて2つの点間の方向角を計算する必要があることがよくあります。
2つのポイント(x1、y1)と(x2、y2)があるとしたら、ポイント1からポイント2を指す方向角を計算する必要があります。
数学では、方向角は次の式で計算できます。
ここ、 、 。
PHPでは、 tan()は接線関数であり、 atan()はarctangent関数です。 Deg2Rad()は、三角関数によって受け入れられているパラメーターがラジアンであるため、角度をラジアンに変換するために使用されます。
方向角を計算するときは、通常、Arctangent値(ラジアン)を最初に取得し、次に角度に変換する必要があります。
<?php
// 座標を開始および終了します
$x1 = 10;
$y1 = 15;
$x2 = 20;
$y2 = 25;
// 座標の違いを計算します
$dx = $x2 - $x1;
$dy = $y2 - $y1;
// 方向角のラジアン値を計算します,知らせ atan2 象限を区別できます
$angleRad = atan2($dy, $dx);
// ラジアンを角度に変換します
$angleDeg = rad2deg($angleRad);
// 通常、方向角度を変換する必要があります 0-360 学位の間
if ($angleDeg < 0) {
$angleDeg += 360;
}
echo "方向角はです:".$angleDeg." 度";
?>
上記のコードは、 atan2()を使用して方向角を計算する方法を示しています、 atan2()は計算です エラーを回避するために、異なる象限の角度を自動的に処理できるより正確な関数です。
tan()は、角度ではなく、接線値を計算するために使用される関数です。方向角を計算するために必要なのは、arctangent関数atan()またはより完全なatan2()です。 deg2rad()は、度をラジアンに変換するために使用されるヘルパー関数です。これは、主に角度ラジアンを入力して、コールトリゲトリック関数を促進するために使用されます。
tan()を使用して角度を直接計算すると、プロセスは間違っています。最初に座標を使用して角度(radian)を計算し、次に角度に変換する必要があります。
方向角を計算するときは、 ATAN2()を使用して正しいラジアン値を取得することです。
deg2Rad()は、角度をラジアンに変換するために使用されます。これは、角度値が既にある場合に三角関数を呼び出すのに適しています。
方向角は、0〜360度の範囲で標準化する必要があります。
tan()関数自体は、接線値を見つけるのにのみ適しており、角度を反比例させるためには使用されません。
上記の知識ポイントを習得した後、PHPを使用して、2つのポイント間の方向角を正確に計算できます。