Python2.7.3およびPygame1.9.1の使用。
線があり、端点AとBの座標しかわかりません
。x軸またはy軸の値を指定して、座標ABを計算したいと思います。
例えば
ここで私は知っ
(x,y)
ていますA
、 B
&C
また、
C
X軸またはY軸上にあります。
私の質問
点の座標(x、y)の位置を計算するにはどうすればよいですかD
直線の方程式は次のとおりです。
y = mx + q
必要なのはまたはのいずれy(x)
かx(y)
であり、2つのエンドポイント(x1, y1)
とがあり(x2, y2)
ます。それらを直線方程式に置き換えて、線形システムを設定します。
y1 = m·x1 + q
y2 = m·x2 + q
減算の結果:
y2-y1 = m(x2-x1) => m = (y2-y1)/(x2-x1)
そしてqは明らかに:
q = y2-m·x2
これで、y = f(x)
2点を結ぶ直線を表すことができます。
明らかに、この形式()で垂直線を表すことはできませんm->+inf
。また、すべてのxについてこの関数を評価するピクセル上の線をトレースしようとすると、垂直の「穴」が発生します。
どちらの場合も、x = f(y)
フォームを使用する必要があります(これらの同じ手順に従って取得できますが、方程式から開始しますx = py + r
)。
そうは言っても、上で決定した直線()の方程式にそのようなものを入れるだけで、それy
をD
知ることができます。を知っていて、を決定したい場合は、同じことが当てはまります(逆の関係で) 。x
x
y = f(x)
x = f(y)
y
x