MCPcopy Index your code
hub / github.com/tdewolff/minify / createPathProxyFromString

Function createPathProxyFromString

_benchmarks/sample_echarts.js:12834–13046  ·  view source on GitHub ↗
(data)

Source from the content-addressed store, hash-verified

12832 var commandReg = /([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig;
12833 var numberReg = /-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;
12834 function createPathProxyFromString(data) {
12835 var path = new PathProxy();
12836 if (!data) {
12837 return path;
12838 }
12839 var cpx = 0;
12840 var cpy = 0;
12841 var subpathX = cpx;
12842 var subpathY = cpy;
12843 var prevCmd;
12844 var CMD = PathProxy.CMD;
12845 var cmdList = data.match(commandReg);
12846 if (!cmdList) {
12847 return path;
12848 }
12849 for (var l = 0; l < cmdList.length; l++) {
12850 var cmdText = cmdList[l];
12851 var cmdStr = cmdText.charAt(0);
12852 var cmd = void 0;
12853 var p = cmdText.match(numberReg) || [];
12854 var pLen = p.length;
12855 for (var i = 0; i < pLen; i++) {
12856 p[i] = parseFloat(p[i]);
12857 }
12858 var off = 0;
12859 while (off < pLen) {
12860 var ctlPtx = void 0;
12861 var ctlPty = void 0;
12862 var rx = void 0;
12863 var ry = void 0;
12864 var psi = void 0;
12865 var fa = void 0;
12866 var fs = void 0;
12867 var x1 = cpx;
12868 var y1 = cpy;
12869 var len = void 0;
12870 var pathData = void 0;
12871 switch (cmdStr) {
12872 case 'l':
12873 cpx += p[off++];
12874 cpy += p[off++];
12875 cmd = CMD.L;
12876 path.addData(cmd, cpx, cpy);
12877 break;
12878 case 'L':
12879 cpx = p[off++];
12880 cpy = p[off++];
12881 cmd = CMD.L;
12882 path.addData(cmd, cpx, cpy);
12883 break;
12884 case 'm':
12885 cpx += p[off++];
12886 cpy += p[off++];
12887 cmd = CMD.M;
12888 path.addData(cmd, cpx, cpy);
12889 subpathX = cpx;
12890 subpathY = cpy;
12891 cmdStr = 'l';

Callers 1

createPathOptionsFunction · 0.85

Calls 1

processArcFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…