diff options
Diffstat (limited to 'experimental/svg/model/SkSVGTransformableNode.cpp')
-rw-r--r-- | experimental/svg/model/SkSVGTransformableNode.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/experimental/svg/model/SkSVGTransformableNode.cpp b/experimental/svg/model/SkSVGTransformableNode.cpp index 8a095ac62a..b2ad0b1ab9 100644 --- a/experimental/svg/model/SkSVGTransformableNode.cpp +++ b/experimental/svg/model/SkSVGTransformableNode.cpp @@ -36,3 +36,16 @@ void SkSVGTransformableNode::onSetAttribute(SkSVGAttribute attr, const SkSVGValu break; } } + +void SkSVGTransformableNode::mapToParent(SkPath* path) const { + if (fTransform.value().isIdentity()) { + return; + } + + SkMatrix inv; + if (!fTransform.value().invert(&inv)) { + return; + } + + path->transform(inv); +} |