728x90

두 점 사이의 각도 구하기


직각 삼각형의 두 변의 길이를 Rx, Ry라고 할 때 arc tangent를 사용하여 각도 Θ를 구하는 방법. (이 때 Θ는 Radian)




double GetAngle(Vector2 v1, Vector2 v2)

{

    double xdf = v2.x - v1.x;

    double ydf = v2.y - v1.y;


    double radian = atan2(ydf, xdf);

    double degree = radian * 57.3f;   // 57.3f == (180.0f / 3.141592f);


    return degree;

}



응용을 한다면 Pixel 셰이더에서 텍스처의 중심과 Pixel의 각도를 계산해서 아래와 같은 텍스처 애니메이션을 구현할 수 있습니다.





728x90

'Math' 카테고리의 다른 글

Math - 벡터 (Vector)  (0) 2017.04.20
Math - 동차 좌표계  (0) 2017.04.20
Math - 점과 점 사이의 거리 구하기  (0) 2017.04.19
Math - Radian과 Degree  (0) 2016.05.19
Math - 정반사 벡터  (0) 2016.03.07

+ Recent posts