Révision ef05758b
Ajouté par Jocelyn Delande il y a plus de 10 ans
js/utils_osm.js | ||
---|---|---|
1 |
function draw_map() { |
|
1 |
|
|
2 |
/** Draws the map for the "view this cap" feature |
|
3 |
*/ |
|
4 |
function draw_cap_map() { |
|
2 | 5 |
|
3 | 6 |
var zcontrol; |
4 | 7 |
if (typeof zoom_control != 'undefined') { |
... | ... | |
11 | 14 |
zcontrol = new OpenLayers.Control.Zoom(); |
12 | 15 |
} |
13 | 16 |
} else zcontrol = new OpenLayers.Control.Zoom(); |
14 |
|
|
17 |
|
|
15 | 18 |
var map = new OpenLayers.Map({ |
16 | 19 |
div: "map", |
17 | 20 |
zoom: typeof zoom == 'undefined' ? 10:zoom, |
... | ... | |
19 | 22 |
new OpenLayers.Control.KeyboardDefaults(), |
20 | 23 |
new OpenLayers.Control.Navigation()], |
21 | 24 |
}); |
22 |
|
|
25 |
|
|
23 | 26 |
if (typeof scale_line != 'undefined' && scale_line == true) { |
24 | 27 |
map.addControl(new OpenLayers.Control.ScaleLine({bottomOutUnits: ''})); |
25 | 28 |
} |
26 |
|
|
29 |
|
|
27 | 30 |
if (typeof base_layers != 'undefined') { |
28 | 31 |
var layers = new OpenLayers.Control.LayerSwitcher(); |
29 | 32 |
map.addControl(layers); |
30 | 33 |
for (var i = 0; i < base_layers.length; i++) { |
31 | 34 |
map.addLayer(base_layers[i]); |
32 | 35 |
} |
33 |
|
|
36 |
|
|
34 | 37 |
// gestion du 45° google // |
35 | 38 |
function update_tilt() { |
36 | 39 |
for (var i = 0; i < base_layers.length; i++) { |
... | ... | |
44 | 47 |
} |
45 | 48 |
document.getElementById("tilt").onchange = update_tilt; |
46 | 49 |
// fin de gestion du 45° google // |
47 |
|
|
50 |
|
|
48 | 51 |
// autres tests |
49 | 52 |
function show_pos(e) { |
50 | 53 |
alert(formatLonlats(map.getLonLatFromViewPortPx(e.xy))); |
... | ... | |
61 | 64 |
var panel = new OpenLayers.Control.Panel({ |
62 | 65 |
div: document.getElementById("panel") |
63 | 66 |
}); |
64 |
|
|
67 |
|
|
65 | 68 |
function formatLonlats(lonLat) { |
66 | 69 |
lonLat.transform(map.getProjectionObject(), new OpenLayers.Projection("EPSG:4326")); |
67 | 70 |
var lat = lonLat.lat; |
... | ... | |
69 | 72 |
var dist = OpenLayers.Util.distVincenty(lonLat, new OpenLayers.LonLat(ln.lon1, ln.lat1))*1000; |
70 | 73 |
return lat.toFixed(5) + ', ' + lon.toFixed(5) + ' à ' + parseInt(dist) + ' mètres'; |
71 | 74 |
} |
72 |
|
|
75 |
|
|
73 | 76 |
map.addControl (new OpenLayers.Control.MousePosition({ |
74 | 77 |
div: document.getElementById("position"), |
75 | 78 |
formatOutput: formatLonlats |
... | ... | |
122 | 125 |
color: def_line_style.color? def_line_style.color:'#00F', |
123 | 126 |
length: def_line_style.length? def_line_style.length:20000, |
124 | 127 |
opacity: def_line_style.opacity? def_line_style.opacity:1} |
125 |
|
|
126 |
var lineLayer = new OpenLayers.Layer.Vector("ref_lines");
|
|
127 |
map.addControl(new OpenLayers.Control.DrawFeature(lineLayer, OpenLayers.Handler.Path));
|
|
128 |
|
|
129 |
var lineLayer = new OpenLayers.Layer.Vector("ref_lines"); |
|
130 |
map.addControl(new OpenLayers.Control.DrawFeature(lineLayer, OpenLayers.Handler.Path)); |
|
128 | 131 |
for (var i = 0; i < ref_lines.length; i++) { |
129 | 132 |
var ln = ref_lines[i]; |
130 | 133 |
if(isNaN(ln.cap)) { |
... | ... | |
142 | 145 |
points[1].transform("EPSG:4326", map.getProjectionObject()); |
143 | 146 |
var line = new OpenLayers.Geometry.LineString(points); |
144 | 147 |
|
145 |
var style = {
|
|
146 |
strokeColor: ln.color? ln.color:def_ln.color,
|
|
148 |
var style = { |
|
149 |
strokeColor: ln.color? ln.color:def_ln.color, |
|
147 | 150 |
strokeWidth: ln.width? ln.width:def_ln.width, |
148 | 151 |
strokeOpacity: ln.width? ln.opacity:def_ln.opacity |
149 | 152 |
}; |
... | ... | |
151 | 154 |
var lineFeature = new OpenLayers.Feature.Vector(line, null, style); |
152 | 155 |
lineLayer.addFeatures([lineFeature]); |
153 | 156 |
} |
154 |
map.addLayer(lineLayer);
|
|
157 |
map.addLayer(lineLayer); |
|
155 | 158 |
} |
156 | 159 |
|
157 | 160 |
if (typeof ref_point != 'undefined') ref_points = [ref_point]; |
158 | 161 |
if (typeof ref_points != 'undefined') { |
159 |
refpts_layer = new OpenLayers.Layer.Vector("ref_points", {projection: "EPSG:4326"});
|
|
162 |
refpts_layer = new OpenLayers.Layer.Vector("ref_points", {projection: "EPSG:4326"}); |
|
160 | 163 |
var selectMarkerControl = new OpenLayers.Control.SelectFeature(refpts_layer, { |
161 | 164 |
onSelect: function(feature) { |
162 | 165 |
var le_popup = new OpenLayers.Popup.FramedCloud("Popup", |
... | ... | |
179 | 182 |
toggle: true, |
180 | 183 |
}); |
181 | 184 |
map.addControl(selectMarkerControl); |
182 |
|
|
185 |
|
|
183 | 186 |
selectMarkerControl.activate(); |
184 | 187 |
map.addLayer(refpts_layer); |
185 |
|
|
188 |
|
|
186 | 189 |
|
187 | 190 |
if (typeof def_points_style == 'undefined') def_points_style = {}; |
188 | 191 |
var def_pt = { |
... | ... | |
193 | 196 |
icon_shiftX: def_points_style.icon_shiftX ? def_points_style.icon_shiftX:0, |
194 | 197 |
icon_shiftY: def_points_style.icon_shiftY ? def_points_style.icon_shiftY:0, |
195 | 198 |
opacity: def_points_style.opacity ? def_points_style.opacity:1} |
196 |
|
|
199 |
|
|
197 | 200 |
for (var i = 0; i < ref_points.length; i++) { |
198 | 201 |
var pt = ref_points[i]; |
199 | 202 |
var ptGeo = new OpenLayers.Geometry.Point(pt.lon, pt.lat); |
... | ... | |
223 | 226 |
}); |
224 | 227 |
} |
225 | 228 |
} |
226 |
|
|
227 |
if (typeof addLoadEvent == 'function') addLoadEvent(draw_map); |
|
228 |
else window.onload = draw_map; |
Formats disponibles : Unified diff
whitespaces + moved the loading to the HTML file