원의 내부 점인지 알아보기

원의 방정식



원의 방정식 참조

원과 점의 위치 관계와 판정 방법





원과 점의 위치 관계는
  • 원 내부 점 $(Q_1)$
  • 원주상의 점 $(Q_2)$
  • 원의 외부 점 $(Q_3)$

  • 의 3가지.
    그 판정 방법은, 원의 중심으로부터 조사하는 점까지의 길이와, 반경을 비교하여,
  • 반지름보다 작은 경우 원 안의 점 $(CQ_1
  • 반경과 같으면 원주상의 점 $(CQ_2=r)$
  • 반경보다 큰 경우 원의 외부 점 $(CQ_3>r)$

  • 된다.
    원의 중심의 좌표를 $(a,b)$, 반경을 $r$, 조사하는 점 $Q$의 좌표를 $(x,y)$로 했을 때,
    $$\sqrt{(x - a)^2 + (y - b)^2}양변을 제곱하고,
    $$ (x - a)^2 + (y - b)^2를 만족하는 경우, 원의 내부의 점으로 판단할 수 있다.
    원주상의 점도 내부로 간주하는 경우의 판정식은,
    $$ (x - a)^2 + (y - b)^2\leqq r^2$$
    된다.

    【예】 중심(3,2) 반경 5 의 ​​원에 대해서,




    (1) $Q_1(2,6)$는
    (2-3)^2+(6-2)^2=1+16=17\\ 
    r^2=5^2=25\\ 
    17<25\quad なので\quad Q_1は円の内部の点
    

    (2) $Q_2(7,5)$는
    (7-3)^2+(5-2)^2=16+9=25\\ 
    r^2=5^2=25\\ 
    25=25\quad なので\quad Q_2は円周上の点
    

    (3) $Q_3(8,-2)$는
    (8-3)^2+(-2-2)^2=25+16=41\\ 
    r^2=5^2=25\\ 
    41>25\quad なので\quad Q_3は円の外部の点
    

    판정 프로그램


    ;; 円周上の点か調べる
    ;; Args - cx : 円の中心のx座標
    ;;        cy : 円の中心のy座標
    ;;        cr : 円の半径
    ;;         x : 調べる点のx座標
    ;;         y : 調べる点のy座標
    (defun circle:IsOn (cx cy cr x y)
        (equal (+ (expt (- x cx) 2) (expt (- y cy) 2)) (* cr cr) 1e-8)
    )
    
    ;; 円の内部の点か調べる
    (defun circle:Contains (cx cy cr x y)
        (< (+ (expt (- x cx) 2) (expt (- y cy) 2)) (* cr cr))
    )
    
    ;; 円の内部の点か調べる
    ;; 円周上の点も含める
    (defun circle:IsOnOrContains (cx cy cr x y)
        (or (circle:IsOn cx cy cr x y) (circle:Contains cx cy cr x y))
    )
    
    ;; < Example >
    (circle:IsOn 3. 2. 5. 2. 6.)  ;;Q1
    ;; -> T
    (circle:IsOn 3. 2. 5. 7. 5.)  ;;Q2
    ;; -> nil
    (circle:IsOn 3. 2. 5. 8. -2.) ;;Q3
    ;; -> nil
    (circle:Contains 3. 2. 5. 2. 6.)  ;;Q1
    ;; -> nil
    (circle:Contains 3. 2. 5. 7. 5.)  ;;Q2
    ;; -> T
    (circle:Contains 3. 2. 5. 8. -2.) ;;Q3
    ;; -> nil
    (circle:IsOnOrContains 3. 2. 5. 2. 6.)  ;;Q1
    ;; -> T
    (circle:IsOnOrContains 3. 2. 5. 7. 5.)  ;;Q2
    ;; -> T
    (circle:IsOnOrContains 3. 2. 5. 8. -2.) ;;Q3
    ;; -> nil
    

    좋은 웹페이지 즐겨찾기