OpenLayers OpenLayers

root/branches/openlayers/2.5/examples/draw-feature.html

Revision 2978, 3.7 kB (checked in by sderle, 2 years ago)

propset svn:eol-style native recursively throughout trunk. enjoy\!

  • Property svn:eol-style set to native
Line 
1 <html xmlns="http://www.w3.org/1999/xhtml">
2   <head>
3     <style type="text/css">
4         #map {
5             width: 512px;
6             height: 350px;
7             border: 1px solid gray;
8         }
9         #controlToggle li {
10             list-style: none;
11         }
12         p {
13             width: 512px;
14         }
15     </style>
16     <script src="../lib/OpenLayers.js"></script>
17     <script type="text/javascript">
18         <!--
19         var map, drawControls;
20         OpenLayers.Util.onImageLoadErrorColor = "transparent";
21         function init(){
22             map = new OpenLayers.Map('map');
23            
24             var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
25                 "http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'});
26
27             var pointLayer = new OpenLayers.Layer.Vector("Point Layer");
28             var lineLayer = new OpenLayers.Layer.Vector("Line Layer");
29             var polygonLayer = new OpenLayers.Layer.Vector("Polygon Layer");
30
31             map.addLayers([wmsLayer, pointLayer, lineLayer, polygonLayer]);
32             map.addControl(new OpenLayers.Control.LayerSwitcher());
33             map.addControl(new OpenLayers.Control.MousePosition());
34            
35             var options = {handlerOptions: {freehand: true}};
36             drawControls = {
37                 point: new OpenLayers.Control.DrawFeature(pointLayer,
38                             OpenLayers.Handler.Point),
39                 line: new OpenLayers.Control.DrawFeature(lineLayer,
40                             OpenLayers.Handler.Path, options),
41                 polygon: new OpenLayers.Control.DrawFeature(polygonLayer,
42                             OpenLayers.Handler.Polygon, options)
43             };
44            
45             for(var key in drawControls) {
46                 map.addControl(drawControls[key]);
47             }
48            
49             map.setCenter(new OpenLayers.LonLat(0, 0), 3);
50            
51             document.getElementById('noneToggle').checked = true;
52         }
53
54         function toggleControl(element) {
55             for(key in drawControls) {
56                 var control = drawControls[key];
57                 if(element.value == key && element.checked) {
58                     control.activate();
59                 } else {
60                     control.deactivate();
61                 }
62             }
63         }
64         // -->
65     </script>
66   </head>
67   <body onload="init()">
68     <h1>OpenLayers Draw Feature Example</h1>
69     <div id="map"></div>
70     <ul id="controlToggle">
71         <li>
72             <input type="radio" name="type" value="none" id="noneToggle"
73                    onclick="toggleControl(this);" checked="checked" />
74             <label for="noneToggle">navigate</label>
75         </li>
76         <li>
77             <input type="radio" name="type" value="point" id="pointToggle" onclick="toggleControl(this);" />
78             <label for="pointToggle">draw point</label>
79         </li>
80         <li>
81             <input type="radio" name="type" value="line" id="lineToggle" onclick="toggleControl(this);" />
82             <label for="lineToggle">draw line</label>
83         </li>
84         <li>
85             <input type="radio" name="type" value="polygon" id="polygonToggle" onclick="toggleControl(this);" />
86             <label for="polygonToggle">draw polygon</label>
87         </li>
88     </ul>
89     <p>Feature digitizing is in freehand mode by default.  In freehand mode, the mouse is treated as a pen.
90     Drawing begins on mouse down, continues with every mouse move, and ends with mouse up.</p>
91     <p>To turn freehand mode off, hold down the shift key while digitizing.  With freehand mode off, one
92     vertex is added with each click and double-clicks finish drawing.  Freehand mode can be toggled on and off
93     at any time while drawing.</p>
94        
95   </body>
96 </html>
Note: See TracBrowser for help on using the browser.