제가 답변을 잘못한 부분이 있네요
2)번과정에서 두점의 기울기가 아니라
시작점을 기준으로 끝점의 각도입니다.
비슷한 말이지만 기울기로 구하면 -90~ 90 까지 밖에 나오지 않으니까...
--------------------------------------------------------------------------
그리고 2)과정에서 구한 각도가 30도이면
3)과정에서 -30도 회전하라는 얘기입니다.
그렇게 하는 이유는 두점을 기울기(각도)가 0 인 수평되는 위치에 가져다 놓구..
평행되는 점들의 좌표를 구하기 위함이죠
원점을 중심으로 회전은 다음과 같이..
float fX=pt.x*cos(fAngRad) - pt.y*sin(fAngRad);
float fY=pt.x*sin(fAngRad) + pt.y*cos(fAngRad);
그럼..
자유로운 영혼 님이 쓰신 글 :
: 구한 각도만큼 반대로 회전시키는 법을 잘 모르겠습니다..
: 각도로 cos, sin 다 해봤지만 3번이 해결이 안되네요ㅜㅜ
: 어떻게 해야하는지 조금만 팁을 더 주세요ㅜ
: 무지한 플머를 구제해 주세요..
:
:
: 장성호 님이 쓰신 글 :
: : 여러가지 방법이 있겠지만...
: :
: :
: : 1) 직선위에 두점을 선택하셔서요(시작점 , 끝점)
: :
: : 2) 두점의 기울기(Angle)을 구합니다.
: :
: : 3) 끝점을 시작점과 각도가 0이 되게 2) 에서 구한 각도만큼 반대로 회전시킵니다.(끝점2)
: :
: : 4) 기울기가 0인 (시작점,끝점2) 두 점을 중심으로 일정 Offset만큼 떨어진 뒷쪽 평행선 또는 아랫쪽 평행선좌표를 구합니다. (ptStNew , ptEtNew)
: :
: : 5) 4)에서 구한 좌표 (ptStNew , ptEtNew)를 2)에서 구한 각도(Angle)만큼 시작점을 중심으로 각각 회전시킵니다.
: : (ptStNew2,ptEtNew2)
: : 6) 회전한 두점 (ptStNew2,ptEtNew2)을 지나는 직선을 그립니다.(moveto , lineto)
: :
: :
: : 그럼..
: :
: :
: :
: : 자유로운 영혼 님이 쓰신 글 :
: : : 한 직선의 좌표를 압니다...
: : : 그리고 기울기도 알고 있습니다...
: : : 하지만 평행선을 어떻게 그리는지 모르겠습니다...
: : : x축에 평행이거나 y축에 평행인선은 쉽게 그리지만
: : : 직선이 사선일 때 어떻게 구해야 하나요??
: : :
: : : 아시는 고수님들 도움좀 주세요ㅜㅜ