Projet

Général

Profil

Révision 73fd5477

Ajouté par Marc Souviron il y a presque 12 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