summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>2009-08-25 14:07:52 +0200
committerThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>2009-08-25 16:25:47 +0200
commitf393f7f45b22990ed22308a912b7a00cc7ddd78e (patch)
treeb68641f71dcded166f9ae61a07c0a965672087e0 /src
parent48489988521b818bda8d76e60cb272508e91b490 (diff)
Micro-optimization in QPainterPath::toFillPolygons
QRectF::intersects was optimized as part of the Falcon project, and is now a bit faster than the inline version used here (drawing of dashed lines was measured to take 16% less time). Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Diffstat (limited to 'src')
-rw-r--r--src/gui/painting/qpainterpath.cpp8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/gui/painting/qpainterpath.cpp b/src/gui/painting/qpainterpath.cpp
index eb8b964df..a10c4cd8e 100644
--- a/src/gui/painting/qpainterpath.cpp
+++ b/src/gui/painting/qpainterpath.cpp
@@ -1520,12 +1520,6 @@ QList<QPolygonF> QPainterPath::toSubpathPolygons(const QMatrix &matrix) const
return toSubpathPolygons(QTransform(matrix));
}
-static inline bool rect_intersects(const QRectF &r1, const QRectF &r2)
-{
- return qMax(r1.left(), r2.left()) <= qMin(r1.right(), r2.right())
- && qMax(r1.top(), r2.top()) <= qMin(r1.bottom(), r2.bottom());
-}
-
/*!
Converts the path into a list of polygons using the
QTransform \a matrix, and returns the list.
@@ -1578,7 +1572,7 @@ QList<QPolygonF> QPainterPath::toFillPolygons(const QTransform &matrix) const
continue;
QRectF cbounds = bounds.at(j);
for (int i=0; i<count; ++i) {
- if (rect_intersects(cbounds, bounds.at(i))) {
+ if (cbounds.intersects(bounds.at(i))) {
isects[j] << i;
}
}