| /* | |
| * Copyright 2022 Google LLC | |
| * | |
| * Use of this source code is governed by a BSD-style license that can be | |
| * found in the LICENSE file. | |
| */ | |
| #ifndef SkPathUtils_DEFINED | |
| #define SkPathUtils_DEFINED | |
| #include "include/core/SkScalar.h" | |
| #include "include/core/SkTypes.h" | |
| class SkMatrix; | |
| class SkPaint; | |
| class SkPath; | |
| struct SkRect; | |
| namespace skpathutils { | |
| /** Returns the filled equivalent of the stroked path. | |
| @param src SkPath read to create a filled version | |
| @param paint SkPaint, from which attributes such as stroke cap, width, miter, and join, | |
| as well as pathEffect will be used. | |
| @param dst resulting SkPath; may be the same as src, but may not be nullptr | |
| @param cullRect optional limit passed to SkPathEffect | |
| @param resScale if > 1, increase precision, else if (0 < resScale < 1) reduce precision | |
| to favor speed and size | |
| @return true if the dst path was updated, false if it was not (e.g. if the path | |
| represents hairline and cannot be filled). | |
| */ | |
| SK_API bool FillPathWithPaint(const SkPath &src, const SkPaint &paint, SkPath *dst, | |
| const SkRect *cullRect, SkScalar resScale = 1); | |
| SK_API bool FillPathWithPaint(const SkPath &src, const SkPaint &paint, SkPath *dst, | |
| const SkRect *cullRect, const SkMatrix &ctm); | |
| SK_API bool FillPathWithPaint(const SkPath &src, const SkPaint &paint, SkPath *dst); | |
| } | |
| #endif |