• 1349阅读
  • 0回复

GraphicsView实现图元旋转拉伸的简单例子 [复制链接]

上一主题 下一主题
离线dorafather
 

只看楼主 倒序阅读 楼主  发表于: 2020-12-12
— 本帖被 20091001753 从 Qt代码秀 移动到本区(2020-12-12) —
抽空整理下以前自己写的在GraphicsView得框架下实现了图元的旋转拉伸等功能,有偿共享代码,备注留下你的邮箱,在QT4及QT5下运行
    if(!scaled) scaled = true;     float xDistance;     float yDistance;     xDistance = currentVector.x() - StartPoint.x();     if (StartPoint.x() < PivotPoint.x())     {       xDistance = xDistance * -1;    }    yDistance = currentVector.y() - StartPoint.y();     if (StartPoint.y() < PivotPoint.y())     {       yDistance = yDistance * -1;    }    float xFactor;    float yFactor;    xFactor = xDistance / sceneBoundingRect().width();    yFactor = yDistance / sceneBoundingRect().height();    xFactor = 1 + xFactor;    yFactor = 1 + yFactor;    if (shift)      if ((yFactor !=0) && (xFactor !=0))        yFactor = xFactor;    applyTransform(0,xFactor,yFactor);
1条评分金钱+1
20091001753 金钱 +1 代码秀板块一般是无偿分享代码,有偿可以在作品展或基础编程板块。 2020-12-12
快速回复
限100 字节
 
上一个 下一个