• ベストアンサー

座標の交点の求めかた

ある座標が、ある線分上に交差または重なるか調べるにはどう計算すれば良いのか教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

YUMIPAさん、こんにちは。 >ある座標が、ある線分上に交差または重なるか調べるにはどう計算すれば良いのか 座標というのは、点ですね。線分というのは直線なので、その点が、その直線上にあるかどうか、 ということでしょうか。 だとすると、直線の方程式をax+by+c=0・・・・(★) とします。 点の座標を(x1,y1)だとしますと、これを(★)に代入して ax1+by1+cを計算し、それが0になれば、直線上の点だということになります。 0にならなければ、直線上にない点です。 また、線分と線分が交差するか、重なるか、という問題でしたら、 線分の方程式を、それぞれ ax+by+c=0 px+qy+r=0 としますね。このとき、それぞれの傾きを調べると ax+by+c=0 b≠0のとき、y=-a/bx-c/b となるので、傾きは-a/b px+qy+r=0 q≠0のとき y=-p/qx-r/q となるので、傾きは-p/q ここで、-a/b=-p/qのとき、すなわちaq-bp=0のとき 二つの線分は平行または、等しい。 等しくなるのは、-c/b=-r/qつまりcq-br=0のときである。 aq-bp≠0のときは、二つの線分は交わります。(平行ではないので、どこかで交わる点があります) このようなことでしょうか。 ご参考になれば幸いです。

YUMIPA
質問者

お礼

御礼が遅れてしまって申し訳ありません! とても参考になり、無事に問題解決する事ができました。 本当に有難う御座いました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • nitscape
  • ベストアンサー率30% (275/909)
回答No.1

ある座標がある線分上に含まれているかどうかは、その線分の方程式に座標値を代入して式が成り立つかどうかを見ることで判断できると思います。 質問とは直接関係ありませんが座標は点なので線分に対して「交差」することはないと思います。 ex.  座標(10,20)  線分(y = 2*x [5 < x 30]) なら  20 = 2*10  [5 < 10 < 30] が成り立つ=含まれる 座標(10,15)なら  15 ≠ 2*10  [5 < 10 < 30] 成り立たない=含まれない

YUMIPA
質問者

お礼

御礼が遅れてしまって申し訳ありません! 無事に問題解決する事ができました。 この質問に対して一番早くレスポンス頂けた事をとても嬉しく思っています。 今回は本当に有難う御座いました。

すると、全ての回答が全文表示されます。

関連するQ&A