OpenLayers OpenLayers

Changeset 360

Show
Ignore:
Timestamp:
05/25/06 08:57:07 (3 years ago)
Author:
crschmidt
Message:

MapViewerService now supports additional URL args:

  • controls=panzoom,mouse -- set up different controls. Also allows 'layerswitcher'
  • layers=openlayers,nasa -- set up different layers. Only these two are supported at the moment.
  • center, zoom, data are all the same as before.

These changes are relevant to Ticket #12.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/examples/mvs.html

    r303 r360  
    4949        theArgs.zoom = "0";             
    5050        theArgs.data = "textfile.txt"; 
     51        theArgs.controls = ['panzoom','mouse']; 
     52        theArgs.layers = ['openlayers', 'nasa']; 
    5153    } 
    5254 
     
    5961    var DEFAULT_LON = 0; 
    6062    var DEFAULT_ZOOM_LEVEL = 0; 
    61  
     63    var DEFAULT_CONTROLS = ['panzoom','mouse']; 
     64    var DEFAULT_LAYERS = ['openlayers', 'nasa']; 
     65     
    6266    var IDX_LAT = 0; 
    6367    var IDX_LON = 1; 
     
    7074 
    7175    safeArgs.zoom = theArgs.zoom ? parseInt(theArgs.zoom) : DEFAULT_ZOOM_LEVEL; 
     76     
     77    safeArgs.controls = theArgs.controls ?  
     78        theArgs.controls.split(",") : DEFAULT_CONTROLS; 
     79     
     80    safeArgs.controls = theArgs.controls ?  
     81        theArgs.controls.split(",") : DEFAULT_CONTROLS; 
    7282 
     83    safeArgs.layers = theArgs.layers ?  
     84        theArgs.layers.split(",") : DEFAULT_LAYERS; 
     85     
    7386    safeArgs.data = theArgs.data; // TODO: Make this "safe". 
    7487 
    7588    // ----- 
    76     var theMVS = new OpenLayers.Map($('map')); 
    77         theMVS.addLayer( 
    78              new OpenLayers.Layer.WMS("OpenLayers WMS", 
    79                           "http://octo.metacarta.com/cgi-bin/mapserv", 
    80                           {"map" : "/mapdata/vmap_wms.map", 
    81                            layers: 'basic'} 
    82                           )); 
    83  
    84         theMVS.addLayer( 
    85             new OpenLayers.Layer.WMS("NASA Mosaic",  
    86                          "http://wms.jpl.nasa.gov/wms.cgi", 
    87                          {"EXCEPTIONS" : "application/vnd.ogc.se_inimage", 
    88                           "format" : "image/jpeg", 
    89                           layers:"modis,global_mosaic"} 
    90                          )); 
     89    var theMVS = new OpenLayers.Map($('map'), {controls: []}); 
     90    for(var i = 0; i < safeArgs.controls.length; i++) { 
     91        switch(safeArgs.controls[i]) { 
     92            case 'panzoom': 
     93                theMVS.addControl(new OpenLayers.Control.PanZoom()); 
     94                break; 
     95            case 'layerswitcher': 
     96                theMVS.addControl(new OpenLayers.Control.LayerSwitcher()); 
     97                break; 
     98            case 'mouse': 
     99                theMVS.addControl(new OpenLayers.Control.MouseDefaults()); 
     100                break; 
     101        } 
     102    } 
     103    for(var i = 0; i < safeArgs.layers.length; i++) { 
     104        switch(safeArgs.layers[i]) { 
     105            case 'openlayers': 
     106                theMVS.addLayer( 
     107                    new OpenLayers.Layer.WMS("OpenLayers WMS", 
     108                       "http://octo.metacarta.com/cgi-bin/mapserv", 
     109                       {"map" : "/mapdata/vmap_wms.map", 
     110                        layers: 'basic'} 
     111                       )); 
     112                break; 
     113            case 'nasa':  
     114                theMVS.addLayer( 
     115                    new OpenLayers.Layer.WMS("NASA Mosaic",  
     116                       "http://wms.jpl.nasa.gov/wms.cgi", 
     117                       {"EXCEPTIONS" : "application/vnd.ogc.se_inimage", 
     118                        "format" : "image/jpeg", 
     119                        layers:"modis,global_mosaic"} 
     120                       )); 
     121                break; 
     122        } 
     123    } 
    91124    theMVS.setCenter(new OpenLayers.LonLat(safeArgs.centerLon, safeArgs.centerLat), safeArgs.zoom); 
    92125