直線と円の交点を求める
陰関数で表わす
直線と円の交点について考えてみます。 点を中心とした半径の円と、直線の交点を考えます。
上の図で、点Hの座標は「点と直線の距離を求める」で求めました。 と置けば、点Hの座標は次のように書けます。
次に線分HQの長さを考えます。この長さは三平方の定理から簡単に求めることができます。 線分OHの長さはなので
となります。
ここで、直線に沿った向きのベクトルをとすると
と書くことができます。 はと直交するベクトルなのでです。
これで点Hの座標と、点Hと点Qの相対座標がわかりました。 後はこれらを足しあわせれば点Qの座標が出ます。
これをまとめると点Pの座標は次式のようになります。
特に、円の中心が原点の場合、となります。
媒介変数表示で表わす
直線が媒介変数表示されている場合についても考えてみます。
まずは点Hの座標ですが、「点と直線の距離を求める」で求めたように
となるの点です。
とすれば、陰関数表示の場合と同様に
です。これから、
実際にやってみよう
実際にやってみました。
SVGにJavascriptを埋め込んで簡単なアニメーションを作ってみました。
黒の直線と円が与えられた時の交点を求めます。赤の小さい円が交点です。
SVGファイルをダウンロードする