本人想做一个小型画图软件,但在
图形旋转方面碰到一些
问题,向高手求解.

旋转句柄控制程序如下:
case 7: {
QPointF p = m_rect.center();
p = mapToScene(p);
qreal nDegrees = atan2(point.y() - p.y(), point.x() - p.x());
nDegrees *= 180;
nDegrees /= 3.1415926;
nDegrees += 90;
qreal x = m_rect.center().x();
qreal y = m_rect.center().y();
setTransform(QTransform().translate(x, y).rotate(nDegrees).translate(-x, -y));
break;
}
其中point为鼠标点击处scene坐标.
但在图形
缩放后,在旋转时会出现异常.
望高手求解.
小马儿(248136139) 10:03:02
矩形大小句柄控制函数如下:
itemPoint = mapFromScene(point);
case 1:
m_rect.setTopLeft(itemPoint);
setRect(m_rect);
break;
case 2:
m_rect.setBottomLeft(itemPoint);
setRect(m_rect);
break;
case 3:
m_rect.setTopRight(itemPoint);
setRect(m_rect);
break;
case 4:
m_rect.setBottomRight(itemPoint);
setRect(m_rect);
break;
case 5:
m_rect.setTop(itemPoint.y());
setRect(m_rect);
break;
case 6:
m_rect.setBottom(itemPoint.y());
setRect(m_rect);
break;
10:03:35