aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorGravatar reed <reed@google.com>2015-05-12 09:47:22 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-05-12 09:47:22 -0700
commit67d71c898249a7af3523b16c6a69895a63bfae0a (patch)
tree718e9b0eb395ffd67ec0e1bcf3074f0289f89600 /include
parent7da2e55ccbad4868a455c1c9f23e5f63bd99e916 (diff)
stop calling SkScalarDiv
BUG=skia: TBR= Review URL: https://codereview.chromium.org/1135053002
Diffstat (limited to 'include')
-rw-r--r--include/core/SkMatrix.h8
-rw-r--r--include/core/SkPoint.h10
-rw-r--r--include/core/SkScalar.h4
3 files changed, 20 insertions, 2 deletions
diff --git a/include/core/SkMatrix.h b/include/core/SkMatrix.h
index 89b3072f79..0252bc7101 100644
--- a/include/core/SkMatrix.h
+++ b/include/core/SkMatrix.h
@@ -28,7 +28,13 @@ public:
m.setScale(sx, sy);
return m;
}
-
+
+ static SkMatrix SK_WARN_UNUSED_RESULT MakeScale(SkScalar scale) {
+ SkMatrix m;
+ m.setScale(scale, scale);
+ return m;
+ }
+
static SkMatrix SK_WARN_UNUSED_RESULT MakeTrans(SkScalar dx, SkScalar dy) {
SkMatrix m;
m.setTranslate(dx, dy);
diff --git a/include/core/SkPoint.h b/include/core/SkPoint.h
index 4a97391c70..52d01ae88c 100644
--- a/include/core/SkPoint.h
+++ b/include/core/SkPoint.h
@@ -348,6 +348,16 @@ struct SK_API SkPoint {
fY -= v.fY;
}
+ SkPoint operator*(SkScalar scale) const {
+ return Make(fX * scale, fY * scale);
+ }
+
+ SkPoint& operator*=(SkScalar scale) {
+ fX *= scale;
+ fY *= scale;
+ return *this;
+ }
+
/**
* Returns true if both X and Y are finite (not infinity or NaN)
*/
diff --git a/include/core/SkScalar.h b/include/core/SkScalar.h
index 443454a2ef..2c42eb8e89 100644
--- a/include/core/SkScalar.h
+++ b/include/core/SkScalar.h
@@ -184,7 +184,9 @@ static inline SkScalar SkScalarSquare(SkScalar x) { return x * x; }
#define SkScalarMul(a, b) ((SkScalar)(a) * (b))
#define SkScalarMulAdd(a, b, c) ((SkScalar)(a) * (b) + (c))
-#define SkScalarDiv(a, b) ((SkScalar)(a) / (b))
+#ifdef SK_SUPPORT_LEGACY_SCALAR_DIV
+ #define SkScalarDiv(a, b) ((SkScalar)(a) / (b))
+#endif
#define SkScalarMulDiv(a, b, c) ((SkScalar)(a) * (b) / (c))
#define SkScalarInvert(x) (SK_Scalar1 / (x))
#define SkScalarFastInvert(x) (SK_Scalar1 / (x))