Commit 723eb94544261fb6e68036992a24467d3101f844
1 parent
2d6424f2
Exists in
master
and in
7 other branches
-
Showing
1 changed file
with
57 additions
and
11 deletions
Show diff stats
classesjs/classe_analise.js
@@ -317,7 +317,7 @@ i3GEO.analise = { | @@ -317,7 +317,7 @@ i3GEO.analise = { | ||
317 | var janela; | 317 | var janela; |
318 | i3GEO.eventos.cliquePerm.ativa(); | 318 | i3GEO.eventos.cliquePerm.ativa(); |
319 | //@TODO remover | 319 | //@TODO remover |
320 | - if(i3GEO.Interface.ATUAL !== "openlayers" && i3GEO.Interface.ATUAL !== "googlemaps"){ | 320 | + if(i3GEO.Interface.ATUAL === "googleearth"){ |
321 | i3GEO.Interface.ATUAL !== "googleearth" ? i3GEO.desenho.richdraw.fecha() : i3GEO.Interface.googleearth.removePlacemark("divGeometriasTemp"); | 321 | i3GEO.Interface.ATUAL !== "googleearth" ? i3GEO.desenho.richdraw.fecha() : i3GEO.Interface.googleearth.removePlacemark("divGeometriasTemp"); |
322 | i3GEO.util.removeChild("pontosins"); | 322 | i3GEO.util.removeChild("pontosins"); |
323 | if($i("divGeometriasTemp")) | 323 | if($i("divGeometriasTemp")) |
@@ -554,10 +554,11 @@ i3GEO.analise = { | @@ -554,10 +554,11 @@ i3GEO.analise = { | ||
554 | * Executa a funcao de inicializacao do desenho, que cria o layer para receber os graficos | 554 | * Executa a funcao de inicializacao do desenho, que cria o layer para receber os graficos |
555 | */ | 555 | */ |
556 | inicia: function(){ | 556 | inicia: function(){ |
557 | - var linha,evtclick,evtmousemove, | 557 | + var linha, |
558 | estilo = i3GEO.desenho.estilos[i3GEO.desenho.estiloPadrao]; | 558 | estilo = i3GEO.desenho.estilos[i3GEO.desenho.estiloPadrao]; |
559 | i3GEO.desenho[i3GEO.Interface["ATUAL"]].inicia(); | 559 | i3GEO.desenho[i3GEO.Interface["ATUAL"]].inicia(); |
560 | i3GeoMap.setOptions({disableDoubleClickZoom:true}); | 560 | i3GeoMap.setOptions({disableDoubleClickZoom:true}); |
561 | + i3GeoMap.setOptions({draggableCursor:'crosshair'}); | ||
561 | i3GEO.analise.medeDistancia.pontos = { | 562 | i3GEO.analise.medeDistancia.pontos = { |
562 | xpt: [], | 563 | xpt: [], |
563 | ypt: [], | 564 | ypt: [], |
@@ -568,15 +569,56 @@ i3GEO.analise = { | @@ -568,15 +569,56 @@ i3GEO.analise = { | ||
568 | polygon: null | 569 | polygon: null |
569 | }; | 570 | }; |
570 | var pontos = i3GEO.analise.medeDistancia.pontos; | 571 | var pontos = i3GEO.analise.medeDistancia.pontos; |
571 | - evtclick = google.maps.event.addListener(i3GeoMap, "click", function(evt) { | 572 | + i3GEO.analise.medeDistancia.googlemaps.evtclick = google.maps.event.addListener(i3GeoMap, "click", function(evt) { |
573 | + var x1,x2,y1,y2,raio,trecho,total,n; | ||
572 | // When the map is clicked, pass the LatLng obect to the measureAdd function | 574 | // When the map is clicked, pass the LatLng obect to the measureAdd function |
573 | pontos.mvcLine.push(evt.latLng); | 575 | pontos.mvcLine.push(evt.latLng); |
574 | pontos.xpt.push(evt.latLng.lng()); | 576 | pontos.xpt.push(evt.latLng.lng()); |
575 | pontos.ypt.push(evt.latLng.lat()); | 577 | pontos.ypt.push(evt.latLng.lat()); |
578 | + n = pontos.xpt.length; | ||
579 | + //desenha um circulo | ||
580 | + if (pontos.mvcLine.getLength() > 1) { | ||
581 | + if($i("pararraios") && $i("pararraios").checked === true ){ | ||
582 | + new google.maps.Circle({ | ||
583 | + map: i3GeoMap, | ||
584 | + fillOpacity: 0, | ||
585 | + clickable: false, | ||
586 | + strokeColor: estilo.circcolor, | ||
587 | + strokeOpacity: 1, | ||
588 | + strokeWeight: estilo.linewidth, | ||
589 | + center:evt.latLng, | ||
590 | + radius: 50000 | ||
591 | + }); | ||
592 | + } | ||
593 | + x1 = i3GEO.analise.medeDistancia.pontos.xpt[n-2]; | ||
594 | + y1 = i3GEO.analise.medeDistancia.pontos.ypt[n-2]; | ||
595 | + x2 = evt.latLng.lng(); | ||
596 | + y2 = evt.latLng.lat(); | ||
597 | + raio = google.maps.geometry.spherical.computeDistanceBetween(evt.latLng,new google.maps.LatLng(y1,x1)) | ||
598 | + trecho = i3GEO.calculo.distancia(x1,y1,x2,y2); | ||
599 | + i3GEO.analise.medeDistancia.pontos.dist.push(trecho); | ||
600 | + total = i3GEO.analise.medeDistancia.googlemaps.somaDist(); | ||
601 | + i3GEO.analise.medeDistancia.googlemaps.mostraTotal(trecho,total); | ||
602 | + } | ||
603 | + //desenha uma marca no ponto | ||
604 | + if($i("parartextos") && $i("parartextos").checked === true ){ | ||
605 | + new google.maps.Marker({ | ||
606 | + map: i3GeoMap, | ||
607 | + fillOpacity: 0, | ||
608 | + clickable: false, | ||
609 | + position:evt.latLng, | ||
610 | + icon: { | ||
611 | + path: google.maps.SymbolPath.CIRCLE, | ||
612 | + scale: 2.5, | ||
613 | + strokeColor: "#ffffff" | ||
614 | + } | ||
615 | + }); | ||
616 | + } | ||
617 | + pontos.ypt.push(evt.latLng.lat()); | ||
576 | //mais um ponto para criar uma linha movel | 618 | //mais um ponto para criar uma linha movel |
577 | pontos.mvcLine.push(evt.latLng); | 619 | pontos.mvcLine.push(evt.latLng); |
578 | }); | 620 | }); |
579 | - evtmousemove = google.maps.event.addListener(i3GeoMap, "mousemove", function(evt) { | 621 | + i3GEO.analise.medeDistancia.googlemaps.evtmousemove = google.maps.event.addListener(i3GeoMap, "mousemove", function(evt) { |
580 | // If there is more than one vertex on the line | 622 | // If there is more than one vertex on the line |
581 | if (pontos.mvcLine.getLength() > 1) { | 623 | if (pontos.mvcLine.getLength() > 1) { |
582 | // If the line hasn't been created yet | 624 | // If the line hasn't been created yet |
@@ -585,9 +627,9 @@ i3GEO.analise = { | @@ -585,9 +627,9 @@ i3GEO.analise = { | ||
585 | pontos.line = new google.maps.Polyline({ | 627 | pontos.line = new google.maps.Polyline({ |
586 | map: i3GeoMap, | 628 | map: i3GeoMap, |
587 | clickable: false, | 629 | clickable: false, |
588 | - strokeColor: "#FF0000", | 630 | + strokeColor: estilo.linecolor, |
589 | strokeOpacity: 1, | 631 | strokeOpacity: 1, |
590 | - strokeWeight: 3, | 632 | + strokeWeight: estilo.linewidth, |
591 | path:pontos.mvcLine | 633 | path:pontos.mvcLine |
592 | }); | 634 | }); |
593 | } | 635 | } |
@@ -595,9 +637,9 @@ i3GEO.analise = { | @@ -595,9 +637,9 @@ i3GEO.analise = { | ||
595 | pontos.mvcLine.push(evt.latLng); | 637 | pontos.mvcLine.push(evt.latLng); |
596 | } | 638 | } |
597 | }); | 639 | }); |
598 | - google.maps.event.addListener(i3GeoMap, "dblclick", function(evt) { | ||
599 | - google.maps.event.removeListener(evtclick); | ||
600 | - google.maps.event.removeListener(evtmousemove); | 640 | + i3GEO.analise.medeDistancia.googlemaps.dblclick = google.maps.event.addListener(i3GeoMap, "dblclick", function(evt) { |
641 | + //google.maps.event.removeListener(i3GEO.analise.medeDistancia.googlemaps.evtclick); | ||
642 | + //google.maps.event.removeListener(i3GEO.analise.medeDistancia.googlemaps.evtmousemove); | ||
601 | i3GEO.analise.medeDistancia.googlemaps.inicia(); | 643 | i3GEO.analise.medeDistancia.googlemaps.inicia(); |
602 | }); | 644 | }); |
603 | 645 | ||
@@ -621,12 +663,16 @@ i3GEO.analise = { | @@ -621,12 +663,16 @@ i3GEO.analise = { | ||
621 | * Os raios e pontos sao sempre removidos | 663 | * Os raios e pontos sao sempre removidos |
622 | */ | 664 | */ |
623 | fechaJanela: function(){ | 665 | fechaJanela: function(){ |
666 | + //google.maps.event.removeListener(i3GEO.analise.medeDistancia.googlemaps.evtclick); | ||
667 | + //google.maps.event.removeListener(i3GEO.analise.medeDistancia.googlemaps.evtmousemove); | ||
668 | + //google.maps.event.removeListener(i3GEO.analise.medeDistancia.googlemaps.dblclick); | ||
624 | i3GeoMap.setOptions({disableDoubleClickZoom:false}); | 669 | i3GeoMap.setOptions({disableDoubleClickZoom:false}); |
670 | + i3GeoMap.setOptions({draggableCursor:""}); | ||
625 | /* | 671 | /* |
626 | var temp, | 672 | var temp, |
627 | controle = i3geoOL.getControlsBy("id","i3GeoMedeDistancia"), | 673 | controle = i3geoOL.getControlsBy("id","i3GeoMedeDistancia"), |
628 | f = i3GEO.desenho.layergrafico.getFeaturesByAttribute("origem","medeDistancia"); | 674 | f = i3GEO.desenho.layergrafico.getFeaturesByAttribute("origem","medeDistancia"); |
629 | - | 675 | + |
630 | if(controle.length > 0){ | 676 | if(controle.length > 0){ |
631 | controle[0].deactivate(); | 677 | controle[0].deactivate(); |
632 | i3geoOL.removeControl(controle[0]); | 678 | i3geoOL.removeControl(controle[0]); |
@@ -641,7 +687,7 @@ i3GEO.analise = { | @@ -641,7 +687,7 @@ i3GEO.analise = { | ||
641 | if(f && f.length > 0){ | 687 | if(f && f.length > 0){ |
642 | i3GEO.desenho.layergrafico.destroyFeatures(f); | 688 | i3GEO.desenho.layergrafico.destroyFeatures(f); |
643 | } | 689 | } |
644 | - */ | 690 | + */ |
645 | }, | 691 | }, |
646 | /** | 692 | /** |
647 | * Mostra a totalizacao das linhas ja digitalizadas | 693 | * Mostra a totalizacao das linhas ja digitalizadas |