本文整理汇总了C++中QVector4D::toVector2DAffine方法的典型用法代码示例。如果您正苦于以下问题:C++ QVector4D::toVector2DAffine方法的具体用法?C++ QVector4D::toVector2DAffine怎么用?C++ QVector4D::toVector2DAffine使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QVector4D
的用法示例。
在下文中一共展示了QVector4D::toVector2DAffine方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: realMatrix
srcCornerPoints << transaction.originalTopRight();
srcCornerPoints << transaction.originalBottomLeft();
srcCornerPoints << transaction.originalBottomRight();
dstCornerPoints.clear();
Q_FOREACH (const QPointF &pt, srcCornerPoints) {
dstCornerPoints << transform.map(pt);
}
QMatrix4x4 realMatrix(transform);
QVector4D v;
v = QVector4D(1, 0, 0, 0);
v = realMatrix * v;
transformedHandles.xVanishingExists = !qFuzzyCompare(v.w(), 0);
transformedHandles.xVanishing = v.toVector2DAffine().toPointF();
v = QVector4D(0, 1, 0, 0);
v = realMatrix * v;
transformedHandles.yVanishingExists = !qFuzzyCompare(v.w(), 0);
transformedHandles.yVanishing = v.toVector2DAffine().toPointF();
}
void KisPerspectiveTransformStrategy::setTransformFunction(const QPointF &mousePos, bool perspectiveModifierActive)
{
Q_UNUSED(perspectiveModifierActive);
QPolygonF transformedPolygon = m_d->transform.map(QPolygonF(m_d->transaction.originalRect()));
StrokeFunction defaultFunction = transformedPolygon.containsPoint(mousePos, Qt::OddEvenFill) ? MOVE : NONE;
KisTransformUtils::HandleChooser<StrokeFunction>
handleChooser(mousePos, defaultFunction);