aboutsummaryrefslogtreecommitdiffhomepage
path: root/experimental/sksg/geometry/SkSGGeometryTransform.cpp
diff options
context:
space:
mode:
authorGravatar Florin Malita <fmalita@chromium.org>2018-01-29 16:31:14 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-01-29 21:57:44 +0000
commit38ea40eb750596c75b8ffb5c8f94bcb84b94a7c3 (patch)
tree966c9416f99c784dd84dcc31d91fe3bf790bfd11 /experimental/sksg/geometry/SkSGGeometryTransform.cpp
parenteed48b66eb083f01638d1a2126a2b49f1e2ddc8f (diff)
[skottie] Layer clip support
TBR= Change-Id: Ibf65efc69031f8f6e19f4f28cccab29c357e704d Reviewed-on: https://skia-review.googlesource.com/101540 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
Diffstat (limited to 'experimental/sksg/geometry/SkSGGeometryTransform.cpp')
-rw-r--r--experimental/sksg/geometry/SkSGGeometryTransform.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/experimental/sksg/geometry/SkSGGeometryTransform.cpp b/experimental/sksg/geometry/SkSGGeometryTransform.cpp
index 91367d48d6..5b366b9620 100644
--- a/experimental/sksg/geometry/SkSGGeometryTransform.cpp
+++ b/experimental/sksg/geometry/SkSGGeometryTransform.cpp
@@ -23,6 +23,14 @@ GeometryTransform::~GeometryTransform() {
this->unobserveInval(fMatrix);
}
+void GeometryTransform::onClip(SkCanvas* canvas, bool antiAlias) const {
+ canvas->clipPath(fTransformed, SkClipOp::kIntersect, antiAlias);
+}
+
+void GeometryTransform::onDraw(SkCanvas* canvas, const SkPaint& paint) const {
+ canvas->drawPath(fTransformed, paint);
+}
+
SkRect GeometryTransform::onRevalidate(InvalidationController* ic, const SkMatrix& ctm) {
SkASSERT(this->hasInval());
@@ -42,8 +50,4 @@ SkPath GeometryTransform::onAsPath() const {
return fTransformed;
}
-void GeometryTransform::onDraw(SkCanvas* canvas, const SkPaint& paint) const {
- canvas->drawPath(fTransformed, paint);
-}
-
} // namespace sksg