(구)boymin
타원 그리기 프로그램 본문
너무 오랜만의 포스팅.
고등학교 3학년이라 바빴고(라는 핑계를 대고),
또 정보올림피아드니 C++공부니(라는 핑계를 대고),
일이 좀 많았다.
이번 포스팅은 타원 그리기 프로그램이다.
엄청나게 간단한 프로그램이지만...
기하와 벡터를 공부하며, 배운 평면도형을 실제로 프로그램으로서 구현해보며,
원하는 평면도형에 대한 방정식을 즉작적으로 알아내는 프로그램이 있다면
평면도형을 더 쉽게 공부할 수 있지 않을까, 하는 생각이 들어
본보기로 타원 그리기 프로그램을 만들어 보았다.
프로그램의 한 장면이다.
원리는 죽도록 간단하다.(사실 이 원리를 떠올리기 위해 고민을 좀 했다.)
우선 타원의 장축과 단축의 길이를 받는다.
이를 통해 타원 방적식을 구해내고, 초점의 좌표 역시 알아낸다.
그리고, 타원의 장축을 N등분하여(이 N이 커질수록 부드러운 타원이 된다.),
각 N등분한 점의 x좌표를 타원 방정식에 대입해 y좌표를 계산해내고, 해당 좌표들을 배열에 담는다.
이렇게 담은 점들을 이어 타원을 그린다.
추가로, 구한 타원 방정식과 초점의 좌표를 타원 우측 상단에서 볼 수 있도록 하였다.
WASD, 방향키, IJKL로 타원의 장축과 단축의 길이를 바꾸고 평행이동 시킬 수 있고, 카메라의 위치를 바꿀 수 있다.
타원 그리기 프로그램을 체험해 볼 수 있다.
두 파일을 모두 받고, ellipse.exe를 실행하면 된다.
'Programming > Program' 카테고리의 다른 글
열역학 과정 시뮬레이터 (0) | 2018.08.01 |
---|---|
영어 단어장 프로그램 (0) | 2018.07.28 |
유전 시뮬레이션 2.0 [Simulation Of Heredity] (0) | 2018.03.15 |
유전 시뮬레이션 (Simulation of Heredity) (0) | 2018.03.14 |