Commit 8829c73e031c1c956529c9c7fc79b1dffd59357f
1 parent
8c9986e6
Exists in
master
and in
7 other branches
--no commit message
Showing
1 changed file
with
90 additions
and
8 deletions
Show diff stats
mashups/openlayers.js.php
| ... | ... | @@ -684,7 +684,16 @@ i3GEO.editorOL = { |
| 684 | 684 | //controle que permite o snap |
| 685 | 685 | // |
| 686 | 686 | i3GEOOLsnap = new OpenLayers.Control.Snapping({layer: i3GEO.editorOL.layergrafico}); |
| 687 | - //controles.push(i3GEOOLsnap); | |
| 687 | + i3GEOOLsplit = new OpenLayers.Control.Split({ | |
| 688 | + layer: i3GEO.editorOL.layergrafico, | |
| 689 | + source: i3GEO.editorOL.layergrafico, | |
| 690 | + tolerance: 0.0001, | |
| 691 | + eventListeners: { | |
| 692 | + aftersplit: function(event) { | |
| 693 | + i3GEO.editorOL.flashFeatures(event.features); | |
| 694 | + } | |
| 695 | + } | |
| 696 | + }); | |
| 688 | 697 | // |
| 689 | 698 | //adiciona o painel ao mapa se alguma op��o foi inserida |
| 690 | 699 | // |
| ... | ... | @@ -692,13 +701,6 @@ i3GEO.editorOL = { |
| 692 | 701 | i3GEOpanelEditor.addControls(controles); |
| 693 | 702 | i3GEO.editorOL.mapa.addControl(i3GEOpanelEditor); |
| 694 | 703 | } |
| 695 | - var target = i3GEOOLsnap.targets[0]; | |
| 696 | - target["vertex"] = true; | |
| 697 | - target["node"] = true; | |
| 698 | - target["edge"] = true; | |
| 699 | - target["vertexTolerance"] = 15; | |
| 700 | - target["edgeTolerance"] = 15; | |
| 701 | - i3GEOOLsnap.activate(); | |
| 702 | 704 | }, |
| 703 | 705 | adicionaMarcas: function(){ |
| 704 | 706 | if(i3GEO.editorOL.pontos.length == 0) |
| ... | ... | @@ -744,6 +746,86 @@ i3GEO.editorOL = { |
| 744 | 746 | layer.addFeatures(features); |
| 745 | 747 | i3GEO.editorOL.mapa.addLayer(layer); |
| 746 | 748 | }, |
| 749 | + //obtido de openlayers.org | |
| 747 | 750 | propriedades: function(){ |
| 751 | + if(!document.getElementById("panelpropriedadesEditor")){ | |
| 752 | + YAHOO.namespace("editorOL.container"); | |
| 753 | + YAHOO.editorOL.container.panel = new YAHOO.widget.Panel("panelpropriedadesEditor", {zIndex:20000, iframe:true, width:"350px", visible:false, draggable:true, close:true } ); | |
| 754 | + var ins = "" + | |
| 755 | + '<p class=paragrafo >Ajusta nó em edição para o(a):</p>' + | |
| 756 | + '<table class=lista7 >' + | |
| 757 | + ' <tr>' + | |
| 758 | + ' <td></td><td>nó</td><td></td><td>vértice</td><td></td><td>borda</td>' + | |
| 759 | + ' </tr>' + | |
| 760 | + ' <tr>' + | |
| 761 | + ' <td><input style=cursor:pointer onclick="i3GEO.editorOL.snap()" type="checkbox" id="target_node" /></td><td><input onchange="i3GEO.editorOL.snap()" id="target_nodeTolerance" type="text" size="3" value=15 /></td>' + | |
| 762 | + ' <td><input style=cursor:pointer onclick="i3GEO.editorOL.snap()" type="checkbox" id="target_vertex" /></td><td><input onchange="i3GEO.editorOL.snap()" id="target_vertexTolerance" type="text" size="3" value=15 /></td>' + | |
| 763 | + ' <td><input style=cursor:pointer onclick="i3GEO.editorOL.snap()" type="checkbox" id="target_edge" /></td><td><input onchange="i3GEO.editorOL.snap()" id="target_edgeTolerance" type="text" size="3" value=15 /></td>' + | |
| 764 | + ' </tr>' + | |
| 765 | + '</table>' + | |
| 766 | + '<br />' + | |
| 767 | + '<p class=paragrafo >Divide intersecção ao digitalizar</p>' + | |
| 768 | + '<table class=lista7 >' + | |
| 769 | + ' <tr>' + | |
| 770 | + ' <td><input style=cursor:pointer onclick="i3GEO.editorOL.split()" type="checkbox" id="edge_split_toggle" /></td><td>borda</td>' + | |
| 771 | + ' </tr>' + | |
| 772 | + '</table>'; | |
| 773 | + YAHOO.editorOL.container.panel.setBody(ins); | |
| 774 | + YAHOO.editorOL.container.panel.setHeader("Propriedades"); | |
| 775 | + YAHOO.editorOL.container.panel.setFooter(""); | |
| 776 | + YAHOO.editorOL.container.panel.render(document.body); | |
| 777 | + YAHOO.editorOL.container.panel.center(); | |
| 778 | + YAHOO.util.Event.addListener(YAHOO.editorOL.container.panel.close, "click", function(){ | |
| 779 | + }); | |
| 780 | + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEO.editorOL.criaJanelaAtivaTema()") < 0) | |
| 781 | + {i3GEO.eventos.ATUALIZAARVORECAMADAS.push("i3GEO.editorOL.criaJanelaAtivaTema()");} | |
| 782 | + } | |
| 783 | + else{ | |
| 784 | + YAHOO.editorOL.container.panel.render(document.body); | |
| 785 | + } | |
| 786 | + YAHOO.editorOL.container.panel.show(); | |
| 787 | + }, | |
| 788 | + snap: function(){ | |
| 789 | + var target = i3GEOOLsnap.targets[0], | |
| 790 | + tipos = ["node","vertex","edge"], | |
| 791 | + ntipos = tipos.length, | |
| 792 | + i, | |
| 793 | + temp, | |
| 794 | + ativa = false; | |
| 795 | + i3GEOOLsnap.deactivate(); | |
| 796 | + for(i=0;i<ntipos;i++){ | |
| 797 | + temp = $i("target_"+tipos[i]); | |
| 798 | + target[tipos[i]] = temp.checked; | |
| 799 | + if(temp.checked === true) | |
| 800 | + {ativa = true;} | |
| 801 | + temp = $i("target_"+tipos[i]+"Tolerance"); | |
| 802 | + target[tipos[i]+"Tolerance"] = temp.value; | |
| 803 | + } | |
| 804 | + if(ativa === true) | |
| 805 | + {i3GEOOLsnap.activate();} | |
| 806 | + }, | |
| 807 | + split: function(){ | |
| 808 | + i3GEOOLsplit.deactivate(); | |
| 809 | + var temp = $i("edge_split_toggle"); | |
| 810 | + if(temp.checked === true) | |
| 811 | + {i3GEOOLsplit.activate();} | |
| 812 | + }, | |
| 813 | + flashFeatures: function(features, index) { | |
| 814 | + if(!index) { | |
| 815 | + index = 0; | |
| 816 | + } | |
| 817 | + var current = features[index]; | |
| 818 | + if(current && current.layer === i3GEO.editorOL.layergrafico) { | |
| 819 | + i3GEO.editorOL.layergrafico.drawFeature(features[index], "select"); | |
| 820 | + } | |
| 821 | + var prev = features[index-1]; | |
| 822 | + if(prev && prev.layer === i3GEO.editorOL.layergrafico) { | |
| 823 | + i3GEO.editorOL.layergrafico.drawFeature(prev, "default"); | |
| 824 | + } | |
| 825 | + ++index; | |
| 826 | + if(index <= features.length) { | |
| 827 | + window.setTimeout(function() {i3GEO.editorOL.flashFeatures(features, index)}, 75); | |
| 828 | + } | |
| 748 | 829 | } |
| 830 | + | |
| 749 | 831 | }; | ... | ... |