Chromium Code Reviews| Index: include/core/SkDraw.h |
| diff --git a/include/core/SkDraw.h b/include/core/SkDraw.h |
| index 772e11e00d7a4de2e1cca94e6a75856051835abb..91830946791823b66736e99b8000176314e045ca 100644 |
| --- a/include/core/SkDraw.h |
| +++ b/include/core/SkDraw.h |
| @@ -43,8 +43,15 @@ public: |
| * affect the geometry/rasterization, then the pre matrix can just be |
| * pre-concated with the current matrix. |
| */ |
| - void drawPath(const SkPath& srcPath, const SkPaint&, |
| - const SkMatrix* prePathMatrix, bool pathIsMutable) const; |
| + void drawPath(const SkPath& path, const SkPaint& paint, |
| + const SkMatrix* prePathMatrix, bool pathIsMutable) const { |
| + this->drawPath(path, paint, prePathMatrix, pathIsMutable, false); |
| + } |
| + |
| + void drawPath(const SkPath& path, const SkPaint& paint) const { |
| + this->drawPath(path, paint, NULL, false, false); |
| + } |
| + |
| void drawBitmap(const SkBitmap&, const SkMatrix&, const SkPaint&) const; |
| void drawSprite(const SkBitmap&, int x, int y, const SkPaint&) const; |
| void drawText(const char text[], size_t byteLength, SkScalar x, |
| @@ -65,8 +72,14 @@ public: |
| const uint16_t indices[], int ptCount, |
| const SkPaint& paint) const; |
| - void drawPath(const SkPath& src, const SkPaint& paint) const { |
| - this->drawPath(src, paint, NULL, false); |
| + /** |
| + * Overwrite the target with the path's coverage (i.e. its mask). |
| + * Will overwrite the entire device, so it need not be zero'd first. |
| + * |
| + * Only device A8 is supported right now. |
| + */ |
| + void drawPathCoverage(const SkPath& src, const SkPaint& paint) const { |
|
bsalomon
2013/11/04 14:50:13
Should it take a paint? What other than the AA fla
reed1
2013/11/04 20:00:37
stroking parameters are support, including pathEff
|
| + this->drawPath(src, paint, NULL, false, true); |
| } |
| /** Helper function that creates a mask from a path and an optional maskfilter. |
| @@ -107,6 +120,9 @@ private: |
| void drawDevMask(const SkMask& mask, const SkPaint&) const; |
| void drawBitmapAsMask(const SkBitmap&, const SkPaint&) const; |
| + void drawPath(const SkPath&, const SkPaint&, const SkMatrix* preMatrix, |
| + bool pathIsMutable, bool drawCoverage) const; |
| + |
| /** |
| * Return the current clip bounds, in local coordinates, with slop to account |
| * for antialiasing or hairlines (i.e. device-bounds outset by 1, and then |