| Index: include/core/SkRRect.h
|
| diff --git a/include/core/SkRRect.h b/include/core/SkRRect.h
|
| index 37766219df3a50f182c422da76c4c33826822523..064e7be8e47b4150ee2869893dae2945e4c47aaa 100644
|
| --- a/include/core/SkRRect.h
|
| +++ b/include/core/SkRRect.h
|
| @@ -96,8 +96,13 @@ public:
|
| inline bool isRect() const { return kRect_Type == this->getType(); }
|
| inline bool isOval() const { return kOval_Type == this->getType(); }
|
| inline bool isSimple() const { return kSimple_Type == this->getType(); }
|
| + // TODO: should isSimpleCircular & isCircle take a tolerance? This could help
|
| + // instances where the mapping to device space is noisy.
|
| inline bool isSimpleCircular() const {
|
| - return this->isSimple() && fRadii[0].fX == fRadii[0].fY;
|
| + return this->isSimple() && SkScalarNearlyEqual(fRadii[0].fX, fRadii[0].fY);
|
| + }
|
| + inline bool isCircle() const {
|
| + return this->isOval() && SkScalarNearlyEqual(fRadii[0].fX, fRadii[0].fY);
|
| }
|
| inline bool isNinePatch() const { return kNinePatch_Type == this->getType(); }
|
| inline bool isComplex() const { return kComplex_Type == this->getType(); }
|
| @@ -140,6 +145,12 @@ public:
|
| return rr;
|
| }
|
|
|
| + static SkRRect MakeOval(const SkRect& oval) {
|
| + SkRRect rr;
|
| + rr.setOval(oval);
|
| + return rr;
|
| + }
|
| +
|
| /**
|
| * Set this RR to match the supplied oval. All x radii will equal half the
|
| * width and all y radii will equal half the height.
|
|
|