MCPcopy
hub / github.com/adobe-webplatform/Snap.svg / extractTransform

Function extractTransform

src/element.js:92–123  ·  view source on GitHub ↗
(el, tstr)

Source from the content-addressed store, hash-verified

90 return this.string;
91 };
92 function extractTransform(el, tstr) {
93 if (tstr == null) {
94 var doReturn = true;
95 if (el.type == "linearGradient" || el.type == "radialGradient") {
96 tstr = el.node.getAttribute("gradientTransform");
97 } else if (el.type == "pattern") {
98 tstr = el.node.getAttribute("patternTransform");
99 } else {
100 tstr = el.node.getAttribute("transform");
101 }
102 if (!tstr) {
103 return new Snap.Matrix;
104 }
105 tstr = Snap._.svgTransform2string(tstr);
106 } else {
107 if (!Snap._.rgTransform.test(tstr)) {
108 tstr = Snap._.svgTransform2string(tstr);
109 } else {
110 tstr = Str(tstr).replace(/\.{3}|\u2026/g, el._.transform || "");
111 }
112 if (is(tstr, "array")) {
113 tstr = Snap.path ? Snap.path.toString.call(tstr) : Str(tstr);
114 }
115 el._.transform = tstr;
116 }
117 var m = Snap._.transform2matrix(tstr, el.getBBox(1));
118 if (doReturn) {
119 return m;
120 } else {
121 el.matrix = m;
122 }
123 }
124 /*\
125 * Element.transform
126 [ method ]

Callers 1

element.jsFile · 0.70

Calls 1

isFunction · 0.70

Tested by

no test coverage detected