Commit 3862ee73450f408d2b140be84ebb67568f86c62d
1 parent
ecca08aa
Exists in
master
and in
7 other branches
--no commit message
Showing
1 changed file
with
124 additions
and
159 deletions
Show diff stats
ferramentas/editorol/editorol.js
@@ -1326,22 +1326,14 @@ i3GEO.editorOL = | @@ -1326,22 +1326,14 @@ i3GEO.editorOL = | ||
1326 | temp.className = "editorOLapagaItemInactive olButton"; | 1326 | temp.className = "editorOLapagaItemInactive olButton"; |
1327 | temp.title = $trad("excsel"); | 1327 | temp.title = $trad("excsel"); |
1328 | temp.onclick = function(){ | 1328 | temp.onclick = function(){ |
1329 | - var x, i, s, nsel = i3GEO.editorOL.idsSelecionados.length; | 1329 | + var x, nsel = i3GEO.editorOL.idsSelecionados.length; |
1330 | i3GEO.editorOL.featuresBackup = []; | 1330 | i3GEO.editorOL.featuresBackup = []; |
1331 | i3GEO.editorOL.marcaBotao(); | 1331 | i3GEO.editorOL.marcaBotao(); |
1332 | if(nsel > 0){ | 1332 | if(nsel > 0){ |
1333 | x = window.confirm($trad("excsel") + "?"); | 1333 | x = window.confirm($trad("excsel") + "?"); |
1334 | if(x){ | 1334 | if(x){ |
1335 | - s = i3GEO.desenho.layergrafico.getSource(); | ||
1336 | - for(i=0; i<nsel; i++){ | ||
1337 | - f = s.getFeatureById(i3GEO.editorOL.idsSelecionados[i]); | ||
1338 | - if(f){ | ||
1339 | - i3GEO.editorOL.featuresBackup.push(f.clone()); | ||
1340 | - s.removeFeature(f); | ||
1341 | - } | ||
1342 | - } | ||
1343 | - s.changed(); | ||
1344 | - i3GEO.editorOL.idsSelecionados = []; | 1335 | + i3GEO.editorOL.removeFeaturesSel(); |
1336 | + i3GEO.desenho.layergrafico.getSource().changed(); | ||
1345 | } | 1337 | } |
1346 | } | 1338 | } |
1347 | else{ | 1339 | else{ |
@@ -1457,33 +1449,54 @@ i3GEO.editorOL = | @@ -1457,33 +1449,54 @@ i3GEO.editorOL = | ||
1457 | }; | 1449 | }; |
1458 | i3GEOpanelEditor.appendChild(temp); | 1450 | i3GEOpanelEditor.appendChild(temp); |
1459 | } | 1451 | } |
1460 | - | 1452 | + //TODO abrir em uma janela flutuante interna |
1453 | + if (botoes.ajuda === true) { | ||
1454 | + temp = document.createElement("div"); | ||
1455 | + temp.className = "editorOLajudaItemInactive olButton"; | ||
1456 | + temp.title = $trad("s1"); | ||
1457 | + temp.onclick = function(){ | ||
1458 | + if(i3GEO.configura && i3GEO.configura.locaplic){ | ||
1459 | + window.open(i3GEO.configura.locaplic + "/mashups/openlayers_ajuda.php"); | ||
1460 | + } | ||
1461 | + else{ | ||
1462 | + window.open("openlayers_ajuda.php"); | ||
1463 | + } | ||
1464 | + }; | ||
1465 | + i3GEOpanelEditor.appendChild(temp); | ||
1466 | + } | ||
1467 | + if (botoes.fecha === true) { | ||
1468 | + temp = document.createElement("div"); | ||
1469 | + temp.className = "editorOLfechaItemInactive olButton"; | ||
1470 | + temp.title = $trad("x74"); | ||
1471 | + temp.onclick = function(){ | ||
1472 | + i3GEO.editorOL.unselTodos(); | ||
1473 | + i3GEO.editorOL.featuresBackup = []; | ||
1474 | + i3GEO.editorOL.marcaBotao(); | ||
1475 | + i3GEO.eventos.cliquePerm.ativa(); | ||
1476 | + $i("i3GEObarraEdicao").style.display = "none"; | ||
1477 | + }; | ||
1478 | + i3GEOpanelEditor.appendChild(temp); | ||
1479 | + } | ||
1480 | + if (botoes.tools === true) { | ||
1481 | + temp = document.createElement("div"); | ||
1482 | + temp.className = "editorOLtoolsItemInactive olButton"; | ||
1483 | + temp.title = $trad("u15a"); | ||
1484 | + temp.onclick = function(){ | ||
1485 | + // fora do i3geo, usa o jsts | ||
1486 | + if (i3GEO.php) { | ||
1487 | + i3GEO.editorOL.ferramentas(); | ||
1488 | + } else { | ||
1489 | + i3GEO.editorOL.carregajts("i3GEO.editorOL.ferramentas()"); | ||
1490 | + } | ||
1491 | + }; | ||
1492 | + i3GEOpanelEditor.appendChild(temp); | ||
1493 | + } | ||
1461 | 1494 | ||
1462 | i3GEOpanelEditor.style.width = i3GEOpanelEditor.getElementsByTagName("div").length * 33 + "px"; | 1495 | i3GEOpanelEditor.style.width = i3GEOpanelEditor.getElementsByTagName("div").length * 33 + "px"; |
1463 | i3GEO.editorOL.mapa.getViewport().getElementsByClassName("ol-overlaycontainer-stopevent")[0].appendChild(i3GEOpanelEditor); | 1496 | i3GEO.editorOL.mapa.getViewport().getElementsByClassName("ol-overlaycontainer-stopevent")[0].appendChild(i3GEOpanelEditor); |
1464 | 1497 | ||
1465 | /* | 1498 | /* |
1466 | 1499 | ||
1467 | - if (botoes.tools === true && i3GEO.php) { | ||
1468 | - | ||
1469 | - button = new OpenLayers.Control.Button({ | ||
1470 | - displayClass : "editorOLtools", | ||
1471 | - trigger : function() { | ||
1472 | - // fora do i3geo, usa o jsts | ||
1473 | - if (i3GEO.php) { | ||
1474 | - i3GEO.editorOL.ferramentas(); | ||
1475 | - } else { | ||
1476 | - i3GEO.editorOL.carregajts("i3GEO.editorOL.ferramentas()"); | ||
1477 | - } | ||
1478 | - | ||
1479 | - }, | ||
1480 | - title : $trad("u15a"), | ||
1481 | - type : OpenLayers.Control.TYPE_BUTTON | ||
1482 | - }); | ||
1483 | - controles.push(button); | ||
1484 | - adiciona = true; | ||
1485 | - | ||
1486 | - } | ||
1487 | if (botoes.propriedades === true) { | 1500 | if (botoes.propriedades === true) { |
1488 | 1501 | ||
1489 | button = new OpenLayers.Control.Button({ | 1502 | button = new OpenLayers.Control.Button({ |
@@ -1512,86 +1525,6 @@ i3GEO.editorOL = | @@ -1512,86 +1525,6 @@ i3GEO.editorOL = | ||
1512 | adiciona = true; | 1525 | adiciona = true; |
1513 | 1526 | ||
1514 | } | 1527 | } |
1515 | - if (botoes.ajuda === true) { | ||
1516 | - | ||
1517 | - button = new OpenLayers.Control.Button({ | ||
1518 | - displayClass : "editorOLajuda", | ||
1519 | - trigger : function() { | ||
1520 | - try { | ||
1521 | - window.open(i3GEO.configura.locaplic + "/mashups/openlayers_ajuda.php"); | ||
1522 | - } catch (e) { | ||
1523 | - window.open("openlayers_ajuda.php"); | ||
1524 | - } | ||
1525 | - }, | ||
1526 | - title : $trad("s1"), | ||
1527 | - type : OpenLayers.Control.TYPE_BUTTON | ||
1528 | - }); | ||
1529 | - controles.push(button); | ||
1530 | - adiciona = true; | ||
1531 | - | ||
1532 | - } | ||
1533 | - if (botoes.fecha === true) { | ||
1534 | - | ||
1535 | - button = new OpenLayers.Control.Button({ | ||
1536 | - displayClass : "editorOLfecha", | ||
1537 | - trigger : function() { | ||
1538 | - var temp = window.confirm($trad("x94")); | ||
1539 | - if (i3GEO.eventos) { | ||
1540 | - i3GEO.eventos.cliquePerm.ativa(); | ||
1541 | - } | ||
1542 | - i3GEOpanelEditor.destroy(); | ||
1543 | - try { | ||
1544 | - YAHOO.temaativo.container.panel.destroy(); | ||
1545 | - } catch (e) { | ||
1546 | - } | ||
1547 | - try { | ||
1548 | - YAHOO.procura.container.panel.destroy(); | ||
1549 | - } catch (e) { | ||
1550 | - } | ||
1551 | - try { | ||
1552 | - YAHOO.editorOL.container.panel.destroy(); | ||
1553 | - } catch (e) { | ||
1554 | - } | ||
1555 | - try { | ||
1556 | - YAHOO.editorOL.listaGeometrias.panel.destroy(); | ||
1557 | - } catch (e) { | ||
1558 | - } | ||
1559 | - // try{YAHOO.panelpropriedadesEditor.panel.destroy();}catch(e){} | ||
1560 | - // try{YAHOO.editorOL.panellistagEditor.panel.destroy();}catch(e){} | ||
1561 | - try { | ||
1562 | - YAHOO.editorOL.ferramentas.panel.destroy(); | ||
1563 | - } catch (e) { | ||
1564 | - } | ||
1565 | - // try{YAHOO.panelprocura.panel.destroy();}catch(e){} | ||
1566 | - try { | ||
1567 | - YAHOO.legendaeditorOL.container.panel.destroy(); | ||
1568 | - } catch (e) { | ||
1569 | - } | ||
1570 | - try { | ||
1571 | - YAHOO.salvaGeometrias.container.panel.destroy(); | ||
1572 | - } catch (e) { | ||
1573 | - } | ||
1574 | - if (temp === true) { | ||
1575 | - try { | ||
1576 | - if (i3GEO.desenho.layergrafico) { | ||
1577 | - i3GEO.editorOL.mapa.removeLayer(i3GEO.desenho.layergrafico); | ||
1578 | - delete (i3GEO.desenho.layergrafico); | ||
1579 | - } | ||
1580 | - if (i3GEO.editorOL.backup) { | ||
1581 | - i3GEO.editorOL.mapa.removeLayer(i3GEO.editorOL.backup); | ||
1582 | - delete (i3GEO.editorOL.backup); | ||
1583 | - } | ||
1584 | - } catch (e) { | ||
1585 | - } | ||
1586 | - } | ||
1587 | - }, | ||
1588 | - title : $trad("x74"), | ||
1589 | - type : OpenLayers.Control.TYPE_BUTTON | ||
1590 | - }); | ||
1591 | - controles.push(button); | ||
1592 | - adiciona = true; | ||
1593 | - | ||
1594 | - } | ||
1595 | if (botoes.identifica === true) { | 1528 | if (botoes.identifica === true) { |
1596 | //TODO incluir codigo ol3 | 1529 | //TODO incluir codigo ol3 |
1597 | 1530 | ||
@@ -1706,6 +1639,19 @@ i3GEO.editorOL = | @@ -1706,6 +1639,19 @@ i3GEO.editorOL = | ||
1706 | } | 1639 | } |
1707 | */ | 1640 | */ |
1708 | }, | 1641 | }, |
1642 | + removeFeaturesSel : function(){ | ||
1643 | + var s, i, nsel, f; | ||
1644 | + nsel = i3GEO.editorOL.idsSelecionados.length; | ||
1645 | + s = i3GEO.desenho.layergrafico.getSource(); | ||
1646 | + for(i=0; i<nsel; i++){ | ||
1647 | + f = s.getFeatureById(i3GEO.editorOL.idsSelecionados[i]); | ||
1648 | + if(f){ | ||
1649 | + i3GEO.editorOL.featuresBackup.push(f.clone()); | ||
1650 | + s.removeFeature(f); | ||
1651 | + } | ||
1652 | + } | ||
1653 | + i3GEO.editorOL.idsSelecionados = []; | ||
1654 | + }, | ||
1709 | mudaSimbolo : function(estilo, id) { | 1655 | mudaSimbolo : function(estilo, id) { |
1710 | var valor = $i(id).value, geos = i3GEO.desenho.layergrafico.selectedFeatures, n = geos.length, i; | 1656 | var valor = $i(id).value, geos = i3GEO.desenho.layergrafico.selectedFeatures, n = geos.length, i; |
1711 | i3GEO.editorOL.simbologia[estilo] = valor; | 1657 | i3GEO.editorOL.simbologia[estilo] = valor; |
@@ -1971,7 +1917,7 @@ i3GEO.editorOL = | @@ -1971,7 +1917,7 @@ i3GEO.editorOL = | ||
1971 | YAHOO.editorOL.listaGeometrias.panel.render(document.body); | 1917 | YAHOO.editorOL.listaGeometrias.panel.render(document.body); |
1972 | } | 1918 | } |
1973 | var id, temp, geos = i3GEO.desenho.layergrafico.getSource().getFeatures(), n = geos.length, ins = "<table class=lista4 >"; | 1919 | var id, temp, geos = i3GEO.desenho.layergrafico.getSource().getFeatures(), n = geos.length, ins = "<table class=lista4 >"; |
1974 | - ins += "<tr><td><i>" + $trad("u6") + "</i></td><td><i>" + $trad("opcoes") + "</i></td><td></td><td></td></tr>"; | 1920 | + ins += "<tr><td><i>" + $trad("u6") + "</i></td><td><i>" + $trad("opcoes") + "</i></td><td></td></tr>"; |
1975 | 1921 | ||
1976 | while (n > 0) { | 1922 | while (n > 0) { |
1977 | n -= 1; | 1923 | n -= 1; |
@@ -1983,9 +1929,7 @@ i3GEO.editorOL = | @@ -1983,9 +1929,7 @@ i3GEO.editorOL = | ||
1983 | + id | 1929 | + id |
1984 | + "\")'>seleciona</td><td style='cursor:pointer;color:blue' onclick='javascript:i3GEO.editorOL.unselFeature(\"" | 1930 | + "\")'>seleciona</td><td style='cursor:pointer;color:blue' onclick='javascript:i3GEO.editorOL.unselFeature(\"" |
1985 | + id | 1931 | + id |
1986 | - + "\")'>limpa</td><td style='cursor:pointer;color:blue' onclick='javascript:i3GEO.editorOL.flashFeaturesI(\"" | ||
1987 | - + id | ||
1988 | - + "\")'>brilha</td></tr>"; | 1932 | + + "\")'>limpa</td></tr>"; |
1989 | } | 1933 | } |
1990 | } | 1934 | } |
1991 | ins += "</table>"; | 1935 | ins += "</table>"; |
@@ -2002,6 +1946,7 @@ i3GEO.editorOL = | @@ -2002,6 +1946,7 @@ i3GEO.editorOL = | ||
2002 | temp.style.height = "100px"; | 1946 | temp.style.height = "100px"; |
2003 | temp.innerHTML = ins; | 1947 | temp.innerHTML = ins; |
2004 | }, | 1948 | }, |
1949 | + //TODO incuir um botao para executar a operacao ao inves do evento onchange | ||
2005 | ferramentas : function() { | 1950 | ferramentas : function() { |
2006 | if (!document.getElementById("panelferramentasEditor")) { | 1951 | if (!document.getElementById("panelferramentasEditor")) { |
2007 | YAHOO.namespace("editorOL.ferramentas"); | 1952 | YAHOO.namespace("editorOL.ferramentas"); |
@@ -2017,6 +1962,7 @@ i3GEO.editorOL = | @@ -2017,6 +1962,7 @@ i3GEO.editorOL = | ||
2017 | "" + '<p class=paragrafo >' | 1962 | "" + '<p class=paragrafo >' |
2018 | + $trad("opsel") | 1963 | + $trad("opsel") |
2019 | + ':</p>' | 1964 | + ':</p>' |
1965 | + + '<div class=styled-select >' | ||
2020 | + '<select onchange="i3GEO.editorOL.processageo(this.value);this.value = \'\'" >' | 1966 | + '<select onchange="i3GEO.editorOL.processageo(this.value);this.value = \'\'" >' |
2021 | + ' <option value="">---</option>' | 1967 | + ' <option value="">---</option>' |
2022 | + ' <option value=union >União</option>'; | 1968 | + ' <option value=union >União</option>'; |
@@ -2028,7 +1974,7 @@ i3GEO.editorOL = | @@ -2028,7 +1974,7 @@ i3GEO.editorOL = | ||
2028 | + ' <option value=symdifference >Diferença simétrica</option>'; | 1974 | + ' <option value=symdifference >Diferença simétrica</option>'; |
2029 | } | 1975 | } |
2030 | ins += | 1976 | ins += |
2031 | - '</select>' + '<br><br><a class=paragrafo href=# onclick="i3GEO.desenho.layergrafico.destroyFeatures()" >Apaga tudo</a>'; | 1977 | + '</select></div>'; |
2032 | 1978 | ||
2033 | YAHOO.editorOL.ferramentas.panel.setBody(ins); | 1979 | YAHOO.editorOL.ferramentas.panel.setBody(ins); |
2034 | if (i3GEO && typeof i3GEO != undefined && i3GEO != "") { | 1980 | if (i3GEO && typeof i3GEO != undefined && i3GEO != "") { |
@@ -2083,11 +2029,31 @@ i3GEO.editorOL = | @@ -2083,11 +2029,31 @@ i3GEO.editorOL = | ||
2083 | if (operacao === "") { | 2029 | if (operacao === "") { |
2084 | return; | 2030 | return; |
2085 | } | 2031 | } |
2086 | - var geosel = i3GEO.desenho.layergrafico.selectedFeatures, polis, linhas, pontos, temp; | ||
2087 | - if (geosel.length > 0) { | ||
2088 | - polis = i3GEO.editorOL.retornaGeometriasTipo(geosel, "OpenLayers.Geometry.Polygon"); | ||
2089 | - linhas = i3GEO.editorOL.retornaGeometriasTipo(geosel, "OpenLayers.Geometry.LineString"); | ||
2090 | - pontos = i3GEO.editorOL.retornaGeometriasTipo(geosel, "OpenLayers.Geometry.Point"); | 2032 | + var polis, linhas, pontos, temp, nsel = i3GEO.editorOL.idsSelecionados.length; |
2033 | + | ||
2034 | + /* | ||
2035 | + | ||
2036 | + var s, i, nsel, id, clone; | ||
2037 | + s = i3GEO.desenho.layergrafico.getSource(); | ||
2038 | + nsel = i3GEO.editorOL.idsSelecionados.length; | ||
2039 | + for(i=0; i<nsel; i++){ | ||
2040 | + f = s.getFeatureById(i3GEO.editorOL.idsSelecionados[i]); | ||
2041 | + if(f){ | ||
2042 | + clone = f.clone(); | ||
2043 | + id = f.getId(); | ||
2044 | + s.removeFeature(f); | ||
2045 | + clone.setId(id); | ||
2046 | + s.addFeature(clone); | ||
2047 | + } | ||
2048 | + } | ||
2049 | + s.changed(); | ||
2050 | + | ||
2051 | + */ | ||
2052 | + | ||
2053 | + if (nsel > 0) { | ||
2054 | + polis = i3GEO.editorOL.retornaGeometriasTipo("Polygon"); | ||
2055 | + linhas = i3GEO.editorOL.retornaGeometriasTipo("LineString"); | ||
2056 | + pontos = i3GEO.editorOL.retornaGeometriasTipo("Point"); | ||
2091 | temp = function(retorno) { | 2057 | temp = function(retorno) { |
2092 | if (i3GEO.janela) { | 2058 | if (i3GEO.janela) { |
2093 | i3GEO.janela.fechaAguarde("i3GEO.editorPoli"); | 2059 | i3GEO.janela.fechaAguarde("i3GEO.editorPoli"); |
@@ -2144,17 +2110,18 @@ i3GEO.editorOL = | @@ -2144,17 +2110,18 @@ i3GEO.editorOL = | ||
2144 | i3GEO.php.funcoesGeometriasWkt(temp, pontos.join("|"), operacao); | 2110 | i3GEO.php.funcoesGeometriasWkt(temp, pontos.join("|"), operacao); |
2145 | } | 2111 | } |
2146 | } | 2112 | } |
2113 | + i3GEO.desenho.layergrafico.getSource().changed(); | ||
2147 | return; | 2114 | return; |
2148 | } else { | 2115 | } else { |
2149 | i3GEO.janela.tempoMsg("Selecione pelo menos dois elementos"); | 2116 | i3GEO.janela.tempoMsg("Selecione pelo menos dois elementos"); |
2150 | } | 2117 | } |
2151 | }, | 2118 | }, |
2152 | merge : function(geoms) { | 2119 | merge : function(geoms) { |
2153 | - var n = geoms.length, w = new Wkt.Wkt(), g, m, i; | ||
2154 | - w.read(geoms[0].toString()); | 2120 | + var n = geoms.length, w = new Wkt.Wkt(), g, m, i, format = new ol.format.WKT(); |
2121 | + w.read(format.writeFeatures([geoms[0]])); | ||
2155 | if (n > 1) { | 2122 | if (n > 1) { |
2156 | for (i = 1; i < n; i++) { | 2123 | for (i = 1; i < n; i++) { |
2157 | - g = geoms[i].toString(); | 2124 | + g = format.writeFeatures([geoms[i]]); |
2158 | m = new Wkt.Wkt(); | 2125 | m = new Wkt.Wkt(); |
2159 | m.read(g); | 2126 | m.read(g); |
2160 | w.merge(m); | 2127 | w.merge(m); |
@@ -2163,28 +2130,34 @@ i3GEO.editorOL = | @@ -2163,28 +2130,34 @@ i3GEO.editorOL = | ||
2163 | return w.write(); | 2130 | return w.write(); |
2164 | }, | 2131 | }, |
2165 | uniaojts : function(geoms) { | 2132 | uniaojts : function(geoms) { |
2166 | - var n = geoms.length, rwkt = new jsts.io.WKTReader(), wwkt = new jsts.io.WKTWriter(), fwkt = new OpenLayers.Format.WKT(), g, i, uniao; | 2133 | + var n = geoms.length, |
2134 | + fwkt = new ol.format.WKT(), | ||
2135 | + rwkt = new jsts.io.WKTReader(), | ||
2136 | + wwkt = new jsts.io.WKTWriter(), | ||
2137 | + g, i, uniao; | ||
2167 | if (n > 1) { | 2138 | if (n > 1) { |
2168 | - uniao = (fwkt.read(geoms[0]).geometry).toString(); | 2139 | + uniao = fwkt.writeFeatures([geoms[0]]); |
2169 | uniao = rwkt.read(uniao); | 2140 | uniao = rwkt.read(uniao); |
2170 | for (i = 1; i <= n; i++) { | 2141 | for (i = 1; i <= n; i++) { |
2171 | - g = (fwkt.read(geoms[i]).geometry).toString(); | 2142 | + g = fwkt.writeFeatures([geoms[i]]); |
2172 | uniao = uniao.union(rwkt.read(g)); | 2143 | uniao = uniao.union(rwkt.read(g)); |
2173 | } | 2144 | } |
2174 | uniao = wwkt.write(uniao); | 2145 | uniao = wwkt.write(uniao); |
2175 | return [ | 2146 | return [ |
2176 | - fwkt.read(uniao) | 2147 | + fwkt.readFeatures(uniao) |
2177 | ]; | 2148 | ]; |
2178 | } else { | 2149 | } else { |
2179 | return false; | 2150 | return false; |
2180 | } | 2151 | } |
2181 | }, | 2152 | }, |
2182 | - retornaGeometriasTipo : function(features, tipo) { | ||
2183 | - var n = features.length, lista = [], i, temp; | 2153 | + retornaGeometriasTipo : function(tipo) { |
2154 | + var n = i3GEO.editorOL.idsSelecionados.length, lista = [], i, | ||
2155 | + s = i3GEO.desenho.layergrafico.getSource(), | ||
2156 | + fwkt = new ol.format.WKT(); | ||
2184 | for (i = 0; i < n; i++) { | 2157 | for (i = 0; i < n; i++) { |
2185 | - temp = features[i].geometry; | ||
2186 | - if (temp.CLASS_NAME == tipo) { | ||
2187 | - lista.push(temp); | 2158 | + f = s.getFeatureById(i3GEO.editorOL.idsSelecionados[i]); |
2159 | + if (f.getGeometry().getType() == tipo) { | ||
2160 | + lista.push(fwkt.writeFeatures([f])); | ||
2188 | } | 2161 | } |
2189 | } | 2162 | } |
2190 | return lista; | 2163 | return lista; |
@@ -2262,31 +2235,23 @@ i3GEO.editorOL = | @@ -2262,31 +2235,23 @@ i3GEO.editorOL = | ||
2262 | } | 2235 | } |
2263 | // i3GEO.editorOL.backup.removeFeatures(i3GEO.editorOL.backup.features); | 2236 | // i3GEO.editorOL.backup.removeFeatures(i3GEO.editorOL.backup.features); |
2264 | }, | 2237 | }, |
2265 | - //TODO remover? | ||
2266 | - substituiFeaturesSel : function(wkt) { | ||
2267 | - i3GEO.editorOL.guardaBackup(); | ||
2268 | - try { | ||
2269 | - var f, fwkt = new OpenLayers.Format.WKT(); | ||
2270 | - i3GEO.desenho.layergrafico.removeFeatures(i3GEO.desenho.layergrafico.selectedFeatures); | ||
2271 | - f = fwkt.read(wkt); | ||
2272 | - f["attributes"] = { | ||
2273 | - opacidade : i3GEO.editorOL.simbologia.opacidade, | ||
2274 | - texto : i3GEO.editorOL.simbologia.texto, | ||
2275 | - fillColor : i3GEO.editorOL.simbologia.fillColor, | ||
2276 | - strokeWidth : i3GEO.editorOL.simbologia.strokeWidth, | ||
2277 | - strokeColor : i3GEO.editorOL.simbologia.strokeColor, | ||
2278 | - pointRadius : i3GEO.editorOL.simbologia.pointRadius, | ||
2279 | - graphicName : i3GEO.editorOL.simbologia.graphicName | ||
2280 | - }; | ||
2281 | - i3GEO.desenho.layergrafico.addFeatures([ | ||
2282 | - f | ||
2283 | - ]); | ||
2284 | - if (document.getElementById("panellistagEditor")) { | ||
2285 | - i3GEO.editorOL.listaGeometrias(); | ||
2286 | - } | ||
2287 | - } catch (e) { | ||
2288 | - i3GEO.editorOL.restauraBackup(); | ||
2289 | - } | 2238 | + substituiFeaturesSel : function(f) { |
2239 | + i3GEO.editorOL.removeFeaturesSel(); | ||
2240 | + var fwkt = new ol.format.WKT(); | ||
2241 | + f = fwkt.readFeatures(f)[0]; | ||
2242 | + f.setStyle( | ||
2243 | + new ol.style.Style({ | ||
2244 | + stroke: new ol.style.Stroke({ | ||
2245 | + color: 'rgba(' + i3GEO.editorOL.simbologia.strokeColor + ',' + i3GEO.editorOL.simbologia.opacidade + ')', | ||
2246 | + width: i3GEO.editorOL.simbologia.strokeWidth | ||
2247 | + }), | ||
2248 | + fill: new ol.style.Fill({ | ||
2249 | + color: 'rgba(' + i3GEO.editorOL.simbologia.fillColor + ',' + i3GEO.editorOL.simbologia.opacidade + ')' | ||
2250 | + }) | ||
2251 | + }) | ||
2252 | + ); | ||
2253 | + f.setId(i3GEO.util.uid()); | ||
2254 | + i3GEO.desenho.layergrafico.getSource().addFeature(f); | ||
2290 | }, | 2255 | }, |
2291 | adicionaFeatureWkt : function(wkt, atributos) { | 2256 | adicionaFeatureWkt : function(wkt, atributos) { |
2292 | var f, fwkt = new OpenLayers.Format.WKT(); | 2257 | var f, fwkt = new OpenLayers.Format.WKT(); |