| Index: gm/addarc.cpp
|
| diff --git a/gm/addarc.cpp b/gm/addarc.cpp
|
| index 209fb59aef77cfc66a8dc2fdf8d0a5dda3816870..1386cdd0e78e6a2c985f0b20cdc8c6f2d247b61a 100644
|
| --- a/gm/addarc.cpp
|
| +++ b/gm/addarc.cpp
|
| @@ -10,6 +10,9 @@
|
| #include "SkRandom.h"
|
|
|
| class AddArcGM : public skiagm::GM {
|
| +public:
|
| + AddArcGM() : fRotate(0) {}
|
| +
|
| protected:
|
| SkString onShortName() SK_OVERRIDE { return SkString("addarc"); }
|
|
|
| @@ -29,20 +32,30 @@ protected:
|
| const SkScalar sweepAngle = 345;
|
| SkRandom rand;
|
|
|
| + SkScalar sign = 1;
|
| while (r.width() > paint.getStrokeWidth() * 3) {
|
| paint.setColor(rand.nextU() | (0xFF << 24));
|
| SkScalar startAngle = rand.nextUScalar1() * 360;
|
|
|
| + SkScalar speed = SkScalarSqrt(16 / r.width()) * 0.5f;
|
| + startAngle += fRotate * 360 * speed * sign;
|
| +
|
| SkPath path;
|
| path.addArc(r, startAngle, sweepAngle);
|
| canvas->drawPath(path, paint);
|
|
|
| r.inset(inset, inset);
|
| -
|
| + sign = -sign;
|
| }
|
| }
|
|
|
| + bool onAnimatePulse(SkMSec curr, SkMSec prev) SK_OVERRIDE {
|
| + fRotate = SkDoubleToScalar(fmod(curr * 0.001, 360));
|
| + return true;
|
| + }
|
| +
|
| private:
|
| + SkScalar fRotate;
|
| typedef skiagm::GM INHERITED;
|
| };
|
| DEF_GM( return new AddArcGM; )
|
|
|