]> dev.renevier.net Git - syj.git/blob - public/js/syjraw.js
b07e0b984d1936e6f03b54a238e72c6f6feeddb8
[syj.git] / public / js / syjraw.js
1 /*  This file is part of Syj, Copyright (c) 2010-2011 Arnaud Renevier,
2     and is published under the AGPL license. */
3
4 "use strict";
5
6 var WGS84 = new OpenLayers.Projection("EPSG:4326");
7 var Mercator = new OpenLayers.Projection("EPSG:900913");
8
9 var styleMap = {
10     view: new OpenLayers.StyleMap({
11         "default": new OpenLayers.Style({
12             strokeColor: "blue",
13             strokeWidth: 5,
14             strokeOpacity: 0.7
15         })
16     })
17 };
18
19 function resizeMap() {
20     var map = document.getElementById('map');
21     map.style.width = map.offsetWidth.toString() + 'px';
22     map.style.height = map.offsetHeight.toString() + 'px';
23 }
24
25 function init() {
26     var map = new OpenLayers.Map('map', {
27                 controls: [
28                     new OpenLayers.Control.Navigation(),
29                     new OpenLayers.Control.Attribution()
30                 ],
31                 theme: null}),
32
33          baseLayer = new OpenLayers.Layer.OSM("OSM", null, { attribution: SyjStrings.osmAttribution }),
34
35          layerOptions = {format:     OpenLayers.Format.WKT,
36                         projection: WGS84,
37                         styleMap:   styleMap.view,
38                         attribution: SyjStrings.geomAttribution },
39
40         viewLayer = new OpenLayers.Layer.Vector("View Layer", layerOptions),
41         wkt = new OpenLayers.Format.WKT({ internalProjection: Mercator, externalProjection: WGS84 });
42
43     map.addLayers([baseLayer, viewLayer]);
44     viewLayer.addFeatures([wkt.read(gInitialGeom.data)]);
45     var extent = viewLayer.getDataExtent();
46     map.updateSize();
47     map.zoomToExtent(extent);
48     resizeMap();
49 }
50
51 window.onresize = function() {
52     resizeMap();
53 };
54
55 if (window.addEventListener) {
56     window.addEventListener("load", init, false);
57 } else {
58     window.attachEvent("onload", init);
59 }