ホームページ  >  記事  >  バックエンド開発  >  3 つの座標が同一線上にあるかどうかを判断する方法

3 つの座標が同一線上にあるかどうかを判断する方法

PHPz
PHPz転載
2024-02-06 08:12:03396ブラウズ

3 つの座標が同一線上にあるかどうかを判断する方法

質問の内容

私の質問は非常に一般的なもので、おそらく純粋な Java の質問だと思います。ただし、同じロジックを使用して 3 つの座標が同一線上にあるかどうかを識別する方法を見つけようとしましたが、「点」を入力として使用する例では機能しないことがわかりました。 2 つの方法が使用可能 1. 3 つの座標/点を形成する三角形の面積を見つけます。それらが同じ線上にある場合、面積値はゼロでなければなりません。 2. これらの座標を結ぶ線を 2 つの部分に分割し、それぞれの傾きを求めます。それらが同じ線上にある場合、傾きは同じになります。

これが私が試していることです。

リーリー

どちらの場合も、入力として座標を使用します。同様に同一線上にある場合でも、最終的には 4 などの面積の値が得られます。明らかに共線性がない場合、最終的には同じ傾き値になります。

何らかの構成を使用して共線性の明示的な通知を取得する方法はありますか?私は正しくやっていますか? メソッドに渡す座標サンプル値は Coefficient endPointOne = -26.666666666666686, 32.38095238095238 ....etc

です。

皆様のご意見をお待ちしております。

お礼とご挨拶


正解


市外局番をチェックしているのではなく、3点が同一直線上にあるかどうかをチェックしています。式は次のようになります:

点 (x1,y1)、(x2,y2)、(x3,y3)。

次の場合にのみ共線的である必要があります。

リーリー

コードは次のようになります。

リーリー

以上が3 つの座標が同一線上にあるかどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。