직선그래프와 1차함수 프로그래밍 상식

일단, 그래프를 나타내기 위해서는 다음과 같은 상황으로 상정해야 한다. svg의 line 태그처럼 생각하는게 좋을 것이다. 시작점을 ⓐ, 끝점을 ⓑ 라고 하자.

중학교때 배웠던 1차 함수를 기억하는가? 모르면 수학방 가서 배우고 오는 것이 좋을 것이다. (링크) 간단하게 어느정도 기억하고 있는 사람을 위해 바로 적자면 식은 아래와 같이 나올 것이다.

y = ax; (y의 시작점을 0이라 보았을 때)
y = ax + b; (y의 시작점을 b라 보았을 때)

여기서 a는 기울기 이고, 이 기울기를 구하는 공식은 (y의 증가량) / (x의 증가량 이다).
이는 곧 (ⓑ의 y - ⓐ의 y) / (ⓑ의 x - ⓐ의 x)를 의미 하겠지.

기울기가 존재하는 사선의 경우는 위의 공식을 바로 적용하면 된다. 이를 이용해 각 path가 어느 지점을 지나치는지 알 수 있다.

그러나, 수평 수직과 같은 기울기가 0인 경우는 어떻게 생각해야 할까? (본인은 이것때문에 한참을 고생했다 -_-)
밑의 그림을 통해 기본 아이디어를 잡아두고 가자.



왼쪽의 빨간 박스가 y 축에 붙어 있는 직선이고 오른쪽의 파란 박스가 그 직선을 필요한 N만큼 이동한 것이다. 즉, 이걸 거꾸로 생각하면 직선또한 그리게 할 수가 있다.

프로그래밍으로 하면 y를 시작점부터 끝점까지 반복문을 돌게 하면서 그동안 x는 내가 원하는 위치로 고정 시켜 놓으면 된다. 수평의 경우도 마찬가지로 계산할 수 있겠지. 

이걸 공식으로는 
x1 - x2 = 0 일때 x는 x1 뭐 이렇게 하는데 이것보다는 모든 y에서 x의 위치는 시작점과 같다 이런식으로 외우는게 더 나을 것이다.


나중에 좀 더 수학 공부해서 다각형에다가 라디안 회전했을때 쓰는 삼각함수에 대해서도 포스팅해야지.


덧글

댓글 입력 영역