Chromium Code Reviews| Index: include/core/SkPath.h |
| diff --git a/include/core/SkPath.h b/include/core/SkPath.h |
| index dd7a672cdd4456862fa3d2715177c18a20c35668..1ac0c8247d3a1933be828eb259d062cb2d4bc572 100644 |
| --- a/include/core/SkPath.h |
| +++ b/include/core/SkPath.h |
| @@ -702,25 +702,44 @@ public: |
| */ |
| void addPoly(const SkPoint pts[], int count, bool close); |
| + enum AddPathMode { |
| + /** Source path contours are added as new contours. |
| + */ |
| + kAppend_AddPathMode, |
| + /** Path is added by extending the last contour of the destination path |
| + with the first contour of the source path. If the last contour of |
| + the destination path is closed, it will be pseudo-extended by |
|
reed1
2014/02/10 21:03:14
lets assume dst and src each have only 1 contour
|
| + starting a new contour at the last point of the destination path |
| + and extending it with the first contour of the source path. It |
| + follows that if the first countour of the source path is closed, |
| + the new extended contour will close on the last point of the |
| + destination path. |
| + */ |
| + kExtend_AddPathMode |
| + }; |
| + |
| /** Add a copy of src to the path, offset by (dx,dy) |
| @param src The path to add as a new contour |
| @param dx The amount to translate the path in X as it is added |
| @param dx The amount to translate the path in Y as it is added |
| */ |
| - void addPath(const SkPath& src, SkScalar dx, SkScalar dy); |
| + void addPath(const SkPath& src, SkScalar dx, SkScalar dy, |
| + AddPathMode mode = kAppend_AddPathMode); |
| /** Add a copy of src to the path |
| */ |
| - void addPath(const SkPath& src) { |
| + void addPath(const SkPath& src, AddPathMode mode = kAppend_AddPathMode) { |
| SkMatrix m; |
| m.reset(); |
| - this->addPath(src, m); |
| + this->addPath(src, m, mode); |
| } |
| /** Add a copy of src to the path, transformed by matrix |
| @param src The path to add as a new contour |
| + @param matrix Transform applied to src |
| + @param mode Determines how path is added |
| */ |
| - void addPath(const SkPath& src, const SkMatrix& matrix); |
| + void addPath(const SkPath& src, const SkMatrix& matrix, AddPathMode mode = kAppend_AddPathMode); |
| /** |
| * Same as addPath(), but reverses the src input |