Javaプログラミング学習サイト ゆるゆるプログラミング

2020/10/07 公開

・点が円内かを判定

ここでは、指定した点が円の内側か、外側か、または円周上かを鑑定する方法を説明します。

以下の図は、判定した結果を表したものです。水色の点は円の中にあるもので、赤色の点は円の外にあるものです。緑色の点は円周上にあるものです。

点が円の内側か外側かを判定

ここから、判定の手順について説明していきます。

判定には、円の方程式を使います。(下図)

円の方程式

座標(x,y)と円の中心座標(ox,oy)の直線距離ピタゴラスの定理で計算し、その距離が半径rと等しいという式になっています。左辺と右辺が等しい場合に、座標(x,y)は中心座標(ox,oy) 半径rの円周上に存在することを意味しています。

次に、座標(x,y)が円の内側にいる判定方法を説明します。

座標(x,y)と円の中心座標(ox,oy)の直線距離半径r未満の場合、座標(x,y)は円の内側にいると判定します。式で表すと以下のようになります。

(x,y)が円の内側にいる条件式

円周上の座標(x,y)も円の内部と判定する式は、以下のようになります。不等号の下にイコールが付いています。

(x,y)が円の内側(円周上を含む)にいる条件式

最後に、座標(x,y)が円の外側にいる判定方法を説明します。

座標(x,y)と円の中心座標(ox,oy)の直線距離半径rより大きい場合、座標(x,y)は円の外側にいると判定します。式で表すと以下のようになります。

(x,y)が円の外側にいる条件式

円の内側か外側かを判定する場合には直線距離を求める必要はなく、直線距離2乗円の半径2乗で比較したほうが処理速度が速いです。

以上です。

■関連コンテンツ

2点間の距離 2点間の距離計算
平方根 Math.sqrtの使い方について解説
値の2乗 値を2乗するメソッドの作り方を解説
塗りつぶし円 塗りつぶし円画像の作成方法
円模様1 円の縦横整列模様の画像作成方法を紹介
円模様2 隙間が少ない円の整列画像の作り方を紹介
同心円模様 同心円模様の画像作成方法を紹介
放射状模様 放射状模様の画像作成方法を紹介
円を描く(テキスト版) テキストを円を描く
四則演算(足し算/引き算/掛け算/割り算)について-画像

計算結果の表示

足し算(加法)/引き算(減法)/掛け算(乗法)/割り算(除法)の使い方を説明

条件による処理の分岐に使用するif文について解説-画像

if文

条件による処理の分岐に使用するif文について解説

■新着情報

2021.03.31 神経衰弱 1人で神経衰弱
2021.03.10 最も近い座標を探す 1番近い座標は?
2021.03.09 フィボナッチ数列(配列) フィボナッチ数列(配列)

■広告

Topへ