summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-01-14 11:17:47 +0100
committerAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-02-16 16:21:15 +0000
commit515e802ae20c045e5c47b400ee6ef6e92349c978 (patch)
treef9f4be4c9e360611b5823ef28c2cb293733aee42 /src/gui/painting
parent3d835eb62e70435fe32318441dc7c10aba3a6fba (diff)
Use C++ <cmath> instead of <math.h>
Including math.h can pollute the default namespace, and break some compilers if cmath versions of the method are declared as using. Switching to C++ math functions also greatly simplifies handling of float qreal as C++ automatically chooses the right method. [ChangeLog][QtCore][QtMath] qmath.h no longer includes math.h, so any sources depending on that indirect inclusion may fail to build. Change-Id: I4d0e331dafba354ec05dc5052e61ef4ff8d387fe Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Diffstat (limited to 'src/gui/painting')
-rw-r--r--src/gui/painting/qdrawhelper.cpp8
-rw-r--r--src/gui/painting/qmath_p.h7
-rw-r--r--src/gui/painting/qrasterizer.cpp16
3 files changed, 10 insertions, 21 deletions
diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp
index f461dfef06..84063eb692 100644
--- a/src/gui/painting/qdrawhelper.cpp
+++ b/src/gui/painting/qdrawhelper.cpp
@@ -1684,7 +1684,7 @@ static const uint * QT_FASTCALL fetchTransformedBilinearARGB32PM(uint *buffer, c
b++;
fx += fdx;
}
- } else if ((fdx < 0 && fdx > -(fixed_scale / 8)) || fabs(data->m22) < (1./8.)) { // scale up more than 8x
+ } else if ((fdx < 0 && fdx > -(fixed_scale / 8)) || std::abs(data->m22) < (1./8.)) { // scale up more than 8x
int y1 = (fy >> 16);
int y2;
fetchTransformedBilinear_pixelBounds<blendType>(image_height, image_y1, image_y2, y1, y2);
@@ -1843,7 +1843,7 @@ static const uint * QT_FASTCALL fetchTransformedBilinearARGB32PM(uint *buffer, c
}
}
} else { //rotation
- if (fabs(data->m11) > 8 || fabs(data->m22) > 8) {
+ if (std::abs(data->m11) > 8 || std::abs(data->m22) > 8) {
//if we are zooming more than 8 times, we use 8bit precision for the position.
while (b < end) {
int x1 = (fx >> 16);
@@ -2196,7 +2196,7 @@ static const uint *QT_FASTCALL fetchTransformedBilinear(uint *buffer, const Oper
layout->convertToARGB32PM(buf1, buf1, len * 2, layout, clut);
layout->convertToARGB32PM(buf2, buf2, len * 2, layout, clut);
- if ((fdx < 0 && fdx > -(fixed_scale / 8)) || fabs(data->m22) < (1./8.)) { // scale up more than 8x
+ if ((fdx < 0 && fdx > -(fixed_scale / 8)) || std::abs(data->m22) < (1./8.)) { // scale up more than 8x
int disty = (fy & 0x0000ffff) >> 8;
for (int i = 0; i < len; ++i) {
uint tl = buf1[i * 2 + 0];
@@ -2255,7 +2255,7 @@ static const uint *QT_FASTCALL fetchTransformedBilinear(uint *buffer, const Oper
layout->convertToARGB32PM(buf1, buf1, len * 2, layout, clut);
layout->convertToARGB32PM(buf2, buf2, len * 2, layout, clut);
- if (fabs(data->m11) > 8 || fabs(data->m22) > 8) {
+ if (std::abs(data->m11) > 8 || std::abs(data->m22) > 8) {
//if we are zooming more than 8 times, we use 8bit precision for the position.
for (int i = 0; i < len; ++i) {
uint tl = buf1[i * 2 + 0];
diff --git a/src/gui/painting/qmath_p.h b/src/gui/painting/qmath_p.h
index 50a49c2cb5..9cb64a46cb 100644
--- a/src/gui/painting/qmath_p.h
+++ b/src/gui/painting/qmath_p.h
@@ -45,14 +45,13 @@
// We mean it.
//
-#include <math.h>
#include <qmath.h>
QT_BEGIN_NAMESPACE
-static const qreal Q_PI = qreal(3.14159265358979323846); // pi
-static const qreal Q_2PI = qreal(6.28318530717958647693); // 2*pi
-static const qreal Q_PI2 = qreal(1.57079632679489661923); // pi/2
+static const qreal Q_PI = qreal(M_PI); // pi
+static const qreal Q_2PI = qreal(2 * M_PI); // 2*pi
+static const qreal Q_PI2 = qreal(M_PI_2); // pi/2
static const qreal Q_MM_PER_INCH = 25.4;
inline int qIntSqrtInt(int v)
diff --git a/src/gui/painting/qrasterizer.cpp b/src/gui/painting/qrasterizer.cpp
index 426dd846ed..75bf31cde1 100644
--- a/src/gui/painting/qrasterizer.cpp
+++ b/src/gui/painting/qrasterizer.cpp
@@ -712,20 +712,10 @@ static inline bool q26Dot6Compare(qreal p1, qreal p2)
return int((p2 - p1) * 64.) == 0;
}
-static inline qreal qFloorF(qreal v)
-{
-#ifdef QT_USE_MATH_H_FLOATS
- if (sizeof(qreal) == sizeof(float))
- return floorf(v);
- else
-#endif
- return floor(v);
-}
-
static inline QPointF snapTo26Dot6Grid(const QPointF &p)
{
- return QPointF(qFloorF(p.x() * 64) * (1 / qreal(64)),
- qFloorF(p.y() * 64) * (1 / qreal(64)));
+ return QPointF(std::floor(p.x() * 64) * (1 / qreal(64)),
+ std::floor(p.y() * 64) * (1 / qreal(64)));
}
/*
@@ -832,7 +822,7 @@ void QRasterizer::rasterizeLine(const QPointF &a, const QPointF &b, qreal width,
return;
// adjust width which is given relative to |b - a|
- width *= sqrt(w0 / w);
+ width *= qSqrt(w0 / w);
}
QSpanBuffer buffer(d->blend, d->data, d->clipRect);