첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

■ 좌표 회전하기

----------------------------------------------------------------------------------------------------

using System;

using System.Windows;

 

#region 좌표 회전하기 - Rotate(sourcePoint, centerPoint, rotateAngle)

 

/// <summary>

/// 좌표 회전하기

/// </summary>

/// <param name="sourcePoint">소스 좌표</param>

/// <param name="centerPoint">중심점 좌표</param>

/// <param name="rotateAngle">회전 각도</param>

/// <returns>회전 좌표</returns>

public Point Rotate(Point sourcePoint, Point centerPoint, double rotateAngle)

{

    Point targetPoint = new Point();

 

    double radian = rotateAngle / 180 * Math.PI;

 

    targetPoint.X = Math.Cos(radian) * (sourcePoint.X - centerPoint.X) - Math.Sin(radian) * (sourcePoint.Y - centerPoint.Y) + centerPoint.X;

    targetPoint.Y = Math.Sin(radian) * (sourcePoint.X - centerPoint.X) + Math.Cos(radian) * (sourcePoint.Y - centerPoint.Y) + centerPoint.Y;

 

    return targetPoint;

}

 

#endregion

----------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker

댓글을 달아 주세요