성태의 닷넷 이야기
홈 주인
모아 놓은 자료
프로그래밍
질문/답변
사용자 관리
사용자
메뉴
아티클
외부 아티클
유용한 코드
온라인 기능
MathJax 입력기
최근 덧글
[정성태] 제가 큰 실수를 했군요. ^^; Delegate를 통한 Bein...
[정성태] Working with Rust Libraries from C#...
[정성태] Detecting blocking calls using asyn...
[정성태] 아쉽게도, 커뮤니티는 아니고 개인 블로그입니다. ^^
[정성태] 질문이 잘 이해가 안 됩니다. 우선, 해당 소스코드에서 ILis...
[양승조
] var대신 dinamic으로 선언해서 해결은 했습니다. 맞는 해...
[양승조
] 또 막혔습니다. ㅠㅠ var list = props[i].Ge...
[양승조
] 아. 감사합니다. 어제는 안됐던것 같은데....정신을 차려야겠네...
[정성태] "props[i].GetValue(props[i])" 코드에서 ...
[정성태] 저렇게 조각 코드 말고, 실제로 재현이 되는 예제 프로젝트를 압...
글쓰기
제목
이름
암호
전자우편
HTML
홈페이지
유형
제니퍼 .NET
닷넷
COM 개체 관련
스크립트
VC++
VS.NET IDE
Windows
Team Foundation Server
디버깅 기술
오류 유형
개발 환경 구성
웹
기타
Linux
Java
DDK
Math
Phone
Graphics
사물인터넷
부모글 보이기/감추기
내용
<div style='display: inline'> <h1 style='font-family: Malgun Gothic, Consolas; font-size: 20pt; color: #006699; text-align: center; font-weight: bold'>GeoGebra 기하 (18) - 원의 중심 및 접선</h1> <p> 지오지브라 수학 앱을 이용해,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > GeoGebra 기하 - 컴퍼스와 자를 이용한 작도 프로그램 ; <a target='tab' href='http://www.sysnet.pe.kr/2/0/11568'>http://www.sysnet.pe.kr/2/0/11568</a> </pre> <br /> 이번엔 원의 중심을 결정하고 접선도 그어 보겠습니다. 우선, 중심의 경우 지난 글에서 이미 답이 나왔습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > GeoGebra 기하 (8) - 호(Arc)의 이등분 ; <a target='tab' href='http://www.sysnet.pe.kr/2/0/11578'>http://www.sysnet.pe.kr/2/0/11578</a> </pre> <br /> 즉 아무 원호나 2개 그어,<br /> <br /> <img alt='circle_tangent_line_1.png' src='/SysWebRes/bbs/circle_tangent_line_1.png' /><br /> <br /> 그것의 수직 이등분선(<a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Perpendicular Bisector</a>)이 만나는 점이 원의 중심입니다. <br /> <br /> <img alt='circle_tangent_line_2.png' src='/SysWebRes/bbs/circle_tangent_line_2.png' /><br /> <br /> 자, 그렇게 해서 점의 중심을 정했으면 이제 원 위에 있는 임의의 점에 대한 접선을 구하는 것이 가능합니다. 접선은,<br /> <br /> <img alt='circle_tangent_line_3.png' src='/SysWebRes/bbs/circle_tangent_line_3.png' /><br /> <br /> 점 K와 원의 중심 A를 이은 선과 수직이기 때문에 선분 AK에 대해 점 K에서 <a target='tab' href='http://www.sysnet.pe.kr/2/0/11570'>Perpendicular Line</a>을 이용해 수직선을 그어주면 됩니다.<br /> <br /> <img alt='circle_tangent_line_4.png' src='/SysWebRes/bbs/circle_tangent_line_4.png' /><br /> <br /> 여기서 약간의 방정식을 정리해 보면, 점 A가 (0,0) 좌표에 있고 반지름이 3인 원의 방정식은 다음과 같습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > (x - x<sub>0</sub>)<sup>2</sup> + (y - y<sub>0</sub>)<sup>2</sup> = d<sup>2</sup> (d == 반지름) x<sub>0</sub> = 0 y<sub>0</sub> = 0 d = 3 x<sup>2</sup> + y<sup>2</sup> = 3<sup>2</sup> 일반화 시켜 점 (x<sub>1</sub>, y<sub>1</sub>)이라고 하면, <span style='color: blue; font-weight: bold'>x<sub>1</sub><sup>2</sup> + y<sub>1</sub><sup>2</sup> = d<sup>2</sup></span> </pre> <br /> 그리고 직선 AK의 방정식은 점 K(x<sub>1</sub>, y<sub>1</sub>)를 지나므로,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > y = (y<sub>1</sub> / x<sub>1</sub>) * x </pre> <br /> 이때의 접선의 기울기는 다음과 같이 구할 수 있습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > m = 직선 AK의 기울기 m = (y<sub>1</sub> / x<sub>1</sub>) m' = 점 K에서의 접선의 기울기 m * m' = -1 (수직이므로 기울기를 곱한 경우 -1) m' = -(x<sub>1</sub> / y<sub>1</sub>) </pre> <br /> 따라서 해당 기울기를 가진 접선의 방정식은,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > y = -(x<sub>1</sub> / y<sub>1</sub>)(x - x<sub>1</sub>) + y<sub>1</sub> </pre> <br /> 와 같습니다. 실제로 "Steps"에 나온 점 K의 위치를 이용해 직선의 방정식을 구해 볼까요? ^^<br /> <br /> <img onclick='toggle_img(this)' class='imgView' alt='circle_tangent_line_5.png' src='/SysWebRes/bbs/circle_tangent_line_5.png' /><br /> <br /> 위와 같이 "Steps"를 통해서 보면 점 K의 위치가 (2.5, 1.6)임을 알 수 있습니다. 따라서 이것을 방정식에 대입해 보면,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > x<sub>1</sub> = 2.5 y<sub>1</sub> = 1.6 y = -(2.5 / 1.6)(x - 2.5) + 1.6 = -1.5625(x - 2.5) + 1.6 = -1.5625x + 3.90625 + 1.6 = -1.5625x + 5.50625 </pre> <br /> 와 같이 구할 수 있고, 이것을 역시 "Steps"에 나온 접선의 방정식과 비교해 보면,<br /> <br /> <img onclick='toggle_img(this)' class='imgView' alt='circle_tangent_line_6.png' src='/SysWebRes/bbs/circle_tangent_line_6.png' /><br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > -9 = -2.5x - 1.6y 9 = 2.5x + 1.6y 1.6y = -2.5x + 9 y = -(2.5 / 1.6)x + (9 / 1.6) = -1.5625x + 5.625 </pre> <br /> 와 같이 나옵니다. y 절편에서 0.11875 정도의 오차가 있는데요, 이것은 지오지브라가 보여준 K의 좌표 (2.5, 1.6)에 소수점 2자리 이하의 값을 보여주지 않기 때문에 정확한 좌표 값에 의한 것이 아니므로 발생합니다.<br /> <br /> 참고로, 지오지브라에서 보여준 접선의 방정식은 이렇게도 구할 수 있습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > y = -(x<sub>1</sub> / y<sub>1</sub>)(x - x<sub>1</sub>) + y<sub>1</sub> (접선의 방정식) yy<sub>1</sub> = -(x<sub>1</sub>)(x - x<sub>1</sub>) + y<sub>1</sub><sup>2</sup> (양변에 y<sub>1</sub>을 곱) = -x<sub>1</sub>x + x<sub>1</sub><sup>2</sup> + y<sub>1</sub><sup>2</sup> x<sub>1</sub>x + yy<sub>1</sub> = x<sub>1</sub><sup>2</sup> + y<sub>1</sub><sup>2</sup> <span style='color: blue; font-weight: bold'>x<sub>1</sub>x + y<sub>1</sub>y = d<sup>2</sup></span> 점 K == (2.5, 1.6)이므로, 2.5x + 1.6y = 3<sup>2</sup> </pre> <br /> 그러니까, 원점 (0,0)을 기준으로 한 원이 있을 때, 점의 좌표만 알면 그것의 x<sub>1</sub>, y<sub>1</sub>값과 반지름을 그대로 "x<sub>1</sub>x + y<sub>1</sub>y = d<sup>2</sup>" 공식에 넣고 y에 대해서 정리해 주면 접선의 방정식이 구해지는 것입니다.<br /> <br /> <hr style='width: 50%' /><br /> <br /> 마지막으로, 원 위에 있는 점이 아닌, 원 바깥에 있는 점을 지나는 접선을 작도해 보겠습니다.<br /> <br /> <img alt='circle_tangent_line_7.png' src='/SysWebRes/bbs/circle_tangent_line_7.png' /><br /> <br /> 간단하게, 원의 중심 A와 점 C를 잇는 선분의 이등분(<a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Midpoint or Center</a>) 위치에서 원을 그려 생기는 2개의 교점을 선(<a target='tab' href='http://www.sysnet.pe.kr/2/0/11591'>Line</a>)으로 연결하면 됩니다.<br /> <br /> <img alt='circle_tangent_line_8.png' src='/SysWebRes/bbs/circle_tangent_line_8.png' /><br /> <br /> 왜 그런지는 원주각 정리를 떠올리면 됩니다. <br /> <br /> <img alt='circle_tangent_line_9.png' src='/SysWebRes/bbs/circle_tangent_line_9.png' /><br /> <br /> 선분 AC를 지름으로 한 원이므로 중심각은 180도이고, 2개의 교점(E, F)과 이룬 각 CEA와 각 CFA는 원주각이므로 1/2이 되어 90도가 됩니다. 따라서, 점 A를 중심으로 한 원의 입장에서 보면 해당 교점들과 연결한 선은 90도를 이루므로 접선이 되는 것입니다.<br /> <br /> (<a target='tab' href='http://www.sysnet.pe.kr/bbs/DownloadAttachment.aspx?fid=1308&boardid=331301885'>첨부 파일은 이 글의 작도를 담은 파일</a>입니다.)<br /> <br /> <hr style='width: 50%' /><br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Basic Tools <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Move</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Point</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Segment</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11591'>Line</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11584'>Polygon</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Circle with Center through Point</a> Edit <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Show / Hide Label</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11570'>Show / Hide Object</a> Construct <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Midpoint or Center</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11570'>Perpendicular Line</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Perpendicular Bisector</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11573'>Parallel Line</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11577'>Angle Bisector</a> Measure <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Angle</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11593'>Angle with Given Size</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11574'>Distance or Length</a> Lines <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Segment</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11576'>Segment with Given Length</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11591'>Line</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11574'>Ray</a> Circles <a target='tab' href='http://www.sysnet.pe.kr/2/0/11569'>Circle with Center through Point</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11574'>Compass</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11578'>Circumcircular Arc</a> Polygons <a target='tab' href='http://www.sysnet.pe.kr/2/0/11584'>Polygon</a> <a target='tab' href='http://www.sysnet.pe.kr/2/0/11579'>Regular Polygon</a> GeoGebra 메뉴 관련 기능 Steps - <a target='tab' href='http://www.sysnet.pe.kr/2/0/11568'>http://www.sysnet.pe.kr/2/0/11568</a> </pre> </p><br /> <br /><hr /><span style='color: Maroon'>[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]</span> </div>
첨부파일
스팸 방지용 인증 번호
1224
(왼쪽의 숫자를 입력해야 합니다.)