use SkPoint, creating an alias for GrPoint
http://codereview.appspot.com/4498041/
git-svn-id: http://skia.googlecode.com/svn/trunk@1268 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/include/GrPathIter.h b/gpu/include/GrPathIter.h
index 5261f0f..2c84145 100644
--- a/gpu/include/GrPathIter.h
+++ b/gpu/include/GrPathIter.h
@@ -18,9 +18,8 @@
#ifndef GrPathIter_DEFINED
#define GrPathIter_DEFINED
-#include "GrTypes.h"
+#include "GrPoint.h"
-struct GrPoint;
struct GrRect;
/**
diff --git a/gpu/include/GrPoint.h b/gpu/include/GrPoint.h
index 8c540f0..332ec1e 100644
--- a/gpu/include/GrPoint.h
+++ b/gpu/include/GrPoint.h
@@ -20,7 +20,21 @@
#include "GrTypes.h"
#include "GrScalar.h"
+#include "SkPoint.h"
+#define GrPoint SkPoint
+#define GrVec SkVector
+
+struct GrIPoint16 {
+ int16_t fX, fY;
+
+ void set(intptr_t x, intptr_t y) {
+ fX = GrToS16(x);
+ fY = GrToS16(y);
+ }
+};
+
+#if 0
/**
* 2D Point struct
*/
@@ -336,7 +350,7 @@
// TODO: fixed point sqrt
return GrFloatToScalar(sqrtf(GrScalarToFloat(distanceToLineSegmentBetweenSqd(a,b))));
}
-
+#endif
#endif
diff --git a/gpu/include/GrScalar.h b/gpu/include/GrScalar.h
index 8a7f1bd..a26b67c 100644
--- a/gpu/include/GrScalar.h
+++ b/gpu/include/GrScalar.h
@@ -36,6 +36,7 @@
#define GR_ScalarMin SK_ScalarMin
#define GR_ScalarMax SK_ScalarMax
+#define GrIntToScalar(a) SkIntToScalar(a)
#define GrScalarHalf(a) SkScalarHalf(a)
#define GrScalarAve(a,b) SkScalarAve(a,b)
#define GrMul(a,b) SkScalarMul(a,b)
diff --git a/gpu/src/GrGpu.cpp b/gpu/src/GrGpu.cpp
index e18c4a4..66105db 100644
--- a/gpu/src/GrGpu.cpp
+++ b/gpu/src/GrGpu.cpp
@@ -238,10 +238,16 @@
if (NULL == fUnitSquareVertexBuffer) {
static const GrPoint DATA[] = {
+ { 0, 0 },
+ { GR_Scalar1, 0 },
+ { GR_Scalar1, GR_Scalar1 },
+ { 0, GR_Scalar1 }
+#if 0
GrPoint(0, 0),
GrPoint(GR_Scalar1,0),
GrPoint(GR_Scalar1,GR_Scalar1),
GrPoint(0, GR_Scalar1)
+#endif
};
static const size_t SIZE = sizeof(DATA);
diff --git a/gpu/src/GrMatrix.cpp b/gpu/src/GrMatrix.cpp
index 92a38ee..b169d19 100644
--- a/gpu/src/GrMatrix.cpp
+++ b/gpu/src/GrMatrix.cpp
@@ -631,7 +631,7 @@
if (maxStretch > 0) {
maxStretch = GrMul(GR_Scalar1 + GR_Scalar1 / 100, maxStretch);
}
- GrPoint origin = a.mapPoint(GrPoint(0,0));
+ GrPoint origin = a.mapPoint(GrPoint::Make(0,0));
for (int j = 0; j < 9; ++j) {
int mask, origMask = a.fTypeMask;
@@ -668,8 +668,8 @@
a.mapPerspective(&t2, &pt, 1); // full mult
GrAssert(t0 == t1 && t1 == t2);
if (maxStretch >= 0.f) {
- GrVec vec;
- vec.setBetween(t0, origin);
+ GrVec vec = origin - t0;
+// vec.setBetween(t0, origin);
GrScalar stretch = vec.length() / pt.distanceToOrigin();
GrAssert(stretch <= maxStretch);
}
diff --git a/gpu/src/GrPath.cpp b/gpu/src/GrPath.cpp
index 17ecd5d..3687b80 100644
--- a/gpu/src/GrPath.cpp
+++ b/gpu/src/GrPath.cpp
@@ -163,13 +163,13 @@
fConvexHint = iter->convexHint();
// first point of the subpath
- GrPoint firstPt(0,0);
+ GrPoint firstPt = { 0, 0 };
// first edge of the subpath
- GrVec firstVec(0,0);
+ GrVec firstVec = { 0, 0 };
// vec of most recently processed edge, that wasn't degenerate
- GrVec previousVec(0,0);
+ GrVec previousVec = { 0, 0 };
// most recently processed point
- GrPoint previousPt(0,0);
+ GrPoint previousPt = { 0, 0 };
// sign indicates whether we're bending left or right
GrScalar turnDir = 0;
@@ -239,8 +239,8 @@
if (numSubPaths < 2 && kNone_ConvexHint == fConvexHint) {
while (consumed < n) {
GrAssert(pts[consumed-1] == previousPt);
- GrVec vec;
- vec.setBetween(previousPt, pts[consumed]);
+ GrVec vec = pts[consumed] - previousPt;
+// vec.setBetween(previousPt, pts[consumed]);
if (vec.fX || vec.fY) {
if (subPathPts >= 2) {
if (0 == turnDir) {
@@ -269,8 +269,8 @@
(!subPathClosed && kEnd_PathCmd == cmd ))) {
// if an additional vector is needed to close the loop check
// that it validates against the previous vector.
- GrVec vec;
- vec.setBetween(previousPt, firstPt);
+ GrVec vec = firstPt - previousPt;
+// vec.setBetween(previousPt, firstPt);
if (vec.fX || vec.fY) {
if (!check_two_vecs(previousVec, vec, turnDir,
&xDir, &yDir, &flipX, &flipY)) {
diff --git a/gpu/src/GrPathUtils.cpp b/gpu/src/GrPathUtils.cpp
index 274dc49..115b0f6 100644
--- a/gpu/src/GrPathUtils.cpp
+++ b/gpu/src/GrPathUtils.cpp
@@ -52,10 +52,10 @@
}
GrPoint q[] = {
- GrPoint(GrScalarAve(p0.fX, p1.fX), GrScalarAve(p0.fY, p1.fY)),
- GrPoint(GrScalarAve(p1.fX, p2.fX), GrScalarAve(p1.fY, p2.fY)),
+ { GrScalarAve(p0.fX, p1.fX), GrScalarAve(p0.fY, p1.fY) },
+ { GrScalarAve(p1.fX, p2.fX), GrScalarAve(p1.fY, p2.fY) },
};
- GrPoint r(GrScalarAve(q[0].fX, q[1].fX), GrScalarAve(q[0].fY, q[1].fY));
+ GrPoint r = { GrScalarAve(q[0].fX, q[1].fX), GrScalarAve(q[0].fY, q[1].fY) };
pointsLeft >>= 1;
uint32_t a = generateQuadraticPoints(p0, q[0], r, tolSqd, points, pointsLeft);
@@ -91,15 +91,15 @@
return 1;
}
GrPoint q[] = {
- GrPoint(GrScalarAve(p0.fX, p1.fX), GrScalarAve(p0.fY, p1.fY)),
- GrPoint(GrScalarAve(p1.fX, p2.fX), GrScalarAve(p1.fY, p2.fY)),
- GrPoint(GrScalarAve(p2.fX, p3.fX), GrScalarAve(p2.fY, p3.fY))
+ { GrScalarAve(p0.fX, p1.fX), GrScalarAve(p0.fY, p1.fY) },
+ { GrScalarAve(p1.fX, p2.fX), GrScalarAve(p1.fY, p2.fY) },
+ { GrScalarAve(p2.fX, p3.fX), GrScalarAve(p2.fY, p3.fY) }
};
GrPoint r[] = {
- GrPoint(GrScalarAve(q[0].fX, q[1].fX), GrScalarAve(q[0].fY, q[1].fY)),
- GrPoint(GrScalarAve(q[1].fX, q[2].fX), GrScalarAve(q[1].fY, q[2].fY))
+ { GrScalarAve(q[0].fX, q[1].fX), GrScalarAve(q[0].fY, q[1].fY) },
+ { GrScalarAve(q[1].fX, q[2].fX), GrScalarAve(q[1].fY, q[2].fY) }
};
- GrPoint s(GrScalarAve(r[0].fX, r[1].fX), GrScalarAve(r[0].fY, r[1].fY));
+ GrPoint s = { GrScalarAve(r[0].fX, r[1].fX), GrScalarAve(r[0].fY, r[1].fY) };
pointsLeft >>= 1;
uint32_t a = generateCubicPoints(p0, q[0], r[0], s, tolSqd, points, pointsLeft);
uint32_t b = generateCubicPoints(s, r[1], q[2], p3, tolSqd, points, pointsLeft);
diff --git a/gpu/src/GrPathUtils.h b/gpu/src/GrPathUtils.h
index 97841dd..af05682 100644
--- a/gpu/src/GrPathUtils.h
+++ b/gpu/src/GrPathUtils.h
@@ -18,10 +18,9 @@
#define GrPathUtils_DEFINED
#include "GrNoncopyable.h"
-#include "GrScalar.h"
+#include "GrPoint.h"
class GrPathIter;
-struct GrPoint;
/**
* Utilities for evaluating paths.