//') prev=actual track[order]=[chain.substring(0,1),chain.substring(1)] order++ } if(i==path.length){ if (!t.match(endcommand)){ actual=i chain= path.substring(prev,actual) //document.write(chain+ '
') prev=actual track[order]=[chain.substring(0,1),chain.substring(1)] order++ } } } //////////////// var type=0, xycoord=[], chain='' for (var i=1;i 2 ){ var cont=0, cont1=0 var xycoo=[] for (var a=0;a < xycoord.length;a++) { if(type=='a' || type=='A'){ if(a==2){ xycoo[cont1]=xycoord[cont] //cont+=3 cont1++ continue } } if(cont%2==0 && a < (xycoord.length-1)){ xycoo[cont1] = xycoord[cont]+','+xycoord[cont+1] cont1++ } cont++ } xycoord= xycoo } track[i][2]=[] for (var a=0;a< xycoord.length;a++) { track[i][2].push(xycoord[a]) } } ////////////////// var type=0, xycoord=[], chain='' var x=0, y=0, xy=[] , TXY=[] for (var i=1;i ' TXY[i]=[] TXY[i][0]=track[i][0] var cont=1 var cont1=1 for (var a=0;a< track[i][2].length;a++) { if(track[i][2][a].indexOf(',')>-1){ xy=track[i][2][a].split(',') x=parseFloat(xy[0]) y=parseFloat(xy[1]) TXY[i][cont]=[x,y] chain+=''+TXY[i][cont].join(',')+' ' cont++ }else{ if(track[i][2][a].length>0){ //if(TXY[i][0]!='a'){ //x=parseFloat(xy[0]) //y=parseFloat(xy[1]) //TXY[i][cont]=[x,y] TXY[i][cont] = parseFloat(track[i][2][a]) chain+=''+TXY[i][cont]+' ' cont++ }else{ } } } chain+='
' //document.write(chain) } var code = rebuild6(TXY) var codeString = rebuildPath(TXY) return code+'
'+codeString; } function rebuild6a(track){ return track.toSource() } function rebuild6(track){ var type=0, xycoord=[], chain='' var x=0, y=0, xy=[] for (var i=1;i ' for (var a=1;a < track[i].length;a++) { //chain+=track[i] if(track[i][a].length > 1){ if (a%2==0){ chain+='x:' + track[i][a][0]+' y:'+ track[i][a][1] + ' ' } else{ chain+='x:' + track[i][a][0]+' y:'+ track[i][a][1] + ' ' } }else{ chain+=''+ track[i][a] + ' ' } } chain+='
' } return chain } function rebuildPath(track){ var type=0, xycoord=[], chain='' var x=0, y=0, xy=[] for (var i=1;i 1){ if (a%2==0){ chain+='' + track[i][a][0]+','+ track[i][a][1] + ' ' } else{ chain+='' + track[i][a][0]+','+ track[i][a][1] + ' ' } }else{ chain+=''+ track[i][a] + ' ' } } chain+='' } return chain } var str="" var collection=[] collection[0]='M 13.637059,16.6015 L 57.704964,19.379419 L 100.25764,11.17193 L 128.66818,67.487934 L 78.791899,82.513953 L 25.885159,80.493648 L 13.637059,16.6015 z' //book //http://www.webtoolkit.info/demo/javascript-trim function trim(str, chars) { return ltrim(rtrim(str, chars), chars); } function ltrim(str, chars) { chars = chars || "\\s"; return str.replace(new RegExp("^[" + chars + "]+", "g"), ""); } function rtrim(str, chars) { chars = chars || "\\s"; return str.replace(new RegExp("[" + chars + "]+$", "g"), ""); } var paper function init(){ str=document.forms[0].inputstr.value paper = Raphael("viewerRaphael", 400, 400 ); var code= pathtrack(str) document.getElementById('divcode').innerHTML=code var path1shape = paper.path(str).attr({"fill": "none", "stroke": "#000000", "stroke-width": 6, "opacity": 1}) return false } // link: http://onlypaths.com/aaopblog/2010/5/18/index.htm // http://jsfiddle.net/fxCrH/ //]]>