diff options
| author | Lex Neva <github.com@lexneva.name> | 2018-06-21 15:41:06 -0400 |
|---|---|---|
| committer | Lex Neva <github.com@lexneva.name> | 2018-06-21 15:41:06 -0400 |
| commit | e29096ee138bd674e96a369a853d75eb7c919823 (patch) | |
| tree | 963188c1d0ec3fa010fe353e2d97be64b6856066 /lib/svg/path.py | |
| parent | c8fe52f136c77906741fdab7093942eeb363a209 (diff) | |
add commands framework
Diffstat (limited to 'lib/svg/path.py')
| -rw-r--r-- | lib/svg/path.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/svg/path.py b/lib/svg/path.py new file mode 100644 index 00000000..a8012774 --- /dev/null +++ b/lib/svg/path.py @@ -0,0 +1,20 @@ +import simpletransform +import cubicsuperpath + +from .units import get_viewbox_transform + +def apply_transforms(path, node): + # start with the identity transform + transform = [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0]] + + # combine this node's transform with all parent groups' transforms + transform = simpletransform.composeParents(node, transform) + + # add in the transform implied by the viewBox + viewbox_transform = get_viewbox_transform(node.getroottree().getroot()) + transform = simpletransform.composeTransform(viewbox_transform, transform) + + # apply the combined transform to this node's path + simpletransform.applyTransformToPath(transform, path) + + return path |
