Flutter Engine
The Flutter Engine
|
#include "include/core/SkPath.h"
#include "include/core/SkTypes.h"
#include "include/private/base/SkTArray.h"
#include "include/private/base/SkTDArray.h"
Go to the source code of this file.
Classes | |
class | SkOpBuilder |
Enumerations | |
enum | SkPathOp { kDifference_SkPathOp , kIntersect_SkPathOp , kUnion_SkPathOp , kXOR_SkPathOp , kReverseDifference_SkPathOp } |
Functions | |
bool SK_API | Op (const SkPath &one, const SkPath &two, SkPathOp op, SkPath *result) |
bool SK_API | Simplify (const SkPath &path, SkPath *result) |
bool SK_API | TightBounds (const SkPath &path, SkRect *result) |
bool SK_API | AsWinding (const SkPath &path, SkPath *result) |
enum SkPathOp |
The logical operations that can be performed when combining two paths.
Definition at line 22 of file SkPathOps.h.
Set the result with fill type winding to area equivalent to path. Returns true if successful. Does not detect if path contains contours which contain self-crossings or cross other contours; in these cases, may return true even though result does not fill same area as path.
Returns true if operation was able to produce a result; otherwise, result is unmodified. The result may be the input.
path | The path typically with fill type set to even odd. |
result | The equivalent path with fill type set to winding. |
Definition at line 408 of file SkPathOpsAsWinding.cpp.
Set this path to the result of applying the Op to this path and the specified path: this = (this op operand). The resulting path will be constructed from non-overlapping contours. The curve order is reduced where possible so that cubics may be turned into quadratics, and quadratics maybe turned into lines.
Returns true if operation was able to produce a result; otherwise, result is unmodified.
one | The first operand (for difference, the minuend) |
two | The second operand (for difference, the subtrahend) |
op | The operator to apply. |
result | The product of the operands. The result may be one of the inputs. |
Definition at line 383 of file SkPathOpsOp.cpp.
Set this path to a set of non-overlapping contours that describe the same area as the original path. The curve order is reduced where possible so that cubics may be turned into quadratics, and quadratics maybe turned into lines.
Returns true if operation was able to produce a result; otherwise, result is unmodified.
path | The path to simplify. |
result | The simplified path. The result may be the input. |
Definition at line 283 of file SkPathOpsSimplify.cpp.
Set the resulting rectangle to the tight bounds of the path.
path | The path measured. |
result | The tight bounds of the path. |
Definition at line 23 of file SkPathOpsTightBounds.cpp.