Projet

Général

Profil

Révision 73fd5477

Ajouté par Marc Souviron il y a plus de 10 ans

Amélioration du style de la page de tracé de cap
insertion de la distance du curseur au point de référence cur cette même page.

Voir les différences:

js/utils_osm.js
11 11
	    zcontrol = new OpenLayers.Control.Zoom();
12 12
	}
13 13
    } else zcontrol = new OpenLayers.Control.Zoom();
14

  
14
    
15 15
    var map = new OpenLayers.Map({
16 16
	div: "map",
17 17
        zoom: typeof zoom == 'undefined' ? 10:zoom,
......
19 19
		  new OpenLayers.Control.KeyboardDefaults(),
20 20
		  new OpenLayers.Control.Navigation()],
21 21
    });
22

  
22
    
23 23
    if (typeof scale_line != 'undefined' && scale_line == true) {
24 24
	map.addControl(new OpenLayers.Control.ScaleLine({bottomOutUnits: ''}));
25 25
    }
26

  
26
    
27 27
    if (typeof base_layers != 'undefined') {
28
	map.addControl(new OpenLayers.Control.LayerSwitcher());
28
	var layers = new OpenLayers.Control.LayerSwitcher();
29
	map.addControl(layers);
29 30
	for (var i = 0; i < base_layers.length; i++) {
30 31
	    map.addLayer(base_layers[i]);
31
	    if (base_layers[i].type == google.maps.MapTypeId.SATELLITE) {
32
		base_layers[i].mapObject.setTilt(0);
32
	}
33
	
34
	// gestion du 45° google //
35
	function update_tilt() {
36
	    for (var i = 0; i < base_layers.length; i++) {
37
		if (base_layers[i].type == google.maps.MapTypeId.SATELLITE) {
38
		    base_layers[i].mapObject.setTilt(this.checked?1:0);
39
		    //alert((chkbx.checked?1:0)+'//'+i);
40
		    base_layers[i].removeMap;
41
		    base_layers[i].redraw;
42
		}
33 43
	    }
34 44
	}
45
	document.getElementById("tilt").onchange = update_tilt;
46
	// fin de gestion du 45° google //
47
	
48
	// autres tests
49
	function show_pos(e) {
50
	    alert(formatLonlats(map.getLonLatFromViewPortPx(e.xy)));
51
	}
52
	function set_pos(e) {
53
	    if(this.checked) {
54
		document.getElementById("position").style.display = 'none';
55
		map.events.register("click", map, show_pos);
56
	    } else {
57
		document.getElementById("position").style.display = 'block';
58
		map.events.unregister("click", map, show_pos);
59
	    }
60
	}
61
	var panel = new OpenLayers.Control.Panel({
62
	    div: document.getElementById("panel")
63
	});
64
	
65
	function formatLonlats(lonLat) {
66
	    lonLat.transform(map.getProjectionObject(), new OpenLayers.Projection("EPSG:4326"));
67
            var lat = lonLat.lat;
68
            var lon = lonLat.lon;
69
	    var dist = OpenLayers.Util.distVincenty(lonLat, new OpenLayers.LonLat(ln.lon1, ln.lat1))*1000;
70
            return lat.toFixed(5) + ', ' + lon.toFixed(5) + ' à ' + parseInt(dist) + ' mètres';
71
	}
72
	
73
	map.addControl (new OpenLayers.Control.MousePosition({
74
	    div: document.getElementById("position"),
75
	    formatOutput: formatLonlats
76
	}));
77

  
78
	var history = new OpenLayers.Control.NavigationHistory();
79
	map.addControl(history);
80
	panel.addControls([history.next, history.previous]);
81
	map.addControl(panel);
82

  
83
	document.getElementById("clic_pos").onchange = set_pos;
84
	layers.layersDiv.appendChild(document.getElementById("extra"));
85
	// fin des autres tests
35 86
    } else {
36 87
	map.addLayer(new OpenLayers.Layer.OSM());
37 88
    }

Formats disponibles : Unified diff