Class1 : Panel 클래스의 OnPaint 메서드를 사용하고 있습니다. 내가 원하는대로 C# 그래픽의 이상한 회전
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
Graphics g = e.Graphics;
}
는 회전이 작동하지 않습니다, 나는
Matrix m = new Matrix();
m.RotateAt(90, rotationPoint);
g.Transform = m;
g.FillRectangle(Brushes.Black, rectangle)
문제가 사용하고 회전 사각형을 그립니다.
붉은 광장 회전 지점입니다 그것은 사각형의 중간 상단에 위치하고 있습니다. 회전이 제대로 작동하도록 x, y 및 회전 지점을 설정하는 방법은 무엇입니까?
90의 degress로 회전 한 후 동일한 위치에 여전히이
적색 화소 같을 것이다.
그래서, 어떤 * *이 회전 후 모습입니까? –
Marcelo가 말한 것처럼 ... 그리고 rotationPoint를 어떻게 설정하고 있습니까? –
회전 후 빨간색 점이 사각형 밖에 있습니다. 회전 점을 새로운 PointF (x- (rectangleWidth/2), y)로 설정합니다. 여기서 x와 y는 빨간색 픽셀의 좌표입니다. – tommy