OpenLayers OpenLayers

Ticket #1095: 1095.00.patch

File 1095.00.patch, 3.4 kB (added by fredj, 1 year ago)

replace all string concatenation, tests pass on IE

  • lib/OpenLayers/Renderer/VML.js

    old new  
    460460        this.setNodeDimension(node, geometry); 
    461461 
    462462        var resolution = this.getResolution(); 
     463        var path = []; 
    463464 
    464         var path = "m"
     465        path.push("m")
    465466        for (var i = 0; i < geometry.components.length; i++) { 
    466467            var x = (geometry.components[i].x/resolution); 
    467468            var y = (geometry.components[i].y/resolution); 
    468             path += " " + x.toFixed() + "," + y.toFixed() + " l "
     469            path.push(" " + x.toFixed() + "," + y.toFixed() + " l ")
    469470        } 
    470471        if (closeLine) { 
    471             path += " x"
     472            path.push(" x")
    472473        } 
    473         path += " e"
     474        path.push(" e")
    474475 
    475         node.path = path
     476        node.path = path.join("")
    476477    }, 
    477478 
    478479    /** 
     
    488489 
    489490        var resolution = this.getResolution(); 
    490491     
    491         var path = ""
     492        var path = []
    492493        for (var j = 0; j < geometry.components.length; j++) { 
    493494            var linearRing = geometry.components[j]; 
    494495 
    495             path += "m"
     496            path.push("m")
    496497            for (var i = 0; i < linearRing.components.length; i++) { 
    497498                var x = linearRing.components[i].x / resolution; 
    498499                var y = linearRing.components[i].y / resolution; 
    499                 path += " " + x.toFixed() + "," + y.toFixed(); 
     500                path.push(" " + x.toFixed() + "," + y.toFixed()); 
    500501                if (i==0) { 
    501                     path += " l"
     502                    path.push(" l")
    502503                } 
    503504            } 
    504             path += " x "
     505            path.push(" x ")
    505506        } 
    506         path += "e"
    507         node.path = path
     507        path.push("e")
     508        node.path = path.join("")
    508509    }, 
    509510 
    510511    /** 
     
    538539 
    539540        var resolution = this.getResolution(); 
    540541     
    541         var path = ""
     542        var path = []
    542543        for (var i = 0; i < geometry.components.length; i++) { 
    543544            var x = geometry.components[i].x / resolution; 
    544545            var y = geometry.components[i].y / resolution; 
    545546     
    546547            if ((i%3)==0 && (i/3)==0) { 
    547                 path += "m"
     548                path.push("m")
    548549            } else if ((i%3)==1) { 
    549                 path += " c"
     550                path.push(" c")
    550551            } 
    551             path += " " + x + "," + y
     552            path.push(" " + x + "," + y)
    552553        } 
    553         path += " x e"
     554        path.push(" x e")
    554555 
    555         node.path = path
     556        node.path = path.join("")
    556557    }, 
    557558 
    558559    /** 
     
    568569 
    569570        var resolution = this.getResolution(); 
    570571     
    571         var path = ""
     572        var path = []
    572573        for (var i = 0; i < geometry.components.length; i++) { 
    573574            var x = geometry.components[i].x / resolution; 
    574575            var y = geometry.components[i].y / resolution; 
    575576            if ((i%3)==0 && (i/3)==0) { 
    576                 path += "m"
     577                path.push("m")
    577578            } else if ((i%3)==1) { 
    578                 path += " c"
     579                path.push(" c")
    579580            } 
    580             path += " " + x + "," + y
     581            path.push(" " + x + "," + y)
    581582        } 
    582         path += " x e"
     583        path.push(" x e")
    583584 
    584         node.path = path
     585        node.path = path.join("")
    585586    }, 
    586587 
    587588    CLASS_NAME: "OpenLayers.Renderer.VML"