postrunner 0.0.10 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +4 -3
- data/lib/postrunner/ActivitiesDB.rb +8 -9
- data/lib/postrunner/Activity.rb +7 -1
- data/lib/postrunner/ActivityView.rb +10 -2
- data/lib/postrunner/DataSources.rb +100 -0
- data/lib/postrunner/DeviceList.rb +40 -17
- data/lib/postrunner/Log.rb +25 -0
- data/lib/postrunner/Main.rb +9 -8
- data/lib/postrunner/RuntimeConfig.rb +1 -0
- data/lib/postrunner/TrackView.rb +39 -62
- data/lib/postrunner/version.rb +1 -1
- data/misc/openlayers/ol.css +1 -0
- data/misc/openlayers/ol.js +948 -0
- data/postrunner.gemspec +2 -2
- data/spec/PostRunner_spec.rb +22 -23
- data/spec/spec_helper.rb +34 -4
- metadata +11 -1214
- data/misc/openlayers/.gitignore +0 -7
- data/misc/openlayers/OpenLayers.debug.js +0 -85622
- data/misc/openlayers/OpenLayers.js +0 -1443
- data/misc/openlayers/OpenLayers.light.debug.js +0 -37230
- data/misc/openlayers/OpenLayers.light.js +0 -592
- data/misc/openlayers/OpenLayers.mobile.debug.js +0 -41831
- data/misc/openlayers/OpenLayers.mobile.js +0 -681
- data/misc/openlayers/apidoc_config/Languages.txt +0 -113
- data/misc/openlayers/apidoc_config/Menu.txt +0 -520
- data/misc/openlayers/apidoc_config/OL.css +0 -20
- data/misc/openlayers/apidoc_config/Topics.txt +0 -105
- data/misc/openlayers/art/arrows.svg +0 -127
- data/misc/openlayers/art/layer-switcher-maximize.svg +0 -128
- data/misc/openlayers/art/layer-switcher-minimize.svg +0 -142
- data/misc/openlayers/art/marker.svg +0 -25
- data/misc/openlayers/art/measuring-stick-off.svg +0 -36
- data/misc/openlayers/art/measuring-stick-on.svg +0 -36
- data/misc/openlayers/art/panning-hand-off.svg +0 -44
- data/misc/openlayers/art/panning-hand-on.svg +0 -44
- data/misc/openlayers/art/slider.svg +0 -71
- data/misc/openlayers/art/zoom-world.svg +0 -193
- data/misc/openlayers/art/zoombar.svg +0 -73
- data/misc/openlayers/authors.txt +0 -56
- data/misc/openlayers/build/README.txt +0 -46
- data/misc/openlayers/build/build.py +0 -158
- data/misc/openlayers/build/buildUncompressed.py +0 -25
- data/misc/openlayers/build/closure-compiler/Externs.js +0 -50
- data/misc/openlayers/build/full.cfg +0 -14
- data/misc/openlayers/build/license.txt +0 -57
- data/misc/openlayers/build/light.cfg +0 -32
- data/misc/openlayers/build/lite.cfg +0 -17
- data/misc/openlayers/build/mobile.cfg +0 -36
- data/misc/openlayers/build/tests.cfg +0 -11
- data/misc/openlayers/doc_config/Data/ClassHierarchy.nd +0 -0
- data/misc/openlayers/doc_config/Data/ConfigFileInfo.nd +0 -0
- data/misc/openlayers/doc_config/Data/FileInfo.nd +0 -323
- data/misc/openlayers/doc_config/Data/ImageFileInfo.nd +0 -0
- data/misc/openlayers/doc_config/Data/ImageReferenceTable.nd +0 -0
- data/misc/openlayers/doc_config/Data/IndexInfo.nd +0 -0
- data/misc/openlayers/doc_config/Data/PreviousMenuState.nd +0 -0
- data/misc/openlayers/doc_config/Data/PreviousSettings.nd +0 -0
- data/misc/openlayers/doc_config/Data/SymbolTable.nd +0 -0
- data/misc/openlayers/doc_config/Languages.txt +0 -113
- data/misc/openlayers/doc_config/Menu.txt +0 -520
- data/misc/openlayers/doc_config/OL.css +0 -20
- data/misc/openlayers/doc_config/Topics.txt +0 -102
- data/misc/openlayers/examples/Jugl.js +0 -8
- data/misc/openlayers/examples/KMLParser.html +0 -57
- data/misc/openlayers/examples/SLDSelect.html +0 -202
- data/misc/openlayers/examples/WMSDescribeLayerParser.html +0 -52
- data/misc/openlayers/examples/accelerometer.html +0 -100
- data/misc/openlayers/examples/accessible-click-control.html +0 -69
- data/misc/openlayers/examples/accessible-click-control.js +0 -199
- data/misc/openlayers/examples/accessible-panel.html +0 -130
- data/misc/openlayers/examples/accessible-panel.js +0 -64
- data/misc/openlayers/examples/accessible.html +0 -167
- data/misc/openlayers/examples/all-overlays-google.html +0 -34
- data/misc/openlayers/examples/all-overlays-google.js +0 -19
- data/misc/openlayers/examples/all-overlays.html +0 -76
- data/misc/openlayers/examples/anchor-permalink.html +0 -29
- data/misc/openlayers/examples/anchor-permalink.js +0 -13
- data/misc/openlayers/examples/animated_panning.html +0 -98
- data/misc/openlayers/examples/animator.js +0 -670
- data/misc/openlayers/examples/arcgis93rest.html +0 -69
- data/misc/openlayers/examples/arcgiscache_ags.html +0 -221
- data/misc/openlayers/examples/arcgiscache_direct.html +0 -108
- data/misc/openlayers/examples/arcgiscache_jsonp.html +0 -106
- data/misc/openlayers/examples/arcims-thematic.html +0 -82
- data/misc/openlayers/examples/arcims.html +0 -57
- data/misc/openlayers/examples/attribution.html +0 -60
- data/misc/openlayers/examples/behavior-fixed-http-gml.html +0 -56
- data/misc/openlayers/examples/bing-tiles-restrictedzoom.html +0 -43
- data/misc/openlayers/examples/bing-tiles-restrictedzoom.js +0 -37
- data/misc/openlayers/examples/bing-tiles.html +0 -39
- data/misc/openlayers/examples/bing-tiles.js +0 -31
- data/misc/openlayers/examples/bing.html +0 -64
- data/misc/openlayers/examples/bootstrap.html +0 -81
- data/misc/openlayers/examples/bootstrap.js +0 -31
- data/misc/openlayers/examples/boxes-vector.html +0 -59
- data/misc/openlayers/examples/boxes.html +0 -58
- data/misc/openlayers/examples/browser.html +0 -152
- data/misc/openlayers/examples/browser.js +0 -241
- data/misc/openlayers/examples/buffer.html +0 -54
- data/misc/openlayers/examples/cache-read.html +0 -36
- data/misc/openlayers/examples/cache-read.js +0 -36
- data/misc/openlayers/examples/cache-write.html +0 -37
- data/misc/openlayers/examples/cache-write.js +0 -46
- data/misc/openlayers/examples/canvas-hit-detection.html +0 -31
- data/misc/openlayers/examples/canvas-hit-detection.js +0 -88
- data/misc/openlayers/examples/canvas-inspector.html +0 -53
- data/misc/openlayers/examples/canvas-inspector.js +0 -91
- data/misc/openlayers/examples/canvas.html +0 -35
- data/misc/openlayers/examples/canvas.js +0 -57
- data/misc/openlayers/examples/cartodb-geojson.html +0 -71
- data/misc/openlayers/examples/click-handler.html +0 -232
- data/misc/openlayers/examples/click.html +0 -91
- data/misc/openlayers/examples/clientzoom.html +0 -72
- data/misc/openlayers/examples/clientzoom.js +0 -39
- data/misc/openlayers/examples/controls.html +0 -86
- data/misc/openlayers/examples/cql-format.html +0 -54
- data/misc/openlayers/examples/cql-format.js +0 -61
- data/misc/openlayers/examples/cross-origin-xml.html +0 -32
- data/misc/openlayers/examples/cross-origin-xml.js +0 -25
- data/misc/openlayers/examples/cross-origin.html +0 -36
- data/misc/openlayers/examples/cross-origin.js +0 -39
- data/misc/openlayers/examples/custom-control.html +0 -68
- data/misc/openlayers/examples/custom-style.html +0 -66
- data/misc/openlayers/examples/data/4_m_citylights_lg.gif +0 -0
- data/misc/openlayers/examples/data/line.json +0 -10
- data/misc/openlayers/examples/data/point.json +0 -8
- data/misc/openlayers/examples/data/poly.json +0 -9
- data/misc/openlayers/examples/data/roads.json +0 -349
- data/misc/openlayers/examples/data/tazdem.tiff +0 -0
- data/misc/openlayers/examples/debug.html +0 -77
- data/misc/openlayers/examples/document-drag.html +0 -43
- data/misc/openlayers/examples/donut.html +0 -62
- data/misc/openlayers/examples/donut.js +0 -44
- data/misc/openlayers/examples/drag-feature.html +0 -114
- data/misc/openlayers/examples/draw-feature.html +0 -143
- data/misc/openlayers/examples/draw-undo-redo.html +0 -38
- data/misc/openlayers/examples/draw-undo-redo.js +0 -45
- data/misc/openlayers/examples/dynamic-text-layer.html +0 -101
- data/misc/openlayers/examples/editing-methods.html +0 -58
- data/misc/openlayers/examples/editing-methods.js +0 -83
- data/misc/openlayers/examples/editingtoolbar-outside.html +0 -56
- data/misc/openlayers/examples/editingtoolbar.html +0 -55
- data/misc/openlayers/examples/encoded-polyline.html +0 -47
- data/misc/openlayers/examples/events.html +0 -155
- data/misc/openlayers/examples/example-list.html +0 -302
- data/misc/openlayers/examples/example.html +0 -25
- data/misc/openlayers/examples/example.js +0 -23
- data/misc/openlayers/examples/feature-events.html +0 -46
- data/misc/openlayers/examples/feature-events.js +0 -67
- data/misc/openlayers/examples/filter-strategy.html +0 -54
- data/misc/openlayers/examples/filter-strategy.js +0 -84
- data/misc/openlayers/examples/filter.html +0 -107
- data/misc/openlayers/examples/fractional-zoom.html +0 -72
- data/misc/openlayers/examples/fullScreen.html +0 -53
- data/misc/openlayers/examples/fullScreen.js +0 -20
- data/misc/openlayers/examples/fusiontables.html +0 -35
- data/misc/openlayers/examples/fusiontables.js +0 -51
- data/misc/openlayers/examples/game-accel-ball.html +0 -82
- data/misc/openlayers/examples/geojson-reprojected.html +0 -46
- data/misc/openlayers/examples/geojson-reprojected.js +0 -27
- data/misc/openlayers/examples/geojson-reprojected.json +0 -1
- data/misc/openlayers/examples/geojson.html +0 -77
- data/misc/openlayers/examples/geolocation.html +0 -41
- data/misc/openlayers/examples/geolocation.js +0 -112
- data/misc/openlayers/examples/georss-flickr.html +0 -119
- data/misc/openlayers/examples/georss-markers.html +0 -45
- data/misc/openlayers/examples/georss.html +0 -63
- data/misc/openlayers/examples/georss.xml +0 -378
- data/misc/openlayers/examples/getfeature-wfs.html +0 -84
- data/misc/openlayers/examples/getfeatureinfo-control.html +0 -221
- data/misc/openlayers/examples/getfeatureinfo-popup.html +0 -96
- data/misc/openlayers/examples/gml-layer.html +0 -48
- data/misc/openlayers/examples/gml/line.xml +0 -42
- data/misc/openlayers/examples/gml/multipoint.xml +0 -70
- data/misc/openlayers/examples/gml/multipolygon.xml +0 -106
- data/misc/openlayers/examples/gml/owls.xml +0 -156
- data/misc/openlayers/examples/gml/point.xml +0 -42
- data/misc/openlayers/examples/gml/polygon.xml +0 -89
- data/misc/openlayers/examples/google-static.html +0 -39
- data/misc/openlayers/examples/google-static.js +0 -61
- data/misc/openlayers/examples/google-v3-alloverlays.html +0 -33
- data/misc/openlayers/examples/google-v3-alloverlays.js +0 -35
- data/misc/openlayers/examples/google-v3.html +0 -35
- data/misc/openlayers/examples/google-v3.js +0 -39
- data/misc/openlayers/examples/google.html +0 -69
- data/misc/openlayers/examples/graphic-name.html +0 -42
- data/misc/openlayers/examples/graphic-name.js +0 -67
- data/misc/openlayers/examples/graticule.html +0 -116
- data/misc/openlayers/examples/gutter.html +0 -55
- data/misc/openlayers/examples/highlight-feature.html +0 -88
- data/misc/openlayers/examples/hover-handler.html +0 -216
- data/misc/openlayers/examples/image-layer.html +0 -76
- data/misc/openlayers/examples/img/check-round-green.png +0 -0
- data/misc/openlayers/examples/img/check-round-grey.png +0 -0
- data/misc/openlayers/examples/img/list.png +0 -0
- data/misc/openlayers/examples/img/locate.png +0 -0
- data/misc/openlayers/examples/img/marker_shadow.png +0 -0
- data/misc/openlayers/examples/img/minus1.png +0 -0
- data/misc/openlayers/examples/img/mobile-layers.png +0 -0
- data/misc/openlayers/examples/img/mobile-loc.png +0 -0
- data/misc/openlayers/examples/img/mobile-zoombar.png +0 -0
- data/misc/openlayers/examples/img/openlayers.png +0 -0
- data/misc/openlayers/examples/img/popupMatrix.jpg +0 -0
- data/misc/openlayers/examples/img/small.jpg +0 -0
- data/misc/openlayers/examples/img/thinlong.jpg +0 -0
- data/misc/openlayers/examples/img/widelong.jpg +0 -0
- data/misc/openlayers/examples/img/wideshort.jpg +0 -0
- data/misc/openlayers/examples/intersects.html +0 -193
- data/misc/openlayers/examples/kamap.html +0 -45
- data/misc/openlayers/examples/kamap.txt +0 -508
- data/misc/openlayers/examples/kinetic.html +0 -44
- data/misc/openlayers/examples/kinetic.js +0 -27
- data/misc/openlayers/examples/kml-layer.html +0 -36
- data/misc/openlayers/examples/kml-layer.js +0 -22
- data/misc/openlayers/examples/kml-pointtrack.html +0 -40
- data/misc/openlayers/examples/kml-pointtrack.js +0 -52
- data/misc/openlayers/examples/kml-track.html +0 -42
- data/misc/openlayers/examples/kml-track.js +0 -40
- data/misc/openlayers/examples/kml-track.kml +0 -3359
- data/misc/openlayers/examples/kml/lines.kml +0 -275
- data/misc/openlayers/examples/kml/styles.kml +0 -21
- data/misc/openlayers/examples/kml/sundials.kml +0 -2273
- data/misc/openlayers/examples/label-scale.html +0 -34
- data/misc/openlayers/examples/label-scale.js +0 -72
- data/misc/openlayers/examples/late-render.html +0 -48
- data/misc/openlayers/examples/layer-opacity.html +0 -95
- data/misc/openlayers/examples/layerLoadMonitoring.html +0 -135
- data/misc/openlayers/examples/layerswitcher.html +0 -60
- data/misc/openlayers/examples/light-basic.html +0 -35
- data/misc/openlayers/examples/light-basic.js +0 -67
- data/misc/openlayers/examples/lite.html +0 -39
- data/misc/openlayers/examples/mapbox.html +0 -30
- data/misc/openlayers/examples/mapbox.js +0 -21
- data/misc/openlayers/examples/mapguide.html +0 -155
- data/misc/openlayers/examples/mapquest.html +0 -28
- data/misc/openlayers/examples/mapquest.js +0 -36
- data/misc/openlayers/examples/mapserver.html +0 -41
- data/misc/openlayers/examples/mapserver_untiled.html +0 -43
- data/misc/openlayers/examples/marker-shadow.html +0 -152
- data/misc/openlayers/examples/markerResize.html +0 -60
- data/misc/openlayers/examples/markers.html +0 -59
- data/misc/openlayers/examples/markersTextLayer.html +0 -41
- data/misc/openlayers/examples/measure.html +0 -203
- data/misc/openlayers/examples/mobile-base.js +0 -167
- data/misc/openlayers/examples/mobile-drawing.html +0 -52
- data/misc/openlayers/examples/mobile-drawing.js +0 -71
- data/misc/openlayers/examples/mobile-jq.html +0 -76
- data/misc/openlayers/examples/mobile-jq.js +0 -159
- data/misc/openlayers/examples/mobile-layers.html +0 -62
- data/misc/openlayers/examples/mobile-layers.js +0 -71
- data/misc/openlayers/examples/mobile-navigation.html +0 -52
- data/misc/openlayers/examples/mobile-navigation.js +0 -24
- data/misc/openlayers/examples/mobile-sencha.html +0 -184
- data/misc/openlayers/examples/mobile-sencha.js +0 -198
- data/misc/openlayers/examples/mobile-wmts-vienna.css +0 -205
- data/misc/openlayers/examples/mobile-wmts-vienna.html +0 -27
- data/misc/openlayers/examples/mobile-wmts-vienna.js +0 -281
- data/misc/openlayers/examples/mobile.html +0 -56
- data/misc/openlayers/examples/mobile.js +0 -39
- data/misc/openlayers/examples/modify-feature.html +0 -193
- data/misc/openlayers/examples/mouse-position.html +0 -67
- data/misc/openlayers/examples/mousewheel-interval.html +0 -63
- data/misc/openlayers/examples/multiserver.html +0 -52
- data/misc/openlayers/examples/multitouch.html +0 -28
- data/misc/openlayers/examples/mvs.html +0 -129
- data/misc/openlayers/examples/navigation-control.html +0 -44
- data/misc/openlayers/examples/navigation-history.html +0 -62
- data/misc/openlayers/examples/navtoolbar-alwaysZoom.html +0 -85
- data/misc/openlayers/examples/navtoolbar-outsidemap.html +0 -47
- data/misc/openlayers/examples/navtoolbar.html +0 -46
- data/misc/openlayers/examples/offline-storage.html +0 -44
- data/misc/openlayers/examples/offline-storage.js +0 -199
- data/misc/openlayers/examples/openls.html +0 -88
- data/misc/openlayers/examples/ordering.html +0 -221
- data/misc/openlayers/examples/osm-google.html +0 -32
- data/misc/openlayers/examples/osm-google.js +0 -23
- data/misc/openlayers/examples/osm-grayscale.html +0 -77
- data/misc/openlayers/examples/osm-marker-popup.html +0 -32
- data/misc/openlayers/examples/osm-marker-popup.js +0 -39
- data/misc/openlayers/examples/osm.html +0 -41
- data/misc/openlayers/examples/osm/sutton_coldfield.osm +0 -662
- data/misc/openlayers/examples/overviewmap.html +0 -120
- data/misc/openlayers/examples/pan-zoom-panels.html +0 -97
- data/misc/openlayers/examples/panel.html +0 -99
- data/misc/openlayers/examples/point-grid.html +0 -75
- data/misc/openlayers/examples/point-grid.js +0 -33
- data/misc/openlayers/examples/point-track-markers.html +0 -72
- data/misc/openlayers/examples/polar-projections.html +0 -41
- data/misc/openlayers/examples/polar-projections.js +0 -84
- data/misc/openlayers/examples/popupMatrix.html +0 -652
- data/misc/openlayers/examples/proxy.cgi +0 -81
- data/misc/openlayers/examples/regular-polygons.html +0 -177
- data/misc/openlayers/examples/resize-features.html +0 -101
- data/misc/openlayers/examples/restricted-extent.html +0 -77
- data/misc/openlayers/examples/rotate-features.html +0 -113
- data/misc/openlayers/examples/select-feature-multilayer.html +0 -129
- data/misc/openlayers/examples/select-feature-openpopup.html +0 -106
- data/misc/openlayers/examples/select-feature.html +0 -170
- data/misc/openlayers/examples/setextent.html +0 -39
- data/misc/openlayers/examples/simplify-linestring.html +0 -103
- data/misc/openlayers/examples/simplify-linestring.js +0 -599
- data/misc/openlayers/examples/single-tile.html +0 -33
- data/misc/openlayers/examples/single-tile.js +0 -20
- data/misc/openlayers/examples/sld-parser.html +0 -70
- data/misc/openlayers/examples/sld.html +0 -31
- data/misc/openlayers/examples/sld.js +0 -102
- data/misc/openlayers/examples/snap-grid.html +0 -78
- data/misc/openlayers/examples/snap-grid.js +0 -81
- data/misc/openlayers/examples/snap-split.html +0 -281
- data/misc/openlayers/examples/snapping.html +0 -324
- data/misc/openlayers/examples/sos.html +0 -189
- data/misc/openlayers/examples/spherical-mercator.html +0 -120
- data/misc/openlayers/examples/split-feature.html +0 -116
- data/misc/openlayers/examples/strategy-bbox.html +0 -106
- data/misc/openlayers/examples/strategy-cluster-extended.html +0 -125
- data/misc/openlayers/examples/strategy-cluster-extended.js +0 -247
- data/misc/openlayers/examples/strategy-cluster-threshold.html +0 -149
- data/misc/openlayers/examples/strategy-cluster.html +0 -238
- data/misc/openlayers/examples/strategy-paging.html +0 -115
- data/misc/openlayers/examples/style-rules.html +0 -49
- data/misc/openlayers/examples/style-rules.js +0 -99
- data/misc/openlayers/examples/style.css +0 -143
- data/misc/openlayers/examples/style.mobile-jq.css +0 -62
- data/misc/openlayers/examples/stylemap.html +0 -100
- data/misc/openlayers/examples/styles-context.html +0 -117
- data/misc/openlayers/examples/styles-rotation.html +0 -93
- data/misc/openlayers/examples/styles-unique.html +0 -109
- data/misc/openlayers/examples/sundials-spherical-mercator.html +0 -111
- data/misc/openlayers/examples/sundials.html +0 -107
- data/misc/openlayers/examples/symbolizers-fill-stroke-graphic.html +0 -141
- data/misc/openlayers/examples/tasmania/TasmaniaCities.xml +0 -40
- data/misc/openlayers/examples/tasmania/TasmaniaRoads.xml +0 -204
- data/misc/openlayers/examples/tasmania/TasmaniaStateBoundaries.xml +0 -92
- data/misc/openlayers/examples/tasmania/TasmaniaWaterBodies.xml +0 -162
- data/misc/openlayers/examples/tasmania/sld-tasmania.xml +0 -594
- data/misc/openlayers/examples/teleportation.html +0 -76
- data/misc/openlayers/examples/textfile.txt +0 -4
- data/misc/openlayers/examples/tile-origin.html +0 -38
- data/misc/openlayers/examples/tile-origin.js +0 -16
- data/misc/openlayers/examples/tilecache.html +0 -58
- data/misc/openlayers/examples/tms.html +0 -62
- data/misc/openlayers/examples/transform-feature.html +0 -123
- data/misc/openlayers/examples/transition.html +0 -70
- data/misc/openlayers/examples/using-proj4js.html +0 -109
- data/misc/openlayers/examples/using-proj4js.js +0 -132
- data/misc/openlayers/examples/utfgrid-geography-class.html +0 -51
- data/misc/openlayers/examples/utfgrid-geography-class.js +0 -62
- data/misc/openlayers/examples/utfgrid.html +0 -64
- data/misc/openlayers/examples/utfgrid.js +0 -61
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/0/0.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/0/1.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/0/2.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/1/0.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/1/1.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/1/2.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/2/0.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/2/1.json +0 -1
- data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/2/2.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/0/0/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/1/0/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/1/0/1.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/1/1/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/1/1/1.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/0/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/0/1.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/0/2.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/0/3.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/1/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/1/1.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/1/2.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/1/3.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/2/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/2/1.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/2/2.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/2/3.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/3/0.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/3/1.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/3/2.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/geography-class/2/3/3.grid.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/0/0.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/0/1.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/0/2.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/1/0.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/1/1.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/1/2.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/2/0.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/2/1.json +0 -1
- data/misc/openlayers/examples/utfgrid/world_utfgrid/1/2/2.json +0 -1
- data/misc/openlayers/examples/utfgrid_twogrids.html +0 -51
- data/misc/openlayers/examples/utfgrid_twogrids.js +0 -70
- data/misc/openlayers/examples/vector-features-with-text.html +0 -138
- data/misc/openlayers/examples/vector-features.html +0 -149
- data/misc/openlayers/examples/vector-formats.html +0 -240
- data/misc/openlayers/examples/web-mercator.html +0 -50
- data/misc/openlayers/examples/web-mercator.js +0 -37
- data/misc/openlayers/examples/wfs-filter.html +0 -35
- data/misc/openlayers/examples/wfs-filter.js +0 -48
- data/misc/openlayers/examples/wfs-protocol-transactions.html +0 -104
- data/misc/openlayers/examples/wfs-protocol-transactions.js +0 -106
- data/misc/openlayers/examples/wfs-protocol.html +0 -55
- data/misc/openlayers/examples/wfs-reprojection.html +0 -42
- data/misc/openlayers/examples/wfs-reprojection.js +0 -60
- data/misc/openlayers/examples/wfs-snap-split.html +0 -292
- data/misc/openlayers/examples/wfs-spatial-filter.html +0 -37
- data/misc/openlayers/examples/wfs-spatial-filter.js +0 -36
- data/misc/openlayers/examples/wfs-states.html +0 -34
- data/misc/openlayers/examples/wfs-states.js +0 -35
- data/misc/openlayers/examples/wmc.html +0 -150
- data/misc/openlayers/examples/wms-long-url.html +0 -44
- data/misc/openlayers/examples/wms-long-url.js +0 -26
- data/misc/openlayers/examples/wms-untiled.html +0 -48
- data/misc/openlayers/examples/wms-v13.html +0 -57
- data/misc/openlayers/examples/wms.html +0 -49
- data/misc/openlayers/examples/wmst.html +0 -63
- data/misc/openlayers/examples/wmts-capabilities.html +0 -43
- data/misc/openlayers/examples/wmts-capabilities.js +0 -58
- data/misc/openlayers/examples/wmts-getfeatureinfo.html +0 -74
- data/misc/openlayers/examples/wmts-getfeatureinfo.js +0 -94
- data/misc/openlayers/examples/wmts.html +0 -41
- data/misc/openlayers/examples/wmts.js +0 -35
- data/misc/openlayers/examples/wps-client.html +0 -31
- data/misc/openlayers/examples/wps-client.js +0 -75
- data/misc/openlayers/examples/wps.html +0 -89
- data/misc/openlayers/examples/wps.js +0 -353
- data/misc/openlayers/examples/wrapDateLine.html +0 -73
- data/misc/openlayers/examples/xhtml.html +0 -42
- data/misc/openlayers/examples/xml.html +0 -161
- data/misc/openlayers/examples/xml/features.xml +0 -2
- data/misc/openlayers/examples/xml/georss-flickr.xml +0 -730
- data/misc/openlayers/examples/xml/track1.xml +0 -98
- data/misc/openlayers/examples/xml/wmsdescribelayer.xml +0 -5
- data/misc/openlayers/examples/xyz-esri.html +0 -45
- data/misc/openlayers/examples/yelp-georss.xml +0 -147
- data/misc/openlayers/examples/zoom.html +0 -68
- data/misc/openlayers/examples/zoom.js +0 -34
- data/misc/openlayers/examples/zoomLevels.html +0 -81
- data/misc/openlayers/examples/zoomify.html +0 -70
- data/misc/openlayers/img/blank.gif +0 -0
- data/misc/openlayers/img/cloud-popup-relative.png +0 -0
- data/misc/openlayers/img/drag-rectangle-off.png +0 -0
- data/misc/openlayers/img/drag-rectangle-on.png +0 -0
- data/misc/openlayers/img/east-mini.png +0 -0
- data/misc/openlayers/img/layer-switcher-maximize.png +0 -0
- data/misc/openlayers/img/layer-switcher-minimize.png +0 -0
- data/misc/openlayers/img/marker-blue.png +0 -0
- data/misc/openlayers/img/marker-gold.png +0 -0
- data/misc/openlayers/img/marker-green.png +0 -0
- data/misc/openlayers/img/marker.png +0 -0
- data/misc/openlayers/img/measuring-stick-off.png +0 -0
- data/misc/openlayers/img/measuring-stick-on.png +0 -0
- data/misc/openlayers/img/north-mini.png +0 -0
- data/misc/openlayers/img/panning-hand-off.png +0 -0
- data/misc/openlayers/img/panning-hand-on.png +0 -0
- data/misc/openlayers/img/slider.png +0 -0
- data/misc/openlayers/img/south-mini.png +0 -0
- data/misc/openlayers/img/west-mini.png +0 -0
- data/misc/openlayers/img/zoom-minus-mini.png +0 -0
- data/misc/openlayers/img/zoom-plus-mini.png +0 -0
- data/misc/openlayers/img/zoom-world-mini.png +0 -0
- data/misc/openlayers/img/zoombar.png +0 -0
- data/misc/openlayers/lib/Firebug/errorIcon.png +0 -0
- data/misc/openlayers/lib/Firebug/firebug.css +0 -209
- data/misc/openlayers/lib/Firebug/firebug.html +0 -23
- data/misc/openlayers/lib/Firebug/firebug.js +0 -674
- data/misc/openlayers/lib/Firebug/firebugx.js +0 -10
- data/misc/openlayers/lib/Firebug/infoIcon.png +0 -0
- data/misc/openlayers/lib/Firebug/license.txt +0 -30
- data/misc/openlayers/lib/Firebug/readme.txt +0 -13
- data/misc/openlayers/lib/Firebug/warningIcon.png +0 -0
- data/misc/openlayers/lib/OpenLayers.js +0 -429
- data/misc/openlayers/lib/OpenLayers/Animation.js +0 -102
- data/misc/openlayers/lib/OpenLayers/BaseTypes.js +0 -463
- data/misc/openlayers/lib/OpenLayers/BaseTypes/Bounds.js +0 -837
- data/misc/openlayers/lib/OpenLayers/BaseTypes/Class.js +0 -121
- data/misc/openlayers/lib/OpenLayers/BaseTypes/Date.js +0 -123
- data/misc/openlayers/lib/OpenLayers/BaseTypes/Element.js +0 -189
- data/misc/openlayers/lib/OpenLayers/BaseTypes/LonLat.js +0 -215
- data/misc/openlayers/lib/OpenLayers/BaseTypes/Pixel.js +0 -143
- data/misc/openlayers/lib/OpenLayers/BaseTypes/Size.js +0 -89
- data/misc/openlayers/lib/OpenLayers/Console.js +0 -250
- data/misc/openlayers/lib/OpenLayers/Control.js +0 -371
- data/misc/openlayers/lib/OpenLayers/Control/ArgParser.js +0 -182
- data/misc/openlayers/lib/OpenLayers/Control/Attribution.js +0 -104
- data/misc/openlayers/lib/OpenLayers/Control/Button.js +0 -44
- data/misc/openlayers/lib/OpenLayers/Control/CacheRead.js +0 -156
- data/misc/openlayers/lib/OpenLayers/Control/CacheWrite.js +0 -257
- data/misc/openlayers/lib/OpenLayers/Control/DragFeature.js +0 -366
- data/misc/openlayers/lib/OpenLayers/Control/DragPan.js +0 -156
- data/misc/openlayers/lib/OpenLayers/Control/DrawFeature.js +0 -229
- data/misc/openlayers/lib/OpenLayers/Control/EditingToolbar.js +0 -81
- data/misc/openlayers/lib/OpenLayers/Control/Geolocate.js +0 -192
- data/misc/openlayers/lib/OpenLayers/Control/GetFeature.js +0 -597
- data/misc/openlayers/lib/OpenLayers/Control/Graticule.js +0 -377
- data/misc/openlayers/lib/OpenLayers/Control/KeyboardDefaults.js +0 -142
- data/misc/openlayers/lib/OpenLayers/Control/LayerSwitcher.js +0 -521
- data/misc/openlayers/lib/OpenLayers/Control/Measure.js +0 -379
- data/misc/openlayers/lib/OpenLayers/Control/ModifyFeature.js +0 -835
- data/misc/openlayers/lib/OpenLayers/Control/MousePosition.js +0 -227
- data/misc/openlayers/lib/OpenLayers/Control/NavToolbar.js +0 -57
- data/misc/openlayers/lib/OpenLayers/Control/Navigation.js +0 -345
- data/misc/openlayers/lib/OpenLayers/Control/NavigationHistory.js +0 -423
- data/misc/openlayers/lib/OpenLayers/Control/OverviewMap.js +0 -750
- data/misc/openlayers/lib/OpenLayers/Control/Pan.js +0 -95
- data/misc/openlayers/lib/OpenLayers/Control/PanPanel.js +0 -73
- data/misc/openlayers/lib/OpenLayers/Control/PanZoom.js +0 -233
- data/misc/openlayers/lib/OpenLayers/Control/PanZoomBar.js +0 -408
- data/misc/openlayers/lib/OpenLayers/Control/Panel.js +0 -431
- data/misc/openlayers/lib/OpenLayers/Control/Permalink.js +0 -257
- data/misc/openlayers/lib/OpenLayers/Control/PinchZoom.js +0 -157
- data/misc/openlayers/lib/OpenLayers/Control/SLDSelect.js +0 -567
- data/misc/openlayers/lib/OpenLayers/Control/Scale.js +0 -100
- data/misc/openlayers/lib/OpenLayers/Control/ScaleLine.js +0 -220
- data/misc/openlayers/lib/OpenLayers/Control/SelectFeature.js +0 -643
- data/misc/openlayers/lib/OpenLayers/Control/Snapping.js +0 -560
- data/misc/openlayers/lib/OpenLayers/Control/Split.js +0 -494
- data/misc/openlayers/lib/OpenLayers/Control/TouchNavigation.js +0 -182
- data/misc/openlayers/lib/OpenLayers/Control/TransformFeature.js +0 -624
- data/misc/openlayers/lib/OpenLayers/Control/UTFGrid.js +0 -240
- data/misc/openlayers/lib/OpenLayers/Control/WMSGetFeatureInfo.js +0 -532
- data/misc/openlayers/lib/OpenLayers/Control/WMTSGetFeatureInfo.js +0 -400
- data/misc/openlayers/lib/OpenLayers/Control/Zoom.js +0 -138
- data/misc/openlayers/lib/OpenLayers/Control/ZoomBox.js +0 -129
- data/misc/openlayers/lib/OpenLayers/Control/ZoomIn.js +0 -29
- data/misc/openlayers/lib/OpenLayers/Control/ZoomOut.js +0 -29
- data/misc/openlayers/lib/OpenLayers/Control/ZoomPanel.js +0 -54
- data/misc/openlayers/lib/OpenLayers/Control/ZoomToMaxExtent.js +0 -35
- data/misc/openlayers/lib/OpenLayers/Events.js +0 -1170
- data/misc/openlayers/lib/OpenLayers/Events/buttonclick.js +0 -206
- data/misc/openlayers/lib/OpenLayers/Events/featureclick.js +0 -321
- data/misc/openlayers/lib/OpenLayers/Feature.js +0 -225
- data/misc/openlayers/lib/OpenLayers/Feature/Vector.js +0 -510
- data/misc/openlayers/lib/OpenLayers/Filter.js +0 -87
- data/misc/openlayers/lib/OpenLayers/Filter/Comparison.js +0 -267
- data/misc/openlayers/lib/OpenLayers/Filter/FeatureId.js +0 -87
- data/misc/openlayers/lib/OpenLayers/Filter/Function.js +0 -49
- data/misc/openlayers/lib/OpenLayers/Filter/Logical.js +0 -121
- data/misc/openlayers/lib/OpenLayers/Filter/Spatial.js +0 -122
- data/misc/openlayers/lib/OpenLayers/Format.js +0 -123
- data/misc/openlayers/lib/OpenLayers/Format/ArcXML.js +0 -1028
- data/misc/openlayers/lib/OpenLayers/Format/ArcXML/Features.js +0 -46
- data/misc/openlayers/lib/OpenLayers/Format/Atom.js +0 -712
- data/misc/openlayers/lib/OpenLayers/Format/CQL.js +0 -452
- data/misc/openlayers/lib/OpenLayers/Format/CSWGetDomain.js +0 -34
- data/misc/openlayers/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js +0 -240
- data/misc/openlayers/lib/OpenLayers/Format/CSWGetRecords.js +0 -34
- data/misc/openlayers/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js +0 -457
- data/misc/openlayers/lib/OpenLayers/Format/Context.js +0 -334
- data/misc/openlayers/lib/OpenLayers/Format/EncodedPolyline.js +0 -557
- data/misc/openlayers/lib/OpenLayers/Format/Filter.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Format/Filter/v1.js +0 -504
- data/misc/openlayers/lib/OpenLayers/Format/Filter/v1_0_0.js +0 -184
- data/misc/openlayers/lib/OpenLayers/Format/Filter/v1_1_0.js +0 -222
- data/misc/openlayers/lib/OpenLayers/Format/GML.js +0 -923
- data/misc/openlayers/lib/OpenLayers/Format/GML/Base.js +0 -645
- data/misc/openlayers/lib/OpenLayers/Format/GML/v2.js +0 -193
- data/misc/openlayers/lib/OpenLayers/Format/GML/v3.js +0 -477
- data/misc/openlayers/lib/OpenLayers/Format/GPX.js +0 -385
- data/misc/openlayers/lib/OpenLayers/Format/GeoJSON.js +0 -716
- data/misc/openlayers/lib/OpenLayers/Format/GeoRSS.js +0 -409
- data/misc/openlayers/lib/OpenLayers/Format/JSON.js +0 -398
- data/misc/openlayers/lib/OpenLayers/Format/KML.js +0 -1517
- data/misc/openlayers/lib/OpenLayers/Format/OGCExceptionReport.js +0 -108
- data/misc/openlayers/lib/OpenLayers/Format/OSM.js +0 -465
- data/misc/openlayers/lib/OpenLayers/Format/OWSCommon.js +0 -78
- data/misc/openlayers/lib/OpenLayers/Format/OWSCommon/v1.js +0 -318
- data/misc/openlayers/lib/OpenLayers/Format/OWSCommon/v1_0_0.js +0 -62
- data/misc/openlayers/lib/OpenLayers/Format/OWSCommon/v1_1_0.js +0 -116
- data/misc/openlayers/lib/OpenLayers/Format/OWSContext.js +0 -86
- data/misc/openlayers/lib/OpenLayers/Format/OWSContext/v0_3_1.js +0 -595
- data/misc/openlayers/lib/OpenLayers/Format/QueryStringFilter.js +0 -183
- data/misc/openlayers/lib/OpenLayers/Format/SLD.js +0 -81
- data/misc/openlayers/lib/OpenLayers/Format/SLD/v1.js +0 -1309
- data/misc/openlayers/lib/OpenLayers/Format/SLD/v1_0_0.js +0 -46
- data/misc/openlayers/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js +0 -149
- data/misc/openlayers/lib/OpenLayers/Format/SOSCapabilities.js +0 -48
- data/misc/openlayers/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js +0 -158
- data/misc/openlayers/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js +0 -190
- data/misc/openlayers/lib/OpenLayers/Format/SOSGetObservation.js +0 -302
- data/misc/openlayers/lib/OpenLayers/Format/Text.js +0 -151
- data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities.js +0 -47
- data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities/v1.js +0 -55
- data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js +0 -170
- data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js +0 -109
- data/misc/openlayers/lib/OpenLayers/Format/WCSGetCoverage.js +0 -199
- data/misc/openlayers/lib/OpenLayers/Format/WFS.js +0 -223
- data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities.js +0 -47
- data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1.js +0 -129
- data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js +0 -115
- data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js +0 -63
- data/misc/openlayers/lib/OpenLayers/Format/WFSDescribeFeatureType.js +0 -234
- data/misc/openlayers/lib/OpenLayers/Format/WFST.js +0 -34
- data/misc/openlayers/lib/OpenLayers/Format/WFST/v1.js +0 -446
- data/misc/openlayers/lib/OpenLayers/Format/WFST/v1_0_0.js +0 -174
- data/misc/openlayers/lib/OpenLayers/Format/WFST/v1_1_0.js +0 -189
- data/misc/openlayers/lib/OpenLayers/Format/WKT.js +0 -392
- data/misc/openlayers/lib/OpenLayers/Format/WMC.js +0 -182
- data/misc/openlayers/lib/OpenLayers/Format/WMC/v1.js +0 -1267
- data/misc/openlayers/lib/OpenLayers/Format/WMC/v1_0_0.js +0 -104
- data/misc/openlayers/lib/OpenLayers/Format/WMC/v1_1_0.js +0 -149
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities.js +0 -56
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js +0 -368
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1.js +0 -122
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js +0 -57
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js +0 -60
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js +0 -85
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_3.js +0 -128
- data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js +0 -30
- data/misc/openlayers/lib/OpenLayers/Format/WMSDescribeLayer.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js +0 -122
- data/misc/openlayers/lib/OpenLayers/Format/WMSGetFeatureInfo.js +0 -296
- data/misc/openlayers/lib/OpenLayers/Format/WMTSCapabilities.js +0 -230
- data/misc/openlayers/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js +0 -251
- data/misc/openlayers/lib/OpenLayers/Format/WPSCapabilities.js +0 -48
- data/misc/openlayers/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js +0 -119
- data/misc/openlayers/lib/OpenLayers/Format/WPSDescribeProcess.js +0 -185
- data/misc/openlayers/lib/OpenLayers/Format/WPSExecute.js +0 -395
- data/misc/openlayers/lib/OpenLayers/Format/XLS.js +0 -68
- data/misc/openlayers/lib/OpenLayers/Format/XLS/v1.js +0 -304
- data/misc/openlayers/lib/OpenLayers/Format/XLS/v1_1_0.js +0 -48
- data/misc/openlayers/lib/OpenLayers/Format/XML.js +0 -897
- data/misc/openlayers/lib/OpenLayers/Format/XML/VersionedOGC.js +0 -212
- data/misc/openlayers/lib/OpenLayers/Geometry.js +0 -500
- data/misc/openlayers/lib/OpenLayers/Geometry/Collection.js +0 -563
- data/misc/openlayers/lib/OpenLayers/Geometry/Curve.js +0 -89
- data/misc/openlayers/lib/OpenLayers/Geometry/LineString.js +0 -646
- data/misc/openlayers/lib/OpenLayers/Geometry/LinearRing.js +0 -433
- data/misc/openlayers/lib/OpenLayers/Geometry/MultiLineString.js +0 -258
- data/misc/openlayers/lib/OpenLayers/Geometry/MultiPoint.js +0 -66
- data/misc/openlayers/lib/OpenLayers/Geometry/MultiPolygon.js +0 -42
- data/misc/openlayers/lib/OpenLayers/Geometry/Point.js +0 -283
- data/misc/openlayers/lib/OpenLayers/Geometry/Polygon.js +0 -255
- data/misc/openlayers/lib/OpenLayers/Handler.js +0 -325
- data/misc/openlayers/lib/OpenLayers/Handler/Box.js +0 -244
- data/misc/openlayers/lib/OpenLayers/Handler/Click.js +0 -505
- data/misc/openlayers/lib/OpenLayers/Handler/Drag.js +0 -547
- data/misc/openlayers/lib/OpenLayers/Handler/Feature.js +0 -434
- data/misc/openlayers/lib/OpenLayers/Handler/Hover.js +0 -180
- data/misc/openlayers/lib/OpenLayers/Handler/Keyboard.js +0 -117
- data/misc/openlayers/lib/OpenLayers/Handler/MouseWheel.js +0 -264
- data/misc/openlayers/lib/OpenLayers/Handler/Path.js +0 -543
- data/misc/openlayers/lib/OpenLayers/Handler/Pinch.js +0 -239
- data/misc/openlayers/lib/OpenLayers/Handler/Point.js +0 -556
- data/misc/openlayers/lib/OpenLayers/Handler/Polygon.js +0 -305
- data/misc/openlayers/lib/OpenLayers/Handler/RegularPolygon.js +0 -429
- data/misc/openlayers/lib/OpenLayers/Icon.js +0 -243
- data/misc/openlayers/lib/OpenLayers/Kinetic.js +0 -178
- data/misc/openlayers/lib/OpenLayers/Lang.js +0 -134
- data/misc/openlayers/lib/OpenLayers/Lang/ar.js +0 -32
- data/misc/openlayers/lib/OpenLayers/Lang/be-tarask.js +0 -54
- data/misc/openlayers/lib/OpenLayers/Lang/bg.js +0 -25
- data/misc/openlayers/lib/OpenLayers/Lang/br.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/ca.js +0 -89
- data/misc/openlayers/lib/OpenLayers/Lang/cs-CZ.js +0 -45
- data/misc/openlayers/lib/OpenLayers/Lang/da-DK.js +0 -80
- data/misc/openlayers/lib/OpenLayers/Lang/de.js +0 -55
- data/misc/openlayers/lib/OpenLayers/Lang/el.js +0 -19
- data/misc/openlayers/lib/OpenLayers/Lang/en-CA.js +0 -21
- data/misc/openlayers/lib/OpenLayers/Lang/en.js +0 -89
- data/misc/openlayers/lib/OpenLayers/Lang/es.js +0 -90
- data/misc/openlayers/lib/OpenLayers/Lang/fi.js +0 -32
- data/misc/openlayers/lib/OpenLayers/Lang/fr.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/fur.js +0 -35
- data/misc/openlayers/lib/OpenLayers/Lang/gl.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/gsw.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/hr.js +0 -37
- data/misc/openlayers/lib/OpenLayers/Lang/hsb.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/hu.js +0 -54
- data/misc/openlayers/lib/OpenLayers/Lang/ia.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/id.js +0 -54
- data/misc/openlayers/lib/OpenLayers/Lang/io.js +0 -19
- data/misc/openlayers/lib/OpenLayers/Lang/is.js +0 -27
- data/misc/openlayers/lib/OpenLayers/Lang/it.js +0 -80
- data/misc/openlayers/lib/OpenLayers/Lang/ja.js +0 -54
- data/misc/openlayers/lib/OpenLayers/Lang/km.js +0 -23
- data/misc/openlayers/lib/OpenLayers/Lang/ksh.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/lt.js +0 -47
- data/misc/openlayers/lib/OpenLayers/Lang/nb.js +0 -82
- data/misc/openlayers/lib/OpenLayers/Lang/nds.js +0 -37
- data/misc/openlayers/lib/OpenLayers/Lang/nl.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/nn.js +0 -19
- data/misc/openlayers/lib/OpenLayers/Lang/oc.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/pl.js +0 -89
- data/misc/openlayers/lib/OpenLayers/Lang/pt-BR.js +0 -54
- data/misc/openlayers/lib/OpenLayers/Lang/pt.js +0 -55
- data/misc/openlayers/lib/OpenLayers/Lang/ro.js +0 -69
- data/misc/openlayers/lib/OpenLayers/Lang/ru.js +0 -56
- data/misc/openlayers/lib/OpenLayers/Lang/sk.js +0 -44
- data/misc/openlayers/lib/OpenLayers/Lang/sv-SE.js +0 -45
- data/misc/openlayers/lib/OpenLayers/Lang/te.js +0 -27
- data/misc/openlayers/lib/OpenLayers/Lang/vi.js +0 -53
- data/misc/openlayers/lib/OpenLayers/Lang/zh-CN.js +0 -80
- data/misc/openlayers/lib/OpenLayers/Lang/zh-TW.js +0 -81
- data/misc/openlayers/lib/OpenLayers/Layer.js +0 -1377
- data/misc/openlayers/lib/OpenLayers/Layer/ArcGIS93Rest.js +0 -225
- data/misc/openlayers/lib/OpenLayers/Layer/ArcGISCache.js +0 -480
- data/misc/openlayers/lib/OpenLayers/Layer/ArcIMS.js +0 -425
- data/misc/openlayers/lib/OpenLayers/Layer/Bing.js +0 -333
- data/misc/openlayers/lib/OpenLayers/Layer/Boxes.js +0 -76
- data/misc/openlayers/lib/OpenLayers/Layer/EventPane.js +0 -441
- data/misc/openlayers/lib/OpenLayers/Layer/FixedZoomLevels.js +0 -319
- data/misc/openlayers/lib/OpenLayers/Layer/GeoRSS.js +0 -265
- data/misc/openlayers/lib/OpenLayers/Layer/Google.js +0 -809
- data/misc/openlayers/lib/OpenLayers/Layer/Google/v3.js +0 -351
- data/misc/openlayers/lib/OpenLayers/Layer/Grid.js +0 -1343
- data/misc/openlayers/lib/OpenLayers/Layer/HTTPRequest.js +0 -230
- data/misc/openlayers/lib/OpenLayers/Layer/Image.js +0 -259
- data/misc/openlayers/lib/OpenLayers/Layer/KaMap.js +0 -192
- data/misc/openlayers/lib/OpenLayers/Layer/KaMapCache.js +0 -143
- data/misc/openlayers/lib/OpenLayers/Layer/MapGuide.js +0 -443
- data/misc/openlayers/lib/OpenLayers/Layer/MapServer.js +0 -181
- data/misc/openlayers/lib/OpenLayers/Layer/Markers.js +0 -187
- data/misc/openlayers/lib/OpenLayers/Layer/OSM.js +0 -123
- data/misc/openlayers/lib/OpenLayers/Layer/PointGrid.js +0 -299
- data/misc/openlayers/lib/OpenLayers/Layer/PointTrack.js +0 -125
- data/misc/openlayers/lib/OpenLayers/Layer/SphericalMercator.js +0 -146
- data/misc/openlayers/lib/OpenLayers/Layer/TMS.js +0 -202
- data/misc/openlayers/lib/OpenLayers/Layer/Text.js +0 -267
- data/misc/openlayers/lib/OpenLayers/Layer/TileCache.js +0 -140
- data/misc/openlayers/lib/OpenLayers/Layer/UTFGrid.js +0 -184
- data/misc/openlayers/lib/OpenLayers/Layer/Vector.js +0 -1007
- data/misc/openlayers/lib/OpenLayers/Layer/Vector/RootContainer.js +0 -154
- data/misc/openlayers/lib/OpenLayers/Layer/WMS.js +0 -267
- data/misc/openlayers/lib/OpenLayers/Layer/WMTS.js +0 -510
- data/misc/openlayers/lib/OpenLayers/Layer/WorldWind.js +0 -105
- data/misc/openlayers/lib/OpenLayers/Layer/XYZ.js +0 -172
- data/misc/openlayers/lib/OpenLayers/Layer/Zoomify.js +0 -260
- data/misc/openlayers/lib/OpenLayers/Map.js +0 -2867
- data/misc/openlayers/lib/OpenLayers/Marker.js +0 -241
- data/misc/openlayers/lib/OpenLayers/Marker/Box.js +0 -120
- data/misc/openlayers/lib/OpenLayers/Popup.js +0 -1065
- data/misc/openlayers/lib/OpenLayers/Popup/Anchored.js +0 -195
- data/misc/openlayers/lib/OpenLayers/Popup/Framed.js +0 -343
- data/misc/openlayers/lib/OpenLayers/Popup/FramedCloud.js +0 -227
- data/misc/openlayers/lib/OpenLayers/Projection.js +0 -322
- data/misc/openlayers/lib/OpenLayers/Protocol.js +0 -291
- data/misc/openlayers/lib/OpenLayers/Protocol/CSW.js +0 -30
- data/misc/openlayers/lib/OpenLayers/Protocol/CSW/v2_0_2.js +0 -127
- data/misc/openlayers/lib/OpenLayers/Protocol/HTTP.js +0 -580
- data/misc/openlayers/lib/OpenLayers/Protocol/SOS.js +0 -33
- data/misc/openlayers/lib/OpenLayers/Protocol/SOS/v1_0_0.js +0 -133
- data/misc/openlayers/lib/OpenLayers/Protocol/Script.js +0 -377
- data/misc/openlayers/lib/OpenLayers/Protocol/WFS.js +0 -86
- data/misc/openlayers/lib/OpenLayers/Protocol/WFS/v1.js +0 -453
- data/misc/openlayers/lib/OpenLayers/Protocol/WFS/v1_0_0.js +0 -44
- data/misc/openlayers/lib/OpenLayers/Protocol/WFS/v1_1_0.js +0 -68
- data/misc/openlayers/lib/OpenLayers/Renderer.js +0 -432
- data/misc/openlayers/lib/OpenLayers/Renderer/Canvas.js +0 -906
- data/misc/openlayers/lib/OpenLayers/Renderer/Elements.js +0 -1053
- data/misc/openlayers/lib/OpenLayers/Renderer/SVG.js +0 -1012
- data/misc/openlayers/lib/OpenLayers/Renderer/VML.js +0 -985
- data/misc/openlayers/lib/OpenLayers/Request.js +0 -429
- data/misc/openlayers/lib/OpenLayers/Request/XMLHttpRequest.js +0 -458
- data/misc/openlayers/lib/OpenLayers/Rule.js +0 -236
- data/misc/openlayers/lib/OpenLayers/SingleFile.js +0 -78
- data/misc/openlayers/lib/OpenLayers/Spherical.js +0 -67
- data/misc/openlayers/lib/OpenLayers/Strategy.js +0 -121
- data/misc/openlayers/lib/OpenLayers/Strategy/BBOX.js +0 -290
- data/misc/openlayers/lib/OpenLayers/Strategy/Cluster.js +0 -283
- data/misc/openlayers/lib/OpenLayers/Strategy/Filter.js +0 -159
- data/misc/openlayers/lib/OpenLayers/Strategy/Fixed.js +0 -135
- data/misc/openlayers/lib/OpenLayers/Strategy/Paging.js +0 -233
- data/misc/openlayers/lib/OpenLayers/Strategy/Refresh.js +0 -141
- data/misc/openlayers/lib/OpenLayers/Strategy/Save.js +0 -231
- data/misc/openlayers/lib/OpenLayers/Style.js +0 -448
- data/misc/openlayers/lib/OpenLayers/Style2.js +0 -112
- data/misc/openlayers/lib/OpenLayers/StyleMap.js +0 -161
- data/misc/openlayers/lib/OpenLayers/Symbolizer.js +0 -55
- data/misc/openlayers/lib/OpenLayers/Symbolizer/Line.js +0 -74
- data/misc/openlayers/lib/OpenLayers/Symbolizer/Point.js +0 -157
- data/misc/openlayers/lib/OpenLayers/Symbolizer/Polygon.js +0 -88
- data/misc/openlayers/lib/OpenLayers/Symbolizer/Raster.js +0 -34
- data/misc/openlayers/lib/OpenLayers/Symbolizer/Text.js +0 -70
- data/misc/openlayers/lib/OpenLayers/Tile.js +0 -292
- data/misc/openlayers/lib/OpenLayers/Tile/Image.js +0 -510
- data/misc/openlayers/lib/OpenLayers/Tile/Image/IFrame.js +0 -233
- data/misc/openlayers/lib/OpenLayers/Tile/UTFGrid.js +0 -252
- data/misc/openlayers/lib/OpenLayers/TileManager.js +0 -462
- data/misc/openlayers/lib/OpenLayers/Tween.js +0 -361
- data/misc/openlayers/lib/OpenLayers/Util.js +0 -1773
- data/misc/openlayers/lib/OpenLayers/Util/vendorPrefix.js +0 -131
- data/misc/openlayers/lib/OpenLayers/WPSClient.js +0 -223
- data/misc/openlayers/lib/OpenLayers/WPSProcess.js +0 -501
- data/misc/openlayers/lib/Rico/Color.js +0 -253
- data/misc/openlayers/lib/Rico/Corner.js +0 -339
- data/misc/openlayers/lib/Rico/license.js +0 -19
- data/misc/openlayers/lib/deprecated.js +0 -5842
- data/misc/openlayers/license.txt +0 -27
- data/misc/openlayers/licenses/APACHE-2.0.txt +0 -202
- data/misc/openlayers/licenses/BSD-LICENSE.txt +0 -28
- data/misc/openlayers/licenses/MIT-LICENSE.txt +0 -18
- data/misc/openlayers/notes/2.12.md +0 -391
- data/misc/openlayers/notes/2.13.md +0 -159
- data/misc/openlayers/readme.md +0 -79
- data/misc/openlayers/tests/Animation.html +0 -96
- data/misc/openlayers/tests/BaseTypes.html +0 -387
- data/misc/openlayers/tests/BaseTypes/Bounds.html +0 -738
- data/misc/openlayers/tests/BaseTypes/Class.html +0 -350
- data/misc/openlayers/tests/BaseTypes/Date.html +0 -191
- data/misc/openlayers/tests/BaseTypes/Element.html +0 -195
- data/misc/openlayers/tests/BaseTypes/LonLat.html +0 -241
- data/misc/openlayers/tests/BaseTypes/Pixel.html +0 -123
- data/misc/openlayers/tests/BaseTypes/Size.html +0 -67
- data/misc/openlayers/tests/Console.html +0 -39
- data/misc/openlayers/tests/Control.html +0 -107
- data/misc/openlayers/tests/Control/ArgParser.html +0 -26
- data/misc/openlayers/tests/Control/Attribution.html +0 -60
- data/misc/openlayers/tests/Control/Button.html +0 -17
- data/misc/openlayers/tests/Control/CacheRead.html +0 -108
- data/misc/openlayers/tests/Control/CacheWrite.html +0 -90
- data/misc/openlayers/tests/Control/DragFeature.html +0 -383
- data/misc/openlayers/tests/Control/DragPan.html +0 -104
- data/misc/openlayers/tests/Control/DrawFeature.html +0 -160
- data/misc/openlayers/tests/Control/EditingToolbar.html +0 -33
- data/misc/openlayers/tests/Control/Geolocate.html +0 -129
- data/misc/openlayers/tests/Control/GetFeature.html +0 -177
- data/misc/openlayers/tests/Control/Graticule.html +0 -66
- data/misc/openlayers/tests/Control/KeyboardDefaults.html +0 -173
- data/misc/openlayers/tests/Control/LayerSwitcher.html +0 -249
- data/misc/openlayers/tests/Control/Measure.html +0 -386
- data/misc/openlayers/tests/Control/ModifyFeature.html +0 -828
- data/misc/openlayers/tests/Control/MousePosition.html +0 -109
- data/misc/openlayers/tests/Control/NavToolbar.html +0 -45
- data/misc/openlayers/tests/Control/Navigation.html +0 -200
- data/misc/openlayers/tests/Control/NavigationHistory.html +0 -245
- data/misc/openlayers/tests/Control/OverviewMap.html +0 -266
- data/misc/openlayers/tests/Control/Pan.html +0 -201
- data/misc/openlayers/tests/Control/PanPanel.html +0 -61
- data/misc/openlayers/tests/Control/PanZoom.html +0 -244
- data/misc/openlayers/tests/Control/PanZoomBar.html +0 -245
- data/misc/openlayers/tests/Control/Panel.html +0 -382
- data/misc/openlayers/tests/Control/Permalink.html +0 -453
- data/misc/openlayers/tests/Control/PinchZoom.html +0 -134
- data/misc/openlayers/tests/Control/SLDSelect.html +0 -239
- data/misc/openlayers/tests/Control/Scale.html +0 -54
- data/misc/openlayers/tests/Control/ScaleLine.html +0 -187
- data/misc/openlayers/tests/Control/SelectFeature.html +0 -632
- data/misc/openlayers/tests/Control/Snapping.html +0 -448
- data/misc/openlayers/tests/Control/Split.html +0 -319
- data/misc/openlayers/tests/Control/TouchNavigation.html +0 -155
- data/misc/openlayers/tests/Control/TransformFeature.html +0 -129
- data/misc/openlayers/tests/Control/UTFGrid.html +0 -120
- data/misc/openlayers/tests/Control/WMSGetFeatureInfo.html +0 -644
- data/misc/openlayers/tests/Control/WMTSGetFeatureInfo.html +0 -334
- data/misc/openlayers/tests/Control/Zoom.html +0 -83
- data/misc/openlayers/tests/Control/ZoomBox.html +0 -54
- data/misc/openlayers/tests/Control/ZoomIn.html +0 -101
- data/misc/openlayers/tests/Control/ZoomOut.html +0 -100
- data/misc/openlayers/tests/Control/ZoomToMaxExtent.html +0 -102
- data/misc/openlayers/tests/Events.html +0 -487
- data/misc/openlayers/tests/Events/buttonclick.html +0 -214
- data/misc/openlayers/tests/Events/featureclick.html +0 -91
- data/misc/openlayers/tests/Extras.html +0 -21
- data/misc/openlayers/tests/Feature.html +0 -205
- data/misc/openlayers/tests/Feature/Vector.html +0 -170
- data/misc/openlayers/tests/Filter.html +0 -31
- data/misc/openlayers/tests/Filter/Comparison.html +0 -373
- data/misc/openlayers/tests/Filter/FeatureId.html +0 -67
- data/misc/openlayers/tests/Filter/Logical.html +0 -144
- data/misc/openlayers/tests/Filter/Spatial.html +0 -112
- data/misc/openlayers/tests/Format.html +0 -23
- data/misc/openlayers/tests/Format/ArcXML.html +0 -277
- data/misc/openlayers/tests/Format/ArcXML/Features.html +0 -69
- data/misc/openlayers/tests/Format/Atom.html +0 -450
- data/misc/openlayers/tests/Format/CQL.html +0 -364
- data/misc/openlayers/tests/Format/CSWGetDomain.html +0 -23
- data/misc/openlayers/tests/Format/CSWGetDomain/v2_0_2.html +0 -56
- data/misc/openlayers/tests/Format/CSWGetDomain/v2_0_2.js +0 -18
- data/misc/openlayers/tests/Format/CSWGetRecords.html +0 -23
- data/misc/openlayers/tests/Format/CSWGetRecords/v2_0_2.html +0 -88
- data/misc/openlayers/tests/Format/CSWGetRecords/v2_0_2.js +0 -50
- data/misc/openlayers/tests/Format/EncodedPolyline.html +0 -372
- data/misc/openlayers/tests/Format/Filter.html +0 -21
- data/misc/openlayers/tests/Format/Filter/v1.html +0 -404
- data/misc/openlayers/tests/Format/Filter/v1_0_0.html +0 -295
- data/misc/openlayers/tests/Format/Filter/v1_1_0.html +0 -402
- data/misc/openlayers/tests/Format/GML.html +0 -462
- data/misc/openlayers/tests/Format/GML/cases.js +0 -232
- data/misc/openlayers/tests/Format/GML/v2.html +0 -684
- data/misc/openlayers/tests/Format/GML/v3.html +0 -828
- data/misc/openlayers/tests/Format/GPX.html +0 -179
- data/misc/openlayers/tests/Format/GeoJSON.html +0 -468
- data/misc/openlayers/tests/Format/GeoRSS.html +0 -122
- data/misc/openlayers/tests/Format/JSON.html +0 -53
- data/misc/openlayers/tests/Format/KML.html +0 -1437
- data/misc/openlayers/tests/Format/OGCExceptionReport.html +0 -100
- data/misc/openlayers/tests/Format/OSM.html +0 -115
- data/misc/openlayers/tests/Format/OWSCommon/v1_0_0.html +0 -34
- data/misc/openlayers/tests/Format/OWSCommon/v1_1_0.html +0 -34
- data/misc/openlayers/tests/Format/OWSContext/v0_3_1.html +0 -278
- data/misc/openlayers/tests/Format/QueryStringFilter.html +0 -306
- data/misc/openlayers/tests/Format/SLD.html +0 -36
- data/misc/openlayers/tests/Format/SLD/v1_0_0.html +0 -1028
- data/misc/openlayers/tests/Format/SLD/v1_0_0_GeoServer.html +0 -228
- data/misc/openlayers/tests/Format/SOSCapabilities/v1_0_0.html +0 -80
- data/misc/openlayers/tests/Format/SOSCapabilities/v1_0_0.js +0 -484
- data/misc/openlayers/tests/Format/SOSGetFeatureOfInterest.html +0 -80
- data/misc/openlayers/tests/Format/SOSGetObservation.html +0 -183
- data/misc/openlayers/tests/Format/Text.html +0 -49
- data/misc/openlayers/tests/Format/WCSCapabilities.html +0 -43
- data/misc/openlayers/tests/Format/WCSCapabilities/v1.html +0 -87
- data/misc/openlayers/tests/Format/WCSGetCoverage.html +0 -80
- data/misc/openlayers/tests/Format/WFS.html +0 -81
- data/misc/openlayers/tests/Format/WFSCapabilities.html +0 -43
- data/misc/openlayers/tests/Format/WFSCapabilities/v1.html +0 -179
- data/misc/openlayers/tests/Format/WFSDescribeFeatureType.html +0 -436
- data/misc/openlayers/tests/Format/WFST.html +0 -23
- data/misc/openlayers/tests/Format/WFST/v1.html +0 -455
- data/misc/openlayers/tests/Format/WFST/v1_0_0.html +0 -135
- data/misc/openlayers/tests/Format/WFST/v1_1_0.html +0 -236
- data/misc/openlayers/tests/Format/WKT.html +0 -297
- data/misc/openlayers/tests/Format/WMC.html +0 -315
- data/misc/openlayers/tests/Format/WMC/v1.html +0 -266
- data/misc/openlayers/tests/Format/WMC/v1_1_0.html +0 -86
- data/misc/openlayers/tests/Format/WMSCapabilities.html +0 -20
- data/misc/openlayers/tests/Format/WMSCapabilities/v1_1_1.html +0 -5209
- data/misc/openlayers/tests/Format/WMSCapabilities/v1_1_1_WMSC.html +0 -348
- data/misc/openlayers/tests/Format/WMSCapabilities/v1_3_0.html +0 -614
- data/misc/openlayers/tests/Format/WMSDescribeLayer.html +0 -65
- data/misc/openlayers/tests/Format/WMSGetFeatureInfo.html +0 -319
- data/misc/openlayers/tests/Format/WMTSCapabilities.html +0 -20
- data/misc/openlayers/tests/Format/WMTSCapabilities/v1_0_0.html +0 -1042
- data/misc/openlayers/tests/Format/WPSCapabilities/v1_0_0.html +0 -30
- data/misc/openlayers/tests/Format/WPSCapabilities/v1_0_0.js +0 -112
- data/misc/openlayers/tests/Format/WPSDescribeProcess.html +0 -206
- data/misc/openlayers/tests/Format/WPSExecute.html +0 -549
- data/misc/openlayers/tests/Format/XLS/v1_1_0.html +0 -98
- data/misc/openlayers/tests/Format/XML.html +0 -900
- data/misc/openlayers/tests/Format/XML/VersionedOGC.html +0 -51
- data/misc/openlayers/tests/Geometry.html +0 -356
- data/misc/openlayers/tests/Geometry/Collection.html +0 -431
- data/misc/openlayers/tests/Geometry/Curve.html +0 -157
- data/misc/openlayers/tests/Geometry/LineString.html +0 -443
- data/misc/openlayers/tests/Geometry/LinearRing.html +0 -362
- data/misc/openlayers/tests/Geometry/MultiLineString.html +0 -267
- data/misc/openlayers/tests/Geometry/MultiPoint.html +0 -130
- data/misc/openlayers/tests/Geometry/MultiPolygon.html +0 -34
- data/misc/openlayers/tests/Geometry/Point.html +0 -244
- data/misc/openlayers/tests/Geometry/Polygon.html +0 -420
- data/misc/openlayers/tests/Handler.html +0 -265
- data/misc/openlayers/tests/Handler/Box.html +0 -106
- data/misc/openlayers/tests/Handler/Click.html +0 -735
- data/misc/openlayers/tests/Handler/Drag.html +0 -603
- data/misc/openlayers/tests/Handler/Feature.html +0 -698
- data/misc/openlayers/tests/Handler/Hover.html +0 -136
- data/misc/openlayers/tests/Handler/Keyboard.html +0 -150
- data/misc/openlayers/tests/Handler/MouseWheel.html +0 -182
- data/misc/openlayers/tests/Handler/Path.html +0 -1464
- data/misc/openlayers/tests/Handler/Pinch.html +0 -285
- data/misc/openlayers/tests/Handler/Point.html +0 -600
- data/misc/openlayers/tests/Handler/Polygon.html +0 -1161
- data/misc/openlayers/tests/Handler/RegularPolygon.html +0 -235
- data/misc/openlayers/tests/Icon.html +0 -68
- data/misc/openlayers/tests/Kinetic.html +0 -132
- data/misc/openlayers/tests/Lang.html +0 -106
- data/misc/openlayers/tests/Layer.html +0 -910
- data/misc/openlayers/tests/Layer/ArcGIS93Rest.html +0 -324
- data/misc/openlayers/tests/Layer/ArcGISCache.html +0 -256
- data/misc/openlayers/tests/Layer/ArcGISCache.json +0 -334
- data/misc/openlayers/tests/Layer/ArcIMS.html +0 -123
- data/misc/openlayers/tests/Layer/Bing.html +0 -200
- data/misc/openlayers/tests/Layer/EventPane.html +0 -172
- data/misc/openlayers/tests/Layer/FixedZoomLevels.html +0 -137
- data/misc/openlayers/tests/Layer/GeoRSS.html +0 -210
- data/misc/openlayers/tests/Layer/Google.html +0 -369
- data/misc/openlayers/tests/Layer/Google/v3.html +0 -337
- data/misc/openlayers/tests/Layer/Grid.html +0 -1593
- data/misc/openlayers/tests/Layer/HTTPRequest.html +0 -229
- data/misc/openlayers/tests/Layer/Image.html +0 -164
- data/misc/openlayers/tests/Layer/KaMap.html +0 -287
- data/misc/openlayers/tests/Layer/MapGuide.html +0 -177
- data/misc/openlayers/tests/Layer/MapServer.html +0 -238
- data/misc/openlayers/tests/Layer/Markers.html +0 -156
- data/misc/openlayers/tests/Layer/OSM.html +0 -16
- data/misc/openlayers/tests/Layer/PointGrid.html +0 -232
- data/misc/openlayers/tests/Layer/PointTrack.html +0 -79
- data/misc/openlayers/tests/Layer/SphericalMercator.html +0 -126
- data/misc/openlayers/tests/Layer/TMS.html +0 -262
- data/misc/openlayers/tests/Layer/Text.html +0 -211
- data/misc/openlayers/tests/Layer/TileCache.html +0 -203
- data/misc/openlayers/tests/Layer/UTFGrid.html +0 -131
- data/misc/openlayers/tests/Layer/Vector.html +0 -879
- data/misc/openlayers/tests/Layer/Vector/RootContainer.html +0 -63
- data/misc/openlayers/tests/Layer/WMS.html +0 -583
- data/misc/openlayers/tests/Layer/WMTS.html +0 -1491
- data/misc/openlayers/tests/Layer/WrapDateLine.html +0 -188
- data/misc/openlayers/tests/Layer/XYZ.html +0 -266
- data/misc/openlayers/tests/Layer/atom-1.0.xml +0 -34
- data/misc/openlayers/tests/Layer/data_Layer_Text_textfile.txt +0 -3
- data/misc/openlayers/tests/Layer/data_Layer_Text_textfile_2.txt +0 -3
- data/misc/openlayers/tests/Layer/data_Layer_Text_textfile_overflow.txt +0 -3
- data/misc/openlayers/tests/Layer/georss.txt +0 -378
- data/misc/openlayers/tests/Map.html +0 -2255
- data/misc/openlayers/tests/Marker.html +0 -163
- data/misc/openlayers/tests/Marker/Box.html +0 -183
- data/misc/openlayers/tests/OLLoader.js +0 -26
- data/misc/openlayers/tests/OpenLayers1.html +0 -18
- data/misc/openlayers/tests/OpenLayers2.html +0 -19
- data/misc/openlayers/tests/OpenLayers3.html +0 -19
- data/misc/openlayers/tests/OpenLayers4.html +0 -18
- data/misc/openlayers/tests/OpenLayersJsFiles.html +0 -27
- data/misc/openlayers/tests/Popup.html +0 -219
- data/misc/openlayers/tests/Popup/Anchored.html +0 -37
- data/misc/openlayers/tests/Popup/FramedCloud.html +0 -18
- data/misc/openlayers/tests/Projection.html +0 -87
- data/misc/openlayers/tests/Protocol.html +0 -63
- data/misc/openlayers/tests/Protocol/CSW.html +0 -90
- data/misc/openlayers/tests/Protocol/HTTP.html +0 -842
- data/misc/openlayers/tests/Protocol/SOS.html +0 -57
- data/misc/openlayers/tests/Protocol/Script.html +0 -282
- data/misc/openlayers/tests/Protocol/WFS.html +0 -471
- data/misc/openlayers/tests/README.txt +0 -16
- data/misc/openlayers/tests/Renderer.html +0 -96
- data/misc/openlayers/tests/Renderer/Canvas.html +0 -501
- data/misc/openlayers/tests/Renderer/Elements.html +0 -651
- data/misc/openlayers/tests/Renderer/SVG.html +0 -441
- data/misc/openlayers/tests/Renderer/VML.html +0 -454
- data/misc/openlayers/tests/Request.html +0 -524
- data/misc/openlayers/tests/Request/XMLHttpRequest.html +0 -59
- data/misc/openlayers/tests/Rule.html +0 -123
- data/misc/openlayers/tests/SingleFile1.html +0 -15
- data/misc/openlayers/tests/SingleFile2.html +0 -15
- data/misc/openlayers/tests/SingleFile3.html +0 -15
- data/misc/openlayers/tests/Strategy.html +0 -94
- data/misc/openlayers/tests/Strategy/BBOX.html +0 -361
- data/misc/openlayers/tests/Strategy/Cluster.html +0 -148
- data/misc/openlayers/tests/Strategy/Filter.html +0 -135
- data/misc/openlayers/tests/Strategy/Fixed.html +0 -253
- data/misc/openlayers/tests/Strategy/Paging.html +0 -113
- data/misc/openlayers/tests/Strategy/Refresh.html +0 -177
- data/misc/openlayers/tests/Strategy/Save.html +0 -127
- data/misc/openlayers/tests/Style.html +0 -426
- data/misc/openlayers/tests/Style2.html +0 -56
- data/misc/openlayers/tests/StyleMap.html +0 -44
- data/misc/openlayers/tests/Symbolizer.html +0 -31
- data/misc/openlayers/tests/Symbolizer/Line.html +0 -42
- data/misc/openlayers/tests/Symbolizer/Point.html +0 -52
- data/misc/openlayers/tests/Symbolizer/Polygon.html +0 -44
- data/misc/openlayers/tests/Symbolizer/Raster.html +0 -32
- data/misc/openlayers/tests/Symbolizer/Text.html +0 -42
- data/misc/openlayers/tests/Test.AnotherWay.baseadditions.js +0 -191
- data/misc/openlayers/tests/Test.AnotherWay.css +0 -243
- data/misc/openlayers/tests/Test.AnotherWay.geom_eq.js +0 -139
- data/misc/openlayers/tests/Test.AnotherWay.js +0 -2498
- data/misc/openlayers/tests/Test.AnotherWay.xml_eq.js +0 -311
- data/misc/openlayers/tests/Tile.html +0 -130
- data/misc/openlayers/tests/Tile/Image.html +0 -490
- data/misc/openlayers/tests/Tile/Image/IFrame.html +0 -183
- data/misc/openlayers/tests/Tile/UTFGrid.html +0 -306
- data/misc/openlayers/tests/TileManager.html +0 -137
- data/misc/openlayers/tests/Tween.html +0 -116
- data/misc/openlayers/tests/Util.html +0 -1180
- data/misc/openlayers/tests/Util/vendorPrefix.html +0 -117
- data/misc/openlayers/tests/Util_common.js +0 -64
- data/misc/openlayers/tests/Util_w3c.html +0 -35
- data/misc/openlayers/tests/WPSClient.html +0 -108
- data/misc/openlayers/tests/WPSProcess.html +0 -188
- data/misc/openlayers/tests/atom-1.0.xml +0 -34
- data/misc/openlayers/tests/auto-tests.html +0 -2447
- data/misc/openlayers/tests/data/geos_wkt_intersects.js +0 -495
- data/misc/openlayers/tests/data/osm.js +0 -14
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/0/0.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/0/1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/0/2.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/1/0.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/1/1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/1/2.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/2/0.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/2/1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/2/2.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/demo-1.1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/0/0.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/0/1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/0/2.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/1/0.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/1/1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/1/2.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/2/0.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/2/1.json +0 -1
- data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/2/2.json +0 -1
- data/misc/openlayers/tests/data_Layer_Text_textfile.txt +0 -3
- data/misc/openlayers/tests/data_Layer_Text_textfile_2.txt +0 -3
- data/misc/openlayers/tests/data_Layer_Text_textfile_overflow.txt +0 -3
- data/misc/openlayers/tests/deprecated/Ajax.html +0 -28
- data/misc/openlayers/tests/deprecated/BaseTypes/Class.html +0 -142
- data/misc/openlayers/tests/deprecated/BaseTypes/Element.html +0 -56
- data/misc/openlayers/tests/deprecated/Control/MouseToolbar.html +0 -60
- data/misc/openlayers/tests/deprecated/Geometry/Rectangle.html +0 -77
- data/misc/openlayers/tests/deprecated/Layer/GML.html +0 -61
- data/misc/openlayers/tests/deprecated/Layer/MapServer.html +0 -59
- data/misc/openlayers/tests/deprecated/Layer/MapServer/Untiled.html +0 -158
- data/misc/openlayers/tests/deprecated/Layer/WFS.html +0 -178
- data/misc/openlayers/tests/deprecated/Layer/WMS.html +0 -60
- data/misc/openlayers/tests/deprecated/Layer/WMS/Post.html +0 -89
- data/misc/openlayers/tests/deprecated/Layer/Yahoo.html +0 -121
- data/misc/openlayers/tests/deprecated/Layer/mice.xml +0 -156
- data/misc/openlayers/tests/deprecated/Layer/owls.xml +0 -156
- data/misc/openlayers/tests/deprecated/Popup/AnchoredBubble.html +0 -61
- data/misc/openlayers/tests/deprecated/Protocol/SQL.html +0 -24
- data/misc/openlayers/tests/deprecated/Protocol/SQL/Gears.html +0 -474
- data/misc/openlayers/tests/deprecated/Renderer/SVG2.html +0 -399
- data/misc/openlayers/tests/deprecated/Tile/WFS.html +0 -215
- data/misc/openlayers/tests/deprecated/Util.html +0 -20
- data/misc/openlayers/tests/georss.txt +0 -378
- data/misc/openlayers/tests/grid_inittiles.html +0 -30
- data/misc/openlayers/tests/index.html +0 -6
- data/misc/openlayers/tests/list-tests.html +0 -260
- data/misc/openlayers/tests/manual/ajax.html +0 -49
- data/misc/openlayers/tests/manual/ajax.txt +0 -1
- data/misc/openlayers/tests/manual/alloverlays-mixed.html +0 -55
- data/misc/openlayers/tests/manual/arcims-2117.html +0 -103
- data/misc/openlayers/tests/manual/arkansas.rss +0 -9
- data/misc/openlayers/tests/manual/big-georss.html +0 -33
- data/misc/openlayers/tests/manual/box-quirks.html +0 -52
- data/misc/openlayers/tests/manual/box-strict.html +0 -46
- data/misc/openlayers/tests/manual/clip-features-svg.html +0 -128
- data/misc/openlayers/tests/manual/dateline-sketch.html +0 -66
- data/misc/openlayers/tests/manual/dateline-smallextent.html +0 -61
- data/misc/openlayers/tests/manual/draw-feature.html +0 -73
- data/misc/openlayers/tests/manual/feature-handler.html +0 -126
- data/misc/openlayers/tests/manual/geodesic.html +0 -160
- data/misc/openlayers/tests/manual/geojson-geomcoll-reprojection.html +0 -74
- data/misc/openlayers/tests/manual/google-fullscreen-overlay.html +0 -54
- data/misc/openlayers/tests/manual/google-panning.html +0 -122
- data/misc/openlayers/tests/manual/google-resize.html +0 -55
- data/misc/openlayers/tests/manual/google-tilt.html +0 -37
- data/misc/openlayers/tests/manual/google-v3-resize.html +0 -54
- data/misc/openlayers/tests/manual/loadend.html +0 -73
- data/misc/openlayers/tests/manual/map-events.html +0 -38
- data/misc/openlayers/tests/manual/memory/Marker-2258.html +0 -60
- data/misc/openlayers/tests/manual/memory/PanZoom-2323.html +0 -41
- data/misc/openlayers/tests/manual/memory/RemoveChild-2170.html +0 -56
- data/misc/openlayers/tests/manual/memory/VML-2170.html +0 -49
- data/misc/openlayers/tests/manual/multiple-google-layers.html +0 -135
- data/misc/openlayers/tests/manual/overviewmap-projection.html +0 -70
- data/misc/openlayers/tests/manual/page-position.html +0 -103
- data/misc/openlayers/tests/manual/pan-redraw-svg.html +0 -58
- data/misc/openlayers/tests/manual/popup-keepInMap.html +0 -100
- data/misc/openlayers/tests/manual/reflow.html +0 -59
- data/misc/openlayers/tests/manual/renderedDimensions.html +0 -113
- data/misc/openlayers/tests/manual/select-feature-right-click.html +0 -86
- data/misc/openlayers/tests/manual/select-feature.html +0 -75
- data/misc/openlayers/tests/manual/tiles-loading.html +0 -122
- data/misc/openlayers/tests/manual/tween.html +0 -82
- data/misc/openlayers/tests/manual/vector-features-performance.html +0 -149
- data/misc/openlayers/tests/manual/vector-layer-zindex.html +0 -143
- data/misc/openlayers/tests/mice.xml +0 -156
- data/misc/openlayers/tests/node.js/mockdom.js +0 -104
- data/misc/openlayers/tests/node.js/node-tests.cfg +0 -12
- data/misc/openlayers/tests/node.js/node.js +0 -1
- data/misc/openlayers/tests/node.js/run-test.js +0 -26
- data/misc/openlayers/tests/node.js/run.sh +0 -10
- data/misc/openlayers/tests/owls.xml +0 -156
- data/misc/openlayers/tests/run-tests.html +0 -155
- data/misc/openlayers/tests/selenium/remotecontrol/config.cfg +0 -48
- data/misc/openlayers/tests/selenium/remotecontrol/selenium.py +0 -1846
- data/misc/openlayers/tests/selenium/remotecontrol/setup.txt +0 -8
- data/misc/openlayers/tests/selenium/remotecontrol/test_ol.py +0 -95
- data/misc/openlayers/tests/speed/geometry.html +0 -43
- data/misc/openlayers/tests/speed/string_format.html +0 -29
- data/misc/openlayers/tests/speed/vector-renderers.html +0 -25
- data/misc/openlayers/tests/speed/vector-renderers.js +0 -70
- data/misc/openlayers/tests/speed/wmc_speed.html +0 -30
- data/misc/openlayers/tests/speed/wmscaps.html +0 -52
- data/misc/openlayers/tests/speed/wmscaps.js +0 -4956
- data/misc/openlayers/tests/speed/wmscaps.xml +0 -4954
- data/misc/openlayers/tests/throws.js +0 -82
- data/misc/openlayers/theme/default/google.css +0 -9
- data/misc/openlayers/theme/default/google.tidy.css +0 -1
- data/misc/openlayers/theme/default/ie6-style.css +0 -10
- data/misc/openlayers/theme/default/ie6-style.tidy.css +0 -1
- data/misc/openlayers/theme/default/img/add_point_off.png +0 -0
- data/misc/openlayers/theme/default/img/add_point_on.png +0 -0
- data/misc/openlayers/theme/default/img/blank.gif +0 -0
- data/misc/openlayers/theme/default/img/close.gif +0 -0
- data/misc/openlayers/theme/default/img/drag-rectangle-off.png +0 -0
- data/misc/openlayers/theme/default/img/drag-rectangle-on.png +0 -0
- data/misc/openlayers/theme/default/img/draw_line_off.png +0 -0
- data/misc/openlayers/theme/default/img/draw_line_on.png +0 -0
- data/misc/openlayers/theme/default/img/draw_point_off.png +0 -0
- data/misc/openlayers/theme/default/img/draw_point_on.png +0 -0
- data/misc/openlayers/theme/default/img/draw_polygon_off.png +0 -0
- data/misc/openlayers/theme/default/img/draw_polygon_on.png +0 -0
- data/misc/openlayers/theme/default/img/editing_tool_bar.png +0 -0
- data/misc/openlayers/theme/default/img/move_feature_off.png +0 -0
- data/misc/openlayers/theme/default/img/move_feature_on.png +0 -0
- data/misc/openlayers/theme/default/img/navigation_history.png +0 -0
- data/misc/openlayers/theme/default/img/overview_replacement.gif +0 -0
- data/misc/openlayers/theme/default/img/pan-panel-NOALPHA.png +0 -0
- data/misc/openlayers/theme/default/img/pan-panel.png +0 -0
- data/misc/openlayers/theme/default/img/pan_off.png +0 -0
- data/misc/openlayers/theme/default/img/pan_on.png +0 -0
- data/misc/openlayers/theme/default/img/panning-hand-off.png +0 -0
- data/misc/openlayers/theme/default/img/panning-hand-on.png +0 -0
- data/misc/openlayers/theme/default/img/remove_point_off.png +0 -0
- data/misc/openlayers/theme/default/img/remove_point_on.png +0 -0
- data/misc/openlayers/theme/default/img/ruler.png +0 -0
- data/misc/openlayers/theme/default/img/save_features_off.png +0 -0
- data/misc/openlayers/theme/default/img/save_features_on.png +0 -0
- data/misc/openlayers/theme/default/img/view_next_off.png +0 -0
- data/misc/openlayers/theme/default/img/view_next_on.png +0 -0
- data/misc/openlayers/theme/default/img/view_previous_off.png +0 -0
- data/misc/openlayers/theme/default/img/view_previous_on.png +0 -0
- data/misc/openlayers/theme/default/img/zoom-panel-NOALPHA.png +0 -0
- data/misc/openlayers/theme/default/img/zoom-panel.png +0 -0
- data/misc/openlayers/theme/default/style.css +0 -516
- data/misc/openlayers/theme/default/style.mobile.css +0 -70
- data/misc/openlayers/theme/default/style.mobile.tidy.css +0 -1
- data/misc/openlayers/theme/default/style.tidy.css +0 -1
- data/misc/openlayers/tools/BeautifulSoup.py +0 -1767
- data/misc/openlayers/tools/README.txt +0 -14
- data/misc/openlayers/tools/closure_library_jscompiler.py +0 -71
- data/misc/openlayers/tools/closure_ws.py +0 -28
- data/misc/openlayers/tools/exampleparser.py +0 -251
- data/misc/openlayers/tools/jsmin.c +0 -272
- data/misc/openlayers/tools/jsmin.py +0 -216
- data/misc/openlayers/tools/mergejs.py +0 -287
- data/misc/openlayers/tools/minimize.py +0 -47
- data/misc/openlayers/tools/oldot.py +0 -43
- data/misc/openlayers/tools/release.sh +0 -71
- data/misc/openlayers/tools/shrinksafe.py +0 -54
- data/misc/openlayers/tools/toposort.py +0 -35
- data/misc/openlayers/tools/uglify_js.py +0 -35
- data/misc/openlayers/tools/update_dev_dir.sh +0 -103
@@ -1,34 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
2
|
-
<feed xmlns="http://www.w3.org/2005/Atom"
|
3
|
-
xmlns:georss="http://www.georss.org/georss">
|
4
|
-
|
5
|
-
<title>tumulus</title>
|
6
|
-
<link rel="self"
|
7
|
-
href="http://pleiades.stoa.org/places/tumulus"/>
|
8
|
-
<updated/>
|
9
|
-
<author/>
|
10
|
-
<id>http://pleiades.stoa.org/places/tumulus</id>
|
11
|
-
|
12
|
-
<entry>
|
13
|
-
<title>Unnamed Tumulus</title>
|
14
|
-
<link rel="alternate"
|
15
|
-
href="http://pleiades.stoa.org/places/638896"
|
16
|
-
/>
|
17
|
-
<id>http://pleiades.stoa.org/places/638896</id>
|
18
|
-
<updated/>
|
19
|
-
<summary>An ancient tumulus, attested during the Classical period (modern location: Karaburun). Its ancient name is not known.</summary>
|
20
|
-
<georss:point>36.7702 29.9805</georss:point>
|
21
|
-
</entry>
|
22
|
-
<entry>
|
23
|
-
<title>Unnamed Tumulus</title>
|
24
|
-
<link rel="alternate"
|
25
|
-
href="http://pleiades.stoa.org/places/638924"
|
26
|
-
/>
|
27
|
-
<id>http://pleiades.stoa.org/places/638924</id>
|
28
|
-
<updated/>
|
29
|
-
<summary>An ancient tumulus, attested during the Classical period (modern location: Kızılbel). Its ancient name is not known.</summary>
|
30
|
-
<georss:point>36.7263 29.8619</georss:point>
|
31
|
-
</entry>
|
32
|
-
|
33
|
-
</feed>
|
34
|
-
|
@@ -1,378 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/css" href="/css/rss.css" ?>
|
2
|
-
|
3
|
-
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
4
|
-
xmlns="http://purl.org/rss/1.0/"
|
5
|
-
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
6
|
-
xmlns:georss="http://www.georss.org/georss">
|
7
|
-
<docs>This is an RSS file. Copy the URL into your aggregator of choice. If you don't know what this means and want to learn more, please see: <span>http://platial.typepad.com/news/2006/04/really_simple_t.html</span> for more info.</docs><channel rdf:about="http://platial.com">
|
8
|
-
<link>http://platial.com</link>
|
9
|
-
<title>Crschmidt's Places At Platial</title>
|
10
|
-
<description></description>
|
11
|
-
<items>
|
12
|
-
<rdf:Seq>
|
13
|
-
<rdf:li resource="http://platial.com/place/90306"/>
|
14
|
-
<rdf:li resource="http://platial.com/place/67230"/>
|
15
|
-
<rdf:li resource="http://platial.com/place/65645"/>
|
16
|
-
<rdf:li resource="http://platial.com/place/62200"/>
|
17
|
-
<rdf:li resource="http://platial.com/place/28232"/>
|
18
|
-
<rdf:li resource="http://platial.com/place/43666"/>
|
19
|
-
<rdf:li resource="http://platial.com/place/28394"/>
|
20
|
-
<rdf:li resource="http://platial.com/place/28251"/>
|
21
|
-
<rdf:li resource="http://platial.com/place/28392"/>
|
22
|
-
<rdf:li resource="http://platial.com/place/28391"/>
|
23
|
-
<rdf:li resource="http://platial.com/place/28231"/>
|
24
|
-
<rdf:li resource="http://platial.com/place/28393"/>
|
25
|
-
<rdf:li resource="http://platial.com/place/31685"/>
|
26
|
-
<rdf:li resource="http://platial.com/place/28596"/>
|
27
|
-
<rdf:li resource="http://platial.com/place/28595"/>
|
28
|
-
<rdf:li resource="http://platial.com/place/28594"/>
|
29
|
-
<rdf:li resource="http://platial.com/place/28593"/>
|
30
|
-
<rdf:li resource="http://platial.com/place/28592"/>
|
31
|
-
<rdf:li resource="http://platial.com/place/28591"/>
|
32
|
-
<rdf:li resource="http://platial.com/place/28590"/>
|
33
|
-
<rdf:li resource="http://platial.com/place/28589"/>
|
34
|
-
<rdf:li resource="http://platial.com/place/28588"/>
|
35
|
-
<rdf:li resource="http://platial.com/place/28587"/>
|
36
|
-
<rdf:li resource="http://platial.com/place/28586"/>
|
37
|
-
<rdf:li resource="http://platial.com/place/28585"/>
|
38
|
-
<rdf:li resource="http://platial.com/place/28584"/>
|
39
|
-
<rdf:li resource="http://platial.com/place/28583"/>
|
40
|
-
<rdf:li resource="http://platial.com/place/28582"/>
|
41
|
-
<rdf:li resource="http://platial.com/place/28581"/>
|
42
|
-
<rdf:li resource="http://platial.com/place/28580"/>
|
43
|
-
<rdf:li resource="http://platial.com/place/28579"/>
|
44
|
-
<rdf:li resource="http://platial.com/place/28578"/>
|
45
|
-
<rdf:li resource="http://platial.com/place/28577"/>
|
46
|
-
<rdf:li resource="http://platial.com/place/28576"/>
|
47
|
-
<rdf:li resource="http://platial.com/place/28575"/>
|
48
|
-
<rdf:li resource="http://platial.com/place/28574"/>
|
49
|
-
<rdf:li resource="http://platial.com/place/28573"/>
|
50
|
-
<rdf:li resource="http://platial.com/place/28572"/>
|
51
|
-
<rdf:li resource="http://platial.com/place/28571"/>
|
52
|
-
<rdf:li resource="http://platial.com/place/28570"/>
|
53
|
-
</rdf:Seq>
|
54
|
-
</items>
|
55
|
-
</channel>
|
56
|
-
<item rdf:about="http://platial.com/place/90306">
|
57
|
-
<link>http://platial.com/place/90306</link>
|
58
|
-
<title>Knitting Room</title>
|
59
|
-
<description><![CDATA[This little shop is jammed full. Yarn, yarn everywhere. They make the most of every possible nook and cranny. I like this place also because they have a lot of different kinds of knitting needles in all different sizes. Also, the people who work here are younger and hipper than in the other stores I go to. I reccomend buying supplies here and then knitting your way through a good documentary at the Capitol Theater across the street.<br/>Address: 2 lake St, Arlington, MA <br/>Tags: knitting, yarn, pins and needles, handspun, hand dyed, novelty yarn, fancy, simple, young, hip, friendly, needles, addy, cute hats<br /><br /><a href="http://platial.com/place/90306">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/90306">Grab this on Platial</a> ]]></description>
|
60
|
-
<georss:point>42.405696 -71.142197</georss:point>
|
61
|
-
<dc:creator>crschmidt</dc:creator>
|
62
|
-
<dc:date>2006-06-08T17:35:01.942452+00:00</dc:date>
|
63
|
-
</item>
|
64
|
-
<item rdf:about="http://platial.com/place/67230">
|
65
|
-
<link>http://platial.com/place/67230</link>
|
66
|
-
<title>Knitting Room</title>
|
67
|
-
<description><![CDATA[This little shop is jammed full. Yarn, yarn everywhere. They make the most of every possible nook and cranny. I like this place also because they have a lot of different kinds of knitting needles in all different sizes. Also, the people who work here are younger and hipper than in the other stores I go to. I reccomend buying supplies here and then knitting your way through a good documentary at the Capitol Theater across the street.<br/>Address: 2 lake St, Arlington, MA <br/>Tags: knitting, yarn, pins and needles, handspun, hand dyed, novelty yarn, fancy, simple, young, hip, friendly, needles, addy, cute hats<br /><br /><a href="http://platial.com/place/67230">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/67230">Grab this on Platial</a> ]]></description>
|
68
|
-
<georss:point>42.405524 -71.142273</georss:point>
|
69
|
-
<dc:creator>crschmidt</dc:creator>
|
70
|
-
<dc:date>2006-04-24T11:35:26.733857+00:00</dc:date>
|
71
|
-
</item>
|
72
|
-
<item rdf:about="http://platial.com/place/65645">
|
73
|
-
<link>http://platial.com/place/65645</link>
|
74
|
-
<title>â ¢¢â¢Â£ËøÅ</title>
|
75
|
-
<description><![CDATA[ijeª£âµËËî<br/>Address: 151 Erie St., Cambridge, MA<br/>Tags: platial graffiti<br /><br /><a href="http://platial.com/place/65645">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/65645">Grab this on Platial</a> ]]></description>
|
76
|
-
<georss:point>42.352455 -71.110210</georss:point>
|
77
|
-
<dc:creator>crschmidt</dc:creator>
|
78
|
-
<dc:date>2006-04-20T08:56:12.696224+00:00</dc:date>
|
79
|
-
</item>
|
80
|
-
<item rdf:about="http://platial.com/place/62200">
|
81
|
-
<link>http://platial.com/place/62200</link>
|
82
|
-
<title>Allen Hall</title>
|
83
|
-
<description><![CDATA[My dorm at UIUC.<br/>Address: 1301 W Gregory Dr, Urbana, IL<br/>Tags: dorm, uiuc, college<br/><a href="http://platial.com/place/62200"><img src="http://platial.comhttp://static.flickr.com/4/8576450_0d59cc2531_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/62200">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/62200">Grab this on Platial</a> ]]></description>
|
84
|
-
<georss:point>40.104172 -88.220623</georss:point>
|
85
|
-
<dc:creator>crschmidt</dc:creator>
|
86
|
-
<dc:date>2006-04-14T08:01:01.872873+00:00</dc:date>
|
87
|
-
</item>
|
88
|
-
<item rdf:about="http://platial.com/place/28232">
|
89
|
-
<link>http://platial.com/place/28232</link>
|
90
|
-
<title>Bagby Hot Springs, OR</title>
|
91
|
-
<description><![CDATA[Hot spring, temperature: 136 degress F, 58 degress C. However, the area around the springs are not exactly well looked upon by people who know the place.
|
92
|
-
|
93
|
-
<br/>Tags: 20s, rosalie, romance, childhood, hike, camping, soak, relax, beautiful, hot springs, bathhouse, favorite, popular, crowded, organized, honeymoon tub, plumbing made from hollowed out trees, hot springs, mt hood, notorious car break in spot, rash, bacteria<br /><br /><a href="http://platial.com/place/28232">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28232">Grab this on Platial</a> ]]></description>
|
94
|
-
<georss:point>44.936000 -122.173000</georss:point>
|
95
|
-
<dc:creator>crschmidt</dc:creator>
|
96
|
-
<dc:date>2006-01-03T23:10:18.553063+00:00</dc:date>
|
97
|
-
</item>
|
98
|
-
<item rdf:about="http://platial.com/place/43666">
|
99
|
-
<link>http://platial.com/place/43666</link>
|
100
|
-
<title>Shooting Location for "The Field of Dreams" Film</title>
|
101
|
-
<description><![CDATA[1989's Field of Dreams was a Best Picture Academy Award nominee, and the baseball field in the cornfield still stands today, and has become quite a tourist destination. Games are occasionally played at the field, re-enacting professional baseball at the turn of the 20th Century.<br/>Address: Dyersville, Iowa<br/>Tags: iowa, baseball, movie locations, field of dreams, kevin costner, costner, dyersville, kinsella, james earl jones, chicago black sox, shoeless joe, joe jackson, famous farms, film, movie, cinema, shooting location<br /><br /><a href="http://platial.com/place/43666">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/43666">Grab this on Platial</a> ]]></description>
|
102
|
-
<georss:point>42.481213 -91.111679</georss:point>
|
103
|
-
<dc:creator>echinodermata</dc:creator>
|
104
|
-
<dc:date>2006-03-23T11:40:17.654061+00:00</dc:date>
|
105
|
-
</item>
|
106
|
-
<item rdf:about="http://platial.com/place/28394">
|
107
|
-
<link>http://platial.com/place/28394</link>
|
108
|
-
<title>Moffetts (Bonneville) Hot Springs, WA</title>
|
109
|
-
<description><![CDATA[Hot spring, temperature: 97 degress F, 36 degress C<br/>Tags: soak, hot springs, relax, nature<br /><br /><a href="http://platial.com/place/28394">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28394">Grab this on Platial</a> ]]></description>
|
110
|
-
<georss:point>45.658000 -121.962000</georss:point>
|
111
|
-
<dc:creator>crschmidt</dc:creator>
|
112
|
-
<dc:date>2006-01-03T23:16:27.329816+00:00</dc:date>
|
113
|
-
</item>
|
114
|
-
<item rdf:about="http://platial.com/place/28251">
|
115
|
-
<link>http://platial.com/place/28251</link>
|
116
|
-
<title>Austin Hot Springs, OR</title>
|
117
|
-
<description><![CDATA[Hot spring, temperature: 186 degress F, 86 degress C<br/>Tags: soak, hot springs, relax, nature, popular, crowded<br /><br /><a href="http://platial.com/place/28251">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28251">Grab this on Platial</a> ]]></description>
|
118
|
-
<georss:point>45.021000 -122.009000</georss:point>
|
119
|
-
<dc:creator>crschmidt</dc:creator>
|
120
|
-
<dc:date>2006-01-03T23:11:04.489886+00:00</dc:date>
|
121
|
-
</item>
|
122
|
-
<item rdf:about="http://platial.com/place/28392">
|
123
|
-
<link>http://platial.com/place/28392</link>
|
124
|
-
<title>Rock Creek Hot Springs, WA</title>
|
125
|
-
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br/>Tags: soak, hot springs, relax, nature<br /><br /><a href="http://platial.com/place/28392">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28392">Grab this on Platial</a> ]]></description>
|
126
|
-
<georss:point>45.723000 -121.927000</georss:point>
|
127
|
-
<dc:creator>crschmidt</dc:creator>
|
128
|
-
<dc:date>2006-01-03T23:16:22.636855+00:00</dc:date>
|
129
|
-
</item>
|
130
|
-
<item rdf:about="http://platial.com/place/28391">
|
131
|
-
<link>http://platial.com/place/28391</link>
|
132
|
-
<title>St. Martins (Wind River) Hot Springs, WA</title>
|
133
|
-
<description><![CDATA[Hot spring, temperature: 120 degress F, 49 degress C<br/>Tags: hot springs, soak, relax, nature, wonderful<br /><br /><a href="http://platial.com/place/28391">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28391">Grab this on Platial</a> ]]></description>
|
134
|
-
<georss:point>45.728000 -121.800000</georss:point>
|
135
|
-
<dc:creator>crschmidt</dc:creator>
|
136
|
-
<dc:date>2006-01-03T23:16:20.383244+00:00</dc:date>
|
137
|
-
</item>
|
138
|
-
<item rdf:about="http://platial.com/place/28231">
|
139
|
-
<link>http://platial.com/place/28231</link>
|
140
|
-
<title>Breitenbush Hot Springs, OR</title>
|
141
|
-
<description><![CDATA[Hot spring, temperature: 198 degress F, 92 degress C<br/>Tags: hot springs, resort, relax, nature, beautiful, http:www.breitenbush.com, soaking<br /><br /><a href="http://platial.com/place/28231">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28231">Grab this on Platial</a> ]]></description>
|
142
|
-
<georss:point>44.782000 -121.975000</georss:point>
|
143
|
-
<dc:creator>crschmidt</dc:creator>
|
144
|
-
<dc:date>2006-01-03T23:10:16.529195+00:00</dc:date>
|
145
|
-
</item>
|
146
|
-
<item rdf:about="http://platial.com/place/28393">
|
147
|
-
<link>http://platial.com/place/28393</link>
|
148
|
-
<title>Collins Hot Springs, WA</title>
|
149
|
-
<description><![CDATA[Hot spring, temperature: 122 degress F, 50 degress C<br/>Tags: portland, nice, hot springs, soak<br /><br /><a href="http://platial.com/place/28393">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28393">Grab this on Platial</a> ]]></description>
|
150
|
-
<georss:point>45.701000 -121.728000</georss:point>
|
151
|
-
<dc:creator>crschmidt</dc:creator>
|
152
|
-
<dc:date>2006-01-03T23:16:24.648745+00:00</dc:date>
|
153
|
-
</item>
|
154
|
-
<item rdf:about="http://platial.com/place/31685">
|
155
|
-
<link>http://platial.com/place/31685</link>
|
156
|
-
<title>Darwin's Ltd.</title>
|
157
|
-
<description><![CDATA[Nice little coffee shop/cafe, free Wifi, close enough to walk from Harvard Square.<br/>Address: 148 Mount Auburn St, Cambridge, MA<br/>Tags: coffee, beer, sandwiches, freewifi<br/><a href="http://platial.com/place/31685"><img src="http://platial.comhttp://static.flickr.com/38/84885937_74fd3d1025_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/31685">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/31685">Grab this on Platial</a> ]]></description>
|
158
|
-
<georss:point>42.373974 -71.125053</georss:point>
|
159
|
-
<dc:creator>crschmidt</dc:creator>
|
160
|
-
<dc:date>2006-01-10T09:24:08.152985+00:00</dc:date>
|
161
|
-
</item>
|
162
|
-
<item rdf:about="http://platial.com/place/28596">
|
163
|
-
<link>http://platial.com/place/28596</link>
|
164
|
-
<title>Huckleberry Hot Springs, WY</title>
|
165
|
-
<description><![CDATA[Hot spring, temperature: Boiling degress F, Boiling degress C<br /><br /><a href="http://platial.com/place/28596">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28596">Grab this on Platial</a> ]]></description>
|
166
|
-
<georss:point>44.115000 -110.684000</georss:point>
|
167
|
-
<dc:creator>crschmidt</dc:creator>
|
168
|
-
<dc:date>2006-01-03T23:24:32.283094+00:00</dc:date>
|
169
|
-
</item>
|
170
|
-
<item rdf:about="http://platial.com/place/28595">
|
171
|
-
<link>http://platial.com/place/28595</link>
|
172
|
-
<title>South Entrance Hot Springs, WY</title>
|
173
|
-
<description><![CDATA[Hot spring, temperature: 156 degress F, 69 degress C<br/><a href="http://platial.com/place/28595"><img src="http://platial.comhttp://static.flickr.com/52/130989872_f1457f68b5_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/28595">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28595">Grab this on Platial</a> ]]></description>
|
174
|
-
<georss:point>44.142000 -110.656000</georss:point>
|
175
|
-
<dc:creator>crschmidt</dc:creator>
|
176
|
-
<dc:date>2006-01-03T23:24:30.279497+00:00</dc:date>
|
177
|
-
</item>
|
178
|
-
<item rdf:about="http://platial.com/place/28594">
|
179
|
-
<link>http://platial.com/place/28594</link>
|
180
|
-
<title>Crawfish Creek Hot Springs, WY</title>
|
181
|
-
<description><![CDATA[Hot spring, temperature: 136 degress F, 58 degress C<br/><a href="http://platial.com/place/28594"><img src="http://platial.comhttp://static.flickr.com/52/128312256_d6a879924c_s.jpg"/></a><br/><br /><br /><a href="http://platial.com/place/28594">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28594">Grab this on Platial</a> ]]></description>
|
182
|
-
<georss:point>44.157000 -110.699000</georss:point>
|
183
|
-
<dc:creator>crschmidt</dc:creator>
|
184
|
-
<dc:date>2006-01-03T23:24:28.280271+00:00</dc:date>
|
185
|
-
</item>
|
186
|
-
<item rdf:about="http://platial.com/place/28593">
|
187
|
-
<link>http://platial.com/place/28593</link>
|
188
|
-
<title>Crawfish Creek Hot Springs, WY</title>
|
189
|
-
<description><![CDATA[Hot spring, temperature: 138 degress F, 59 degress C<br /><br /><a href="http://platial.com/place/28593">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28593">Grab this on Platial</a> ]]></description>
|
190
|
-
<georss:point>44.165000 -110.723000</georss:point>
|
191
|
-
<dc:creator>crschmidt</dc:creator>
|
192
|
-
<dc:date>2006-01-03T23:24:20.364077+00:00</dc:date>
|
193
|
-
</item>
|
194
|
-
<item rdf:about="http://platial.com/place/28592">
|
195
|
-
<link>http://platial.com/place/28592</link>
|
196
|
-
<title>Snake Hot Springs, WY</title>
|
197
|
-
<description><![CDATA[Hot spring, temperature: 136 degress F, 58 degress C<br /><br /><a href="http://platial.com/place/28592">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28592">Grab this on Platial</a> ]]></description>
|
198
|
-
<georss:point>44.169000 -110.583000</georss:point>
|
199
|
-
<dc:creator>crschmidt</dc:creator>
|
200
|
-
<dc:date>2006-01-03T23:24:12.234974+00:00</dc:date>
|
201
|
-
</item>
|
202
|
-
<item rdf:about="http://platial.com/place/28591">
|
203
|
-
<link>http://platial.com/place/28591</link>
|
204
|
-
<title>Hot Springs, WY</title>
|
205
|
-
<description><![CDATA[Hot spring, temperature: 142 degress F, 61 degress C<br /><br /><a href="http://platial.com/place/28591">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28591">Grab this on Platial</a> ]]></description>
|
206
|
-
<georss:point>44.187000 -110.726000</georss:point>
|
207
|
-
<dc:creator>crschmidt</dc:creator>
|
208
|
-
<dc:date>2006-01-03T23:24:10.027857+00:00</dc:date>
|
209
|
-
</item>
|
210
|
-
<item rdf:about="http://platial.com/place/28590">
|
211
|
-
<link>http://platial.com/place/28590</link>
|
212
|
-
<title>Hot Springs on Upper Snake River, WY</title>
|
213
|
-
<description><![CDATA[Hot spring, temperature: 167 degress F, 75 degress C<br /><br /><a href="http://platial.com/place/28590">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28590">Grab this on Platial</a> ]]></description>
|
214
|
-
<georss:point>44.204000 -110.486000</georss:point>
|
215
|
-
<dc:creator>crschmidt</dc:creator>
|
216
|
-
<dc:date>2006-01-03T23:24:07.79658+00:00</dc:date>
|
217
|
-
</item>
|
218
|
-
<item rdf:about="http://platial.com/place/28589">
|
219
|
-
<link>http://platial.com/place/28589</link>
|
220
|
-
<title>Hot Springs on lewis Lake, WY</title>
|
221
|
-
<description><![CDATA[Hot spring, temperature: 154 degress F, 68 degress C<br /><br /><a href="http://platial.com/place/28589">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28589">Grab this on Platial</a> ]]></description>
|
222
|
-
<georss:point>44.276000 -110.636000</georss:point>
|
223
|
-
<dc:creator>crschmidt</dc:creator>
|
224
|
-
<dc:date>2006-01-03T23:24:05.683418+00:00</dc:date>
|
225
|
-
</item>
|
226
|
-
<item rdf:about="http://platial.com/place/28588">
|
227
|
-
<link>http://platial.com/place/28588</link>
|
228
|
-
<title>Rustic Geyser, WY</title>
|
229
|
-
<description><![CDATA[Hot spring, temperature: 199 degress F, 93 degress C<br /><br /><a href="http://platial.com/place/28588">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28588">Grab this on Platial</a> ]]></description>
|
230
|
-
<georss:point>44.282000 -110.506000</georss:point>
|
231
|
-
<dc:creator>crschmidt</dc:creator>
|
232
|
-
<dc:date>2006-01-03T23:24:03.66329+00:00</dc:date>
|
233
|
-
</item>
|
234
|
-
<item rdf:about="http://platial.com/place/28587">
|
235
|
-
<link>http://platial.com/place/28587</link>
|
236
|
-
<title>Bechler River Hot Springs, WY</title>
|
237
|
-
<description><![CDATA[Hot spring, temperature: 194 degress F, 90 degress C<br /><br /><a href="http://platial.com/place/28587">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28587">Grab this on Platial</a> ]]></description>
|
238
|
-
<georss:point>44.285000 -110.900000</georss:point>
|
239
|
-
<dc:creator>crschmidt</dc:creator>
|
240
|
-
<dc:date>2006-01-03T23:24:01.611442+00:00</dc:date>
|
241
|
-
</item>
|
242
|
-
<item rdf:about="http://platial.com/place/28586">
|
243
|
-
<link>http://platial.com/place/28586</link>
|
244
|
-
<title>Hot Springs, WY</title>
|
245
|
-
<description><![CDATA[Hot spring, temperature: Boiling degress F, 201 degress C<br /><br /><a href="http://platial.com/place/28586">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28586">Grab this on Platial</a> ]]></description>
|
246
|
-
<georss:point>44.290000 -110.504000</georss:point>
|
247
|
-
<dc:creator>crschmidt</dc:creator>
|
248
|
-
<dc:date>2006-01-03T23:23:59.658699+00:00</dc:date>
|
249
|
-
</item>
|
250
|
-
<item rdf:about="http://platial.com/place/28585">
|
251
|
-
<link>http://platial.com/place/28585</link>
|
252
|
-
<title>Heart Lake Geyser Basin, WY</title>
|
253
|
-
<description><![CDATA[Hot spring, temperature: Middle Group degress F, 174 degress C<br /><br /><a href="http://platial.com/place/28585">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28585">Grab this on Platial</a> ]]></description>
|
254
|
-
<georss:point>44.299000 -110.517000</georss:point>
|
255
|
-
<dc:creator>crschmidt</dc:creator>
|
256
|
-
<dc:date>2006-01-03T23:23:57.181801+00:00</dc:date>
|
257
|
-
</item>
|
258
|
-
<item rdf:about="http://platial.com/place/28584">
|
259
|
-
<link>http://platial.com/place/28584</link>
|
260
|
-
<title>Hot Springs, WY</title>
|
261
|
-
<description><![CDATA[Hot spring, temperature: Boiling degress F, 201 degress C<br /><br /><a href="http://platial.com/place/28584">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28584">Grab this on Platial</a> ]]></description>
|
262
|
-
<georss:point>44.307000 -110.526000</georss:point>
|
263
|
-
<dc:creator>crschmidt</dc:creator>
|
264
|
-
<dc:date>2006-01-03T23:23:55.240485+00:00</dc:date>
|
265
|
-
</item>
|
266
|
-
<item rdf:about="http://platial.com/place/28583">
|
267
|
-
<link>http://platial.com/place/28583</link>
|
268
|
-
<title>Hot Springs on lewis Lake, WY</title>
|
269
|
-
<description><![CDATA[Hot spring, temperature: 199 degress F, 93 degress C<br /><br /><a href="http://platial.com/place/28583">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28583">Grab this on Platial</a> ]]></description>
|
270
|
-
<georss:point>44.309000 -110.654000</georss:point>
|
271
|
-
<dc:creator>crschmidt</dc:creator>
|
272
|
-
<dc:date>2006-01-03T23:23:53.22295+00:00</dc:date>
|
273
|
-
</item>
|
274
|
-
<item rdf:about="http://platial.com/place/28582">
|
275
|
-
<link>http://platial.com/place/28582</link>
|
276
|
-
<title>Shoshone Geyser Basin, WY</title>
|
277
|
-
<description><![CDATA[Hot spring, temperature: 203 degress F, 95 degress C<br /><br /><a href="http://platial.com/place/28582">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28582">Grab this on Platial</a> ]]></description>
|
278
|
-
<georss:point>44.354000 -110.800000</georss:point>
|
279
|
-
<dc:creator>crschmidt</dc:creator>
|
280
|
-
<dc:date>2006-01-03T23:23:51.179049+00:00</dc:date>
|
281
|
-
</item>
|
282
|
-
<item rdf:about="http://platial.com/place/28581">
|
283
|
-
<link>http://platial.com/place/28581</link>
|
284
|
-
<title>Hot Springs on Continental Divide, WY</title>
|
285
|
-
<description><![CDATA[Hot spring, temperature: 189 degress F, 87 degress C<br /><br /><a href="http://platial.com/place/28581">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28581">Grab this on Platial</a> ]]></description>
|
286
|
-
<georss:point>44.401000 -110.936000</georss:point>
|
287
|
-
<dc:creator>crschmidt</dc:creator>
|
288
|
-
<dc:date>2006-01-03T23:23:49.077176+00:00</dc:date>
|
289
|
-
</item>
|
290
|
-
<item rdf:about="http://platial.com/place/28580">
|
291
|
-
<link>http://platial.com/place/28580</link>
|
292
|
-
<title>Hot Springs on Upper Firehole River, WY</title>
|
293
|
-
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br /><br /><a href="http://platial.com/place/28580">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28580">Grab this on Platial</a> ]]></description>
|
294
|
-
<georss:point>44.404000 -110.824000</georss:point>
|
295
|
-
<dc:creator>crschmidt</dc:creator>
|
296
|
-
<dc:date>2006-01-03T23:23:47.054664+00:00</dc:date>
|
297
|
-
</item>
|
298
|
-
<item rdf:about="http://platial.com/place/28579">
|
299
|
-
<link>http://platial.com/place/28579</link>
|
300
|
-
<title>Summit Lake Hot Springs, WY</title>
|
301
|
-
<description><![CDATA[Hot spring, temperature: 162 degress F, 72 degress C<br /><br /><a href="http://platial.com/place/28579">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28579">Grab this on Platial</a> ]]></description>
|
302
|
-
<georss:point>44.410000 -110.953000</georss:point>
|
303
|
-
<dc:creator>crschmidt</dc:creator>
|
304
|
-
<dc:date>2006-01-03T23:23:45.039394+00:00</dc:date>
|
305
|
-
</item>
|
306
|
-
<item rdf:about="http://platial.com/place/28578">
|
307
|
-
<link>http://platial.com/place/28578</link>
|
308
|
-
<title>Lone Star Geyser Basin, WY</title>
|
309
|
-
<description><![CDATA[Hot spring, temperature: Footbridge degress F, 183 degress C<br /><br /><a href="http://platial.com/place/28578">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28578">Grab this on Platial</a> ]]></description>
|
310
|
-
<georss:point>44.414000 -110.817000</georss:point>
|
311
|
-
<dc:creator>crschmidt</dc:creator>
|
312
|
-
<dc:date>2006-01-03T23:23:42.938808+00:00</dc:date>
|
313
|
-
</item>
|
314
|
-
<item rdf:about="http://platial.com/place/28577">
|
315
|
-
<link>http://platial.com/place/28577</link>
|
316
|
-
<title>West. Thumb Geyser Basin, WY</title>
|
317
|
-
<description><![CDATA[Hot spring, temperature: 203 degress F, 95 degress C<br /><br /><a href="http://platial.com/place/28577">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28577">Grab this on Platial</a> ]]></description>
|
318
|
-
<georss:point>44.417000 -110.570000</georss:point>
|
319
|
-
<dc:creator>crschmidt</dc:creator>
|
320
|
-
<dc:date>2006-01-03T23:23:40.90238+00:00</dc:date>
|
321
|
-
</item>
|
322
|
-
<item rdf:about="http://platial.com/place/28576">
|
323
|
-
<link>http://platial.com/place/28576</link>
|
324
|
-
<title>Lone Star Geyser, WY</title>
|
325
|
-
<description><![CDATA[Hot spring, temperature: 199 degress F, 93 degress C<br /><br /><a href="http://platial.com/place/28576">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28576">Grab this on Platial</a> ]]></description>
|
326
|
-
<georss:point>44.418000 -110.805000</georss:point>
|
327
|
-
<dc:creator>crschmidt</dc:creator>
|
328
|
-
<dc:date>2006-01-03T23:23:38.844625+00:00</dc:date>
|
329
|
-
</item>
|
330
|
-
<item rdf:about="http://platial.com/place/28575">
|
331
|
-
<link>http://platial.com/place/28575</link>
|
332
|
-
<title>Smoke Jumper Hot Springs, WY</title>
|
333
|
-
<description><![CDATA[Hot spring, temperature: 198 degress F, 92 degress C<br /><br /><a href="http://platial.com/place/28575">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28575">Grab this on Platial</a> ]]></description>
|
334
|
-
<georss:point>44.421000 -110.952000</georss:point>
|
335
|
-
<dc:creator>crschmidt</dc:creator>
|
336
|
-
<dc:date>2006-01-03T23:23:36.818513+00:00</dc:date>
|
337
|
-
</item>
|
338
|
-
<item rdf:about="http://platial.com/place/28574">
|
339
|
-
<link>http://platial.com/place/28574</link>
|
340
|
-
<title>West. Thumb Geyser Basin, WY</title>
|
341
|
-
<description><![CDATA[Hot spring, temperature: 196 degress F, 91 degress C<br /><br /><a href="http://platial.com/place/28574">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28574">Grab this on Platial</a> ]]></description>
|
342
|
-
<georss:point>44.422000 -110.574000</georss:point>
|
343
|
-
<dc:creator>crschmidt</dc:creator>
|
344
|
-
<dc:date>2006-01-03T23:23:34.767729+00:00</dc:date>
|
345
|
-
</item>
|
346
|
-
<item rdf:about="http://platial.com/place/28573">
|
347
|
-
<link>http://platial.com/place/28573</link>
|
348
|
-
<title>Potts Hot Spring Basin, WY</title>
|
349
|
-
<description><![CDATA[Hot spring, temperature: 203 degress F, 95 degress C<br /><br /><a href="http://platial.com/place/28573">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28573">Grab this on Platial</a> ]]></description>
|
350
|
-
<georss:point>44.433000 -110.581000</georss:point>
|
351
|
-
<dc:creator>crschmidt</dc:creator>
|
352
|
-
<dc:date>2006-01-03T23:23:32.749915+00:00</dc:date>
|
353
|
-
</item>
|
354
|
-
<item rdf:about="http://platial.com/place/28572">
|
355
|
-
<link>http://platial.com/place/28572</link>
|
356
|
-
<title>Hot Springs, WY</title>
|
357
|
-
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br /><br /><a href="http://platial.com/place/28572">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28572">Grab this on Platial</a> ]]></description>
|
358
|
-
<georss:point>44.433000 -110.813000</georss:point>
|
359
|
-
<dc:creator>crschmidt</dc:creator>
|
360
|
-
<dc:date>2006-01-03T23:23:30.829745+00:00</dc:date>
|
361
|
-
</item>
|
362
|
-
<item rdf:about="http://platial.com/place/28571">
|
363
|
-
<link>http://platial.com/place/28571</link>
|
364
|
-
<title>Hot Springs on Continental Divide, WY</title>
|
365
|
-
<description><![CDATA[Hot spring, temperature: Hot degress F, Hot degress C<br /><br /><a href="http://platial.com/place/28571">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28571">Grab this on Platial</a> ]]></description>
|
366
|
-
<georss:point>44.438000 -110.977000</georss:point>
|
367
|
-
<dc:creator>crschmidt</dc:creator>
|
368
|
-
<dc:date>2006-01-03T23:23:28.730401+00:00</dc:date>
|
369
|
-
</item>
|
370
|
-
<item rdf:about="http://platial.com/place/28570">
|
371
|
-
<link>http://platial.com/place/28570</link>
|
372
|
-
<title>SouthEastern Group, WY</title>
|
373
|
-
<description><![CDATA[Hot spring, temperature: 198 degress F, 92 degress C<br /><br /><a href="http://platial.com/place/28570">Map this on Platial</a><br /> <a href="http://platial.com/place_grab/28570">Grab this on Platial</a> ]]></description>
|
374
|
-
<georss:point>44.459000 -110.817000</georss:point>
|
375
|
-
<dc:creator>crschmidt</dc:creator>
|
376
|
-
<dc:date>2006-01-03T23:23:26.706763+00:00</dc:date>
|
377
|
-
</item>
|
378
|
-
</rdf:RDF>
|
@@ -1,2255 +0,0 @@
|
|
1
|
-
<html>
|
2
|
-
<head>
|
3
|
-
<script>
|
4
|
-
/**
|
5
|
-
* Because browsers that implement requestAnimationFrame may not execute
|
6
|
-
* animation functions while a window is not displayed (e.g. in a hidden
|
7
|
-
* iframe as in these tests), we mask the native implementations here. The
|
8
|
-
* native requestAnimationFrame functionality is tested in Util.html and
|
9
|
-
* in PanZoom.html (where a popup is opened before panning). The panTo tests
|
10
|
-
* here will test the fallback setTimeout implementation for animation.
|
11
|
-
*/
|
12
|
-
window.requestAnimationFrame =
|
13
|
-
window.webkitRequestAnimationFrame =
|
14
|
-
window.mozRequestAnimationFrame =
|
15
|
-
window.oRequestAnimationFrame =
|
16
|
-
window.msRequestAnimationFrame = null;
|
17
|
-
</script>
|
18
|
-
<script src="OLLoader.js"></script>
|
19
|
-
<script type="text/javascript">
|
20
|
-
|
21
|
-
var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
|
22
|
-
var map;
|
23
|
-
|
24
|
-
function test_Map_constructor (t) {
|
25
|
-
t.plan( 11 );
|
26
|
-
|
27
|
-
map = new OpenLayers.Map('map');
|
28
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
29
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
30
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
31
|
-
map.addLayer(baseLayer);
|
32
|
-
|
33
|
-
t.ok( OpenLayers.Element.hasClass(map.div, "olMap"), "Map div has olMap class");
|
34
|
-
|
35
|
-
t.ok( map instanceof OpenLayers.Map, "new OpenLayers.Map returns object" );
|
36
|
-
if (!isMozilla) {
|
37
|
-
t.ok( true, "skipping element test outside of Mozilla");
|
38
|
-
t.ok( true, "skipping element test outside of Mozilla");
|
39
|
-
t.ok( true, "skipping element test outside of Mozilla");
|
40
|
-
} else {
|
41
|
-
t.ok( map.div instanceof HTMLDivElement, "map.div is an HTMLDivElement" );
|
42
|
-
t.ok( map.viewPortDiv instanceof HTMLDivElement, "map.viewPortDiv is an HTMLDivElement" );
|
43
|
-
t.ok( map.layerContainerDiv instanceof HTMLDivElement, "map.layerContainerDiv is an HTMLDivElement" );
|
44
|
-
}
|
45
|
-
t.ok( map.layers instanceof Array, "map.layers is an Array" );
|
46
|
-
t.ok( map.controls instanceof Array, "map.controls is an Array" );
|
47
|
-
t.eq( map.controls.length, 4, "Default map has 4 controls." );
|
48
|
-
t.ok( map.events instanceof OpenLayers.Events, "map.events is an OpenLayers.Events" );
|
49
|
-
t.ok( map.getMaxExtent() instanceof OpenLayers.Bounds, "map.maxExtent is an OpenLayers.Bounds" );
|
50
|
-
t.ok( map.getNumZoomLevels() > 0, "map has a default numZoomLevels" );
|
51
|
-
|
52
|
-
map.destroy();
|
53
|
-
}
|
54
|
-
|
55
|
-
function test_Map_constructor_convenience(t) {
|
56
|
-
t.plan(13);
|
57
|
-
var map = new OpenLayers.Map({
|
58
|
-
maxExtent: [-170, -80, 170, 80],
|
59
|
-
restrictedExtent: [-120, -65, 120, 65],
|
60
|
-
layers: [
|
61
|
-
new OpenLayers.Layer(null, {isBaseLayer: true})
|
62
|
-
],
|
63
|
-
center: [-111, 45],
|
64
|
-
zoom: 3
|
65
|
-
});
|
66
|
-
|
67
|
-
// maxExtent from array
|
68
|
-
t.ok(map.maxExtent instanceof OpenLayers.Bounds, "maxExtent bounds");
|
69
|
-
t.eq(map.maxExtent.left, -170, "maxExtent left");
|
70
|
-
t.eq(map.maxExtent.bottom, -80, "maxExtent bottom");
|
71
|
-
t.eq(map.maxExtent.right, 170, "maxExtent right");
|
72
|
-
t.eq(map.maxExtent.top, 80, "maxExtent top");
|
73
|
-
|
74
|
-
// restrictedExtent from array
|
75
|
-
t.ok(map.restrictedExtent instanceof OpenLayers.Bounds, "restrictedExtent bounds");
|
76
|
-
t.eq(map.restrictedExtent.left, -120, "restrictedExtent left");
|
77
|
-
t.eq(map.restrictedExtent.bottom, -65, "restrictedExtent bottom");
|
78
|
-
t.eq(map.restrictedExtent.right, 120, "restrictedExtent right");
|
79
|
-
t.eq(map.restrictedExtent.top, 65, "restrictedExtent top");
|
80
|
-
|
81
|
-
var center = map.getCenter();
|
82
|
-
t.eq(center.lon, -111, "center lon");
|
83
|
-
t.eq(center.lat, 45, "center lat");
|
84
|
-
|
85
|
-
t.eq(map.getZoom(), 3, "zoom");
|
86
|
-
|
87
|
-
map.destroy();
|
88
|
-
}
|
89
|
-
|
90
|
-
function test_Map_constructor_late_rendering(t) {
|
91
|
-
t.plan( 4 );
|
92
|
-
|
93
|
-
map = new OpenLayers.Map();
|
94
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
95
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
96
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
97
|
-
map.addLayer(baseLayer);
|
98
|
-
|
99
|
-
t.ok(map.div != null, "Map has a div even though none was specified.");
|
100
|
-
t.ok(map.viewPortDiv.parentNode == map.div, "Map is attached to a temporary div that holds the viewPortDiv.");
|
101
|
-
|
102
|
-
var mapDiv = document.getElementById("map");
|
103
|
-
// clean up the effects of other tests
|
104
|
-
while(OpenLayers.Element.hasClass(mapDiv, "olMap")) {
|
105
|
-
OpenLayers.Element.removeClass(mapDiv, "olMap");
|
106
|
-
}
|
107
|
-
map.render(mapDiv); // Can also take a string.
|
108
|
-
|
109
|
-
t.ok(map.div == mapDiv, "Map is now rendered to the 'map' div.")
|
110
|
-
t.ok( OpenLayers.Element.hasClass(map.div, "olMap"), "Map div has olMap class");
|
111
|
-
|
112
|
-
map.destroy();
|
113
|
-
|
114
|
-
}
|
115
|
-
|
116
|
-
function test_Map_constructor_renderTo(t) {
|
117
|
-
t.plan( 1 );
|
118
|
-
|
119
|
-
map = new OpenLayers.Map({
|
120
|
-
div: "map"
|
121
|
-
});
|
122
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
123
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
124
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
125
|
-
map.addLayer(baseLayer);
|
126
|
-
|
127
|
-
var mapDiv = document.getElementById("map");
|
128
|
-
t.ok(map.div == mapDiv, "Map is rendered to the 'map' div.")
|
129
|
-
|
130
|
-
map.destroy();
|
131
|
-
}
|
132
|
-
|
133
|
-
function test_Map_setOptions(t) {
|
134
|
-
t.plan(2);
|
135
|
-
map = new OpenLayers.Map('map', {maxExtent: new OpenLayers.Bounds(100, 200, 300, 400)});
|
136
|
-
map.setOptions({theme: 'foo'});
|
137
|
-
|
138
|
-
t.eq(map.theme, 'foo', "theme is correctly set by setOptions");
|
139
|
-
t.ok(map.maxExtent.equals(new OpenLayers.Bounds(100, 200, 300, 400)),
|
140
|
-
"maxExtent is correct after calling setOptions");
|
141
|
-
|
142
|
-
map.destroy();
|
143
|
-
}
|
144
|
-
|
145
|
-
function test_Map_add_layers(t) {
|
146
|
-
t.plan(8);
|
147
|
-
map = new OpenLayers.Map('map');
|
148
|
-
var layer1 = new OpenLayers.Layer.WMS("Layer 1",
|
149
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
150
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
151
|
-
var layer2 = new OpenLayers.Layer.WMS("Layer 2",
|
152
|
-
"http://wms.jpl.nasa.gov/wms.cgi", {layers: "modis,global_mosaic"});
|
153
|
-
// this uses map.addLayer internally
|
154
|
-
map.addLayers([layer1, layer2])
|
155
|
-
t.eq( map.layers.length, 2, "map has exactly two layers" );
|
156
|
-
t.ok( map.layers[0] === layer1, "1st layer is layer1" );
|
157
|
-
t.ok( map.layers[1] === layer2, "2nd layer is layer2" );
|
158
|
-
t.ok( layer1.map === map, "layer.map is map" );
|
159
|
-
t.eq( parseInt(layer1.div.style.zIndex), map.Z_INDEX_BASE['BaseLayer'],
|
160
|
-
"layer1 zIndex is set" );
|
161
|
-
t.eq( parseInt(layer2.div.style.zIndex), map.Z_INDEX_BASE['BaseLayer'] + 5,
|
162
|
-
"layer2 zIndex is set" );
|
163
|
-
|
164
|
-
map.events.register('preaddlayer', this, function(evt) {
|
165
|
-
return !(evt.layer.name === 'donotadd');
|
166
|
-
});
|
167
|
-
var layer3 = new OpenLayers.Layer.WMS("donotadd",
|
168
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
169
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
170
|
-
map.addLayers([layer3]);
|
171
|
-
t.eq(map.layers.length, 2, "layer is not added since preaddlayer returns false");
|
172
|
-
layer3.name = 'pleaseadd';
|
173
|
-
map.addLayers([layer3]);
|
174
|
-
t.eq(map.layers.length, 3, "layer is added since preaddlayer returns true");
|
175
|
-
|
176
|
-
map.destroy();
|
177
|
-
}
|
178
|
-
|
179
|
-
function test_Map_options(t) {
|
180
|
-
t.plan(3);
|
181
|
-
map = new OpenLayers.Map('map', {numZoomLevels: 6, maxResolution: 3.14159, theme: 'foo'});
|
182
|
-
t.eq( map.numZoomLevels, 6, "map.numZoomLevels set correctly via options hashtable" );
|
183
|
-
t.eq( map.maxResolution, 3.14159, "map.maxResolution set correctly via options hashtable" );
|
184
|
-
t.eq( map.theme, 'foo', "map theme set correctly." );
|
185
|
-
|
186
|
-
map.destroy();
|
187
|
-
}
|
188
|
-
|
189
|
-
function test_eventListeners(t) {
|
190
|
-
t.plan(1);
|
191
|
-
|
192
|
-
var method = OpenLayers.Events.prototype.on;
|
193
|
-
// test that events.on is called at map construction
|
194
|
-
var options = {
|
195
|
-
eventListeners: {foo: "bar"},
|
196
|
-
tileManager: null,
|
197
|
-
controls: []
|
198
|
-
};
|
199
|
-
OpenLayers.Events.prototype.on = function(obj) {
|
200
|
-
t.eq(obj, options.eventListeners, "events.on called with eventListeners");
|
201
|
-
}
|
202
|
-
var map = new OpenLayers.Map('map', options);
|
203
|
-
OpenLayers.Events.prototype.on = method;
|
204
|
-
map.destroy();
|
205
|
-
|
206
|
-
// if events.on is called again, this will fail due to an extra test
|
207
|
-
// test map without eventListeners
|
208
|
-
OpenLayers.Events.prototype.on = function(obj) {
|
209
|
-
t.fail("events.on called without eventListeners");
|
210
|
-
}
|
211
|
-
var map2 = new OpenLayers.Map("map", {tileManager: null, controls: []});
|
212
|
-
OpenLayers.Events.prototype.on = method;
|
213
|
-
map2.destroy();
|
214
|
-
}
|
215
|
-
|
216
|
-
function test_Map_center(t) {
|
217
|
-
t.plan(14);
|
218
|
-
var log = [];
|
219
|
-
map = new OpenLayers.Map('map', {
|
220
|
-
zoomMethod: null,
|
221
|
-
eventListeners: {
|
222
|
-
"movestart": function() {log.push("movestart");},
|
223
|
-
"move": function() {log.push("move");},
|
224
|
-
"moveend": function() {log.push("moveend");}
|
225
|
-
}
|
226
|
-
});
|
227
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
228
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
229
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"} );
|
230
|
-
map.addLayer(baseLayer);
|
231
|
-
var ll = new OpenLayers.LonLat(2,1);
|
232
|
-
map.setCenter(ll, 0);
|
233
|
-
t.ok( map.getCenter() instanceof OpenLayers.LonLat, "map.getCenter returns a LonLat");
|
234
|
-
t.eq( map.getZoom(), 0, "map.zoom is correct after calling setCenter");
|
235
|
-
t.ok( map.getCenter().equals(ll), "map center is correct after calling setCenter");
|
236
|
-
map.zoomIn();
|
237
|
-
t.eq( map.getZoom(), 1, "map.zoom is correct after calling setCenter,zoom in");
|
238
|
-
t.ok( map.getCenter().equals(ll), "map center is correct after calling setCenter, zoom in");
|
239
|
-
map.zoomOut();
|
240
|
-
t.eq( map.getZoom(), 0, "map.zoom is correct after calling setCenter,zoom in, zoom out");
|
241
|
-
|
242
|
-
log = [];
|
243
|
-
map.zoomTo(5);
|
244
|
-
t.eq(log[0], "movestart", "zoomTo fires movestart event");
|
245
|
-
t.eq(log[1], "move", "zoomTo fires move event");
|
246
|
-
t.eq(log[2], "moveend", "zoomTo fires moveend event");
|
247
|
-
t.eq( map.getZoom(), 5, "map.zoom is correct after calling zoomTo" );
|
248
|
-
|
249
|
-
/**
|
250
|
-
map.zoomToMaxExtent();
|
251
|
-
t.eq( map.getZoom(), 2, "map.zoom is correct after calling zoomToMaxExtent" );
|
252
|
-
var lonlat = map.getCenter();
|
253
|
-
var zero = new OpenLayers.LonLat(0, 0);
|
254
|
-
t.ok( lonlat.equals(zero), "map center is correct after calling zoomToFullExtent" );
|
255
|
-
*/
|
256
|
-
|
257
|
-
map.getCenter().lon = 10;
|
258
|
-
t.ok( map.getCenter().equals(ll), "map.getCenter returns a clone of map.center");
|
259
|
-
|
260
|
-
// allow calling setCenter with an array
|
261
|
-
map.setCenter([4, 2]);
|
262
|
-
var center = map.getCenter();
|
263
|
-
t.ok(center instanceof OpenLayers.LonLat, "(array) center is lonlat");
|
264
|
-
t.eq(center.lon, 4, "(array) center lon");
|
265
|
-
t.eq(center.lat, 2, "(array) center lat");
|
266
|
-
|
267
|
-
map.destroy();
|
268
|
-
}
|
269
|
-
|
270
|
-
function test_Map_zoomend_event (t) {
|
271
|
-
t.plan(2);
|
272
|
-
|
273
|
-
map = new OpenLayers.Map('map', {zoomMethod: null});
|
274
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
275
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
276
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
277
|
-
map.addLayer(baseLayer);
|
278
|
-
map.events.register("zoomend", {count: 0}, function() {
|
279
|
-
this.count++;
|
280
|
-
t.ok(true, "zoomend event was triggered " + this.count + " times");
|
281
|
-
});
|
282
|
-
map.setCenter(new OpenLayers.LonLat(2, 1), 0);
|
283
|
-
map.zoomIn();
|
284
|
-
map.zoomOut();
|
285
|
-
|
286
|
-
map.destroy();
|
287
|
-
}
|
288
|
-
|
289
|
-
function test_Map_add_remove_popup (t) {
|
290
|
-
t.plan(4);
|
291
|
-
|
292
|
-
map = new OpenLayers.Map('map');
|
293
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
294
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
295
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
296
|
-
map.addLayer(baseLayer);
|
297
|
-
|
298
|
-
var popup = new OpenLayers.Popup("chicken",
|
299
|
-
new OpenLayers.LonLat(0,0),
|
300
|
-
new OpenLayers.Size(200,200));
|
301
|
-
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
302
|
-
|
303
|
-
map.addPopup(popup);
|
304
|
-
var pIndex = OpenLayers.Util.indexOf(map.popups, popup);
|
305
|
-
t.eq(pIndex, 0, "popup successfully added to Map's internal popups array");
|
306
|
-
|
307
|
-
var nodes = map.layerContainerDiv.childNodes;
|
308
|
-
|
309
|
-
var found = false;
|
310
|
-
for (var i=0; i < nodes.length; i++) {
|
311
|
-
if (nodes.item(i) == popup.div) {
|
312
|
-
found = true;
|
313
|
-
break;
|
314
|
-
}
|
315
|
-
}
|
316
|
-
t.ok(found, "popup.div successfully added to the map's viewPort");
|
317
|
-
|
318
|
-
|
319
|
-
map.removePopup(popup);
|
320
|
-
var pIndex = OpenLayers.Util.indexOf(map.popups, popup);
|
321
|
-
t.eq(pIndex, -1, "popup successfully removed from Map's internal popups array");
|
322
|
-
|
323
|
-
var found = false;
|
324
|
-
for (var i=0; i < nodes.length; i++) {
|
325
|
-
if (nodes.item(i) == popup.div) {
|
326
|
-
found = true;
|
327
|
-
break;
|
328
|
-
}
|
329
|
-
}
|
330
|
-
t.ok(!found, "popup.div successfully removed from the map's viewPort");
|
331
|
-
|
332
|
-
map.destroy();
|
333
|
-
}
|
334
|
-
|
335
|
-
function test_Map_add_popup_exclusive(t) {
|
336
|
-
t.plan(2);
|
337
|
-
|
338
|
-
map = new OpenLayers.Map('map');
|
339
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
340
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
341
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
342
|
-
map.addLayer(baseLayer);
|
343
|
-
|
344
|
-
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
345
|
-
|
346
|
-
for (var i = 0; i < 10; i++) {
|
347
|
-
var popup = new OpenLayers.Popup("chicken",
|
348
|
-
new OpenLayers.LonLat(0,0),
|
349
|
-
new OpenLayers.Size(200,200));
|
350
|
-
map.addPopup(popup);
|
351
|
-
}
|
352
|
-
t.eq(map.popups.length, 10, "addPopup non exclusive mode works");
|
353
|
-
|
354
|
-
var popup = new OpenLayers.Popup("chicken",
|
355
|
-
new OpenLayers.LonLat(0,0),
|
356
|
-
new OpenLayers.Size(200,200));
|
357
|
-
map.addPopup(popup, true);
|
358
|
-
t.eq(map.popups.length, 1, "addPopup exclusive mode works");
|
359
|
-
|
360
|
-
map.destroy();
|
361
|
-
}
|
362
|
-
|
363
|
-
|
364
|
-
/*** THIS IS A GOOD TEST, BUT IT SHOULD BE MOVED TO WMS.
|
365
|
-
* Also, it won't work until we figure out the viewSize bug
|
366
|
-
|
367
|
-
function 08_Map_px_lonlat_translation (t) {
|
368
|
-
t.plan( 6 );
|
369
|
-
map = new OpenLayers.Map('map');
|
370
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
371
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
372
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"});
|
373
|
-
map.addLayer(baseLayer);
|
374
|
-
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
375
|
-
|
376
|
-
var pixel = new OpenLayers.Pixel(50,150);
|
377
|
-
var lonlat = map.getLonLatFromViewPortPx(pixel);
|
378
|
-
t.ok( lonlat instanceof OpenLayers.LonLat, "getLonLatFromViewPortPx returns valid OpenLayers.LonLat" );
|
379
|
-
|
380
|
-
var newPixel = map.getViewPortPxFromLonLat(lonlat);
|
381
|
-
t.ok( newPixel instanceof OpenLayers.Pixel, "getViewPortPxFromLonLat returns valid OpenLayers.Pixel" );
|
382
|
-
|
383
|
-
// WARNING!!! I'm faily sure that the following test's validity
|
384
|
-
// depends highly on rounding and the resolution. For now,
|
385
|
-
// in the default case, it seems to work. This may not
|
386
|
-
// always be so.
|
387
|
-
t.ok( newPixel.equals(pixel), "Translation to pixel and back to lonlat is consistent");
|
388
|
-
|
389
|
-
lonlat = map.getLonLatFromPixel(pixel);
|
390
|
-
t.ok( lonlat instanceof OpenLayers.LonLat, "getLonLatFromPixel returns valid OpenLayers.LonLat" );
|
391
|
-
|
392
|
-
newPixel = map.getPixelFromLonLat(lonlat);
|
393
|
-
t.ok( newPixel instanceof OpenLayers.Pixel, "getPixelFromLonLat returns valid OpenLayers.Pixel" );
|
394
|
-
|
395
|
-
t.ok( newPixel.equals(pixel), "2nd translation to pixel and back to lonlat is consistent");
|
396
|
-
}
|
397
|
-
*/
|
398
|
-
|
399
|
-
function test_Map_isValidZoomLevel(t) {
|
400
|
-
t.plan(5);
|
401
|
-
var map = new OpenLayers.Map("map");
|
402
|
-
map.addLayer(new OpenLayers.Layer(null, {
|
403
|
-
isBaseLayer: true, wrapDateLine: true, numZoomLevels: 19
|
404
|
-
}));
|
405
|
-
map.zoomToMaxExtent();
|
406
|
-
|
407
|
-
var valid;
|
408
|
-
|
409
|
-
valid = OpenLayers.Map.prototype.isValidZoomLevel.apply(map, [-1]);
|
410
|
-
t.eq(valid, false, "-1 is not a valid zoomLevel");
|
411
|
-
|
412
|
-
valid = OpenLayers.Map.prototype.isValidZoomLevel.apply(map, [0]);
|
413
|
-
t.eq(valid, true, "0 is a valid zoomLevel");
|
414
|
-
|
415
|
-
valid = OpenLayers.Map.prototype.isValidZoomLevel.apply(map, [18]);
|
416
|
-
t.eq(valid, true, "18 is a valid zoomLevel");
|
417
|
-
|
418
|
-
valid = OpenLayers.Map.prototype.isValidZoomLevel.apply(map, [19]);
|
419
|
-
t.eq(valid, false, "19 is not a valid zoomLevel");
|
420
|
-
|
421
|
-
map.moveTo([16, 48], 0);
|
422
|
-
t.eq(map.getCenter().toShortString(), "0, 0", "no panning when moveTo is called with invalid zoom");
|
423
|
-
|
424
|
-
map.destroy();
|
425
|
-
}
|
426
|
-
|
427
|
-
function test_Map_isValidLonLat(t) {
|
428
|
-
t.plan( 3 );
|
429
|
-
|
430
|
-
map = new OpenLayers.Map('map');
|
431
|
-
layer = new OpenLayers.Layer.WMS('Test Layer',
|
432
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
433
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
434
|
-
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
435
|
-
map.addLayer(layer);
|
436
|
-
|
437
|
-
t.ok( !map.isValidLonLat(null), "null lonlat is not valid" );
|
438
|
-
t.ok( map.isValidLonLat(new OpenLayers.LonLat(33862, 717606)), "lonlat outside max extent is valid" );
|
439
|
-
t.ok( !map.isValidLonLat(new OpenLayers.LonLat(10, 10)), "lonlat outside max extent is not valid" );
|
440
|
-
|
441
|
-
map.destroy();
|
442
|
-
}
|
443
|
-
|
444
|
-
function test_Map_getLayer(t) {
|
445
|
-
var numLayers = 3;
|
446
|
-
t.plan( numLayers + 1 );
|
447
|
-
|
448
|
-
var m = {
|
449
|
-
layers: []
|
450
|
-
};
|
451
|
-
|
452
|
-
for(var i = 0; i < numLayers; i++) {
|
453
|
-
m.layers.push( { 'id': i } );
|
454
|
-
}
|
455
|
-
|
456
|
-
for(var i = 0; i < numLayers; i++) {
|
457
|
-
var layer = OpenLayers.Map.prototype.getLayer.apply(m, [i]);
|
458
|
-
t.ok( layer == m.layers[i], "getLayer correctly returns layer " + i);
|
459
|
-
}
|
460
|
-
|
461
|
-
var gotLayer = OpenLayers.Map.prototype.getLayer.apply(m, ["chicken"]);
|
462
|
-
t.ok( gotLayer == null, "getLayer correctly returns null when layer not found");
|
463
|
-
|
464
|
-
map.destroy();
|
465
|
-
}
|
466
|
-
|
467
|
-
function test_Map_getLayersBy(t) {
|
468
|
-
|
469
|
-
var map = {
|
470
|
-
getBy: OpenLayers.Map.prototype.getBy,
|
471
|
-
getLayersBy: OpenLayers.Map.prototype.getLayersBy,
|
472
|
-
layers: [
|
473
|
-
{foo: "foo", id: Math.random()},
|
474
|
-
{foo: "bar", id: Math.random()},
|
475
|
-
{foo: "foobar", id: Math.random()},
|
476
|
-
{foo: "foo bar", id: Math.random()},
|
477
|
-
{foo: "foo", id: Math.random()}
|
478
|
-
]
|
479
|
-
};
|
480
|
-
|
481
|
-
var cases = [
|
482
|
-
{
|
483
|
-
got: map.getLayersBy("foo", "foo"),
|
484
|
-
expected: [map.layers[0], map.layers[4]],
|
485
|
-
message: "(string literal) got two layers matching foo"
|
486
|
-
}, {
|
487
|
-
got: map.getLayersBy("foo", "bar"),
|
488
|
-
expected: [map.layers[1]],
|
489
|
-
message: "(string literal) got one layer matching foo"
|
490
|
-
}, {
|
491
|
-
got: map.getLayersBy("foo", "barfoo"),
|
492
|
-
expected: [],
|
493
|
-
message: "(string literal) got empty array for no foo match"
|
494
|
-
}, {
|
495
|
-
got: map.getLayersBy("foo", /foo/),
|
496
|
-
expected: [map.layers[0], map.layers[2], map.layers[3], map.layers[4]],
|
497
|
-
message: "(regexp literal) got three layers containing string"
|
498
|
-
}, {
|
499
|
-
got: map.getLayersBy("foo", /foo$/),
|
500
|
-
expected: [map.layers[0], map.layers[4]],
|
501
|
-
message: "(regexp literal) got three layers ending with string"
|
502
|
-
}, {
|
503
|
-
got: map.getLayersBy("foo", /\s/),
|
504
|
-
expected: [map.layers[3]],
|
505
|
-
message: "(regexp literal) got layer containing space"
|
506
|
-
}, {
|
507
|
-
got: map.getLayersBy("foo", new RegExp("BAR", "i")),
|
508
|
-
expected: [map.layers[1], map.layers[2], map.layers[3]],
|
509
|
-
message: "(regexp object) got layers ignoring case"
|
510
|
-
}, {
|
511
|
-
got: map.getLayersBy("foo", {test: function(str) {return str.length > 3;}}),
|
512
|
-
expected: [map.layers[2], map.layers[3]],
|
513
|
-
message: "(custom object) got layers with foo length greater than 3"
|
514
|
-
}
|
515
|
-
];
|
516
|
-
t.plan(cases.length);
|
517
|
-
for(var i=0; i<cases.length; ++i) {
|
518
|
-
t.eq(cases[i].got, cases[i].expected, cases[i].message);
|
519
|
-
}
|
520
|
-
|
521
|
-
}
|
522
|
-
|
523
|
-
function test_Map_getLayersByName(t) {
|
524
|
-
|
525
|
-
var map = {
|
526
|
-
getBy: OpenLayers.Map.prototype.getBy,
|
527
|
-
getLayersBy: OpenLayers.Map.prototype.getLayersBy,
|
528
|
-
getLayersByName: OpenLayers.Map.prototype.getLayersByName,
|
529
|
-
layers: [
|
530
|
-
{name: "foo", id: Math.random()},
|
531
|
-
{name: "bar", id: Math.random()},
|
532
|
-
{name: "foobar", id: Math.random()},
|
533
|
-
{name: "foo bar", id: Math.random()},
|
534
|
-
{name: "foo", id: Math.random()}
|
535
|
-
]
|
536
|
-
};
|
537
|
-
|
538
|
-
var cases = [
|
539
|
-
{
|
540
|
-
got: map.getLayersByName("foo"),
|
541
|
-
expected: [map.layers[0], map.layers[4]],
|
542
|
-
message: "(string literal) got two layers matching name"
|
543
|
-
}, {
|
544
|
-
got: map.getLayersByName("bar"),
|
545
|
-
expected: [map.layers[1]],
|
546
|
-
message: "(string literal) got one layer matching name"
|
547
|
-
}, {
|
548
|
-
got: map.getLayersByName("barfoo"),
|
549
|
-
expected: [],
|
550
|
-
message: "(string literal) got empty array for no match"
|
551
|
-
}, {
|
552
|
-
got: map.getLayersByName(/foo/),
|
553
|
-
expected: [map.layers[0], map.layers[2], map.layers[3], map.layers[4]],
|
554
|
-
message: "(regexp literal) got three layers containing string"
|
555
|
-
}, {
|
556
|
-
got: map.getLayersByName(/foo$/),
|
557
|
-
expected: [map.layers[0], map.layers[4]],
|
558
|
-
message: "(regexp literal) got three layers ending with string"
|
559
|
-
}, {
|
560
|
-
got: map.getLayersByName(/\s/),
|
561
|
-
expected: [map.layers[3]],
|
562
|
-
message: "(regexp literal) got layer containing space"
|
563
|
-
}, {
|
564
|
-
got: map.getLayersByName(new RegExp("BAR", "i")),
|
565
|
-
expected: [map.layers[1], map.layers[2], map.layers[3]],
|
566
|
-
message: "(regexp object) got layers ignoring case"
|
567
|
-
}, {
|
568
|
-
got: map.getLayersByName({test: function(str) {return str.length > 3;}}),
|
569
|
-
expected: [map.layers[2], map.layers[3]],
|
570
|
-
message: "(custom object) got layers with name length greater than 3"
|
571
|
-
}
|
572
|
-
];
|
573
|
-
t.plan(cases.length);
|
574
|
-
for(var i=0; i<cases.length; ++i) {
|
575
|
-
t.eq(cases[i].got, cases[i].expected, cases[i].message);
|
576
|
-
}
|
577
|
-
|
578
|
-
}
|
579
|
-
|
580
|
-
function test_Map_getLayersByClass(t) {
|
581
|
-
|
582
|
-
var map = {
|
583
|
-
getBy: OpenLayers.Map.prototype.getBy,
|
584
|
-
getLayersBy: OpenLayers.Map.prototype.getLayersBy,
|
585
|
-
getLayersByClass: OpenLayers.Map.prototype.getLayersByClass,
|
586
|
-
layers: [
|
587
|
-
{CLASS_NAME: "foo", id: Math.random()},
|
588
|
-
{CLASS_NAME: "bar", id: Math.random()},
|
589
|
-
{CLASS_NAME: "foobar", id: Math.random()},
|
590
|
-
{CLASS_NAME: "foo bar", id: Math.random()},
|
591
|
-
{CLASS_NAME: "foo", id: Math.random()}
|
592
|
-
]
|
593
|
-
};
|
594
|
-
|
595
|
-
var cases = [
|
596
|
-
{
|
597
|
-
got: map.getLayersByClass("foo"),
|
598
|
-
expected: [map.layers[0], map.layers[4]],
|
599
|
-
message: "(string literal) got two layers matching type"
|
600
|
-
}, {
|
601
|
-
got: map.getLayersByClass("bar"),
|
602
|
-
expected: [map.layers[1]],
|
603
|
-
message: "(string literal) got one layer matching type"
|
604
|
-
}, {
|
605
|
-
got: map.getLayersByClass("barfoo"),
|
606
|
-
expected: [],
|
607
|
-
message: "(string literal) got empty array for no match"
|
608
|
-
}, {
|
609
|
-
got: map.getLayersByClass(/foo/),
|
610
|
-
expected: [map.layers[0], map.layers[2], map.layers[3], map.layers[4]],
|
611
|
-
message: "(regexp literal) got three layers containing string"
|
612
|
-
}, {
|
613
|
-
got: map.getLayersByClass(/foo$/),
|
614
|
-
expected: [map.layers[0], map.layers[4]],
|
615
|
-
message: "(regexp literal) got three layers ending with string"
|
616
|
-
}, {
|
617
|
-
got: map.getLayersByClass(/\s/),
|
618
|
-
expected: [map.layers[3]],
|
619
|
-
message: "(regexp literal) got layer containing space"
|
620
|
-
}, {
|
621
|
-
got: map.getLayersByClass(new RegExp("BAR", "i")),
|
622
|
-
expected: [map.layers[1], map.layers[2], map.layers[3]],
|
623
|
-
message: "(regexp object) got layers ignoring case"
|
624
|
-
}, {
|
625
|
-
got: map.getLayersByClass({test: function(str) {return str.length > 3;}}),
|
626
|
-
expected: [map.layers[2], map.layers[3]],
|
627
|
-
message: "(custom object) got layers with type length greater than 3"
|
628
|
-
}
|
629
|
-
];
|
630
|
-
t.plan(cases.length);
|
631
|
-
for(var i=0; i<cases.length; ++i) {
|
632
|
-
t.eq(cases[i].got, cases[i].expected, cases[i].message);
|
633
|
-
}
|
634
|
-
|
635
|
-
}
|
636
|
-
|
637
|
-
function test_Map_getControlsBy(t) {
|
638
|
-
|
639
|
-
var map = {
|
640
|
-
getBy: OpenLayers.Map.prototype.getBy,
|
641
|
-
getControlsBy: OpenLayers.Map.prototype.getControlsBy,
|
642
|
-
controls: [
|
643
|
-
{foo: "foo", id: Math.random()},
|
644
|
-
{foo: "bar", id: Math.random()},
|
645
|
-
{foo: "foobar", id: Math.random()},
|
646
|
-
{foo: "foo bar", id: Math.random()},
|
647
|
-
{foo: "foo", id: Math.random()}
|
648
|
-
]
|
649
|
-
};
|
650
|
-
|
651
|
-
var cases = [
|
652
|
-
{
|
653
|
-
got: map.getControlsBy("foo", "foo"),
|
654
|
-
expected: [map.controls[0], map.controls[4]],
|
655
|
-
message: "(string literal) got two controls matching foo"
|
656
|
-
}, {
|
657
|
-
got: map.getControlsBy("foo", "bar"),
|
658
|
-
expected: [map.controls[1]],
|
659
|
-
message: "(string literal) got one control matching foo"
|
660
|
-
}, {
|
661
|
-
got: map.getControlsBy("foo", "barfoo"),
|
662
|
-
expected: [],
|
663
|
-
message: "(string literal) got empty array for no foo match"
|
664
|
-
}, {
|
665
|
-
got: map.getControlsBy("foo", /foo/),
|
666
|
-
expected: [map.controls[0], map.controls[2], map.controls[3], map.controls[4]],
|
667
|
-
message: "(regexp literal) got three controls containing string"
|
668
|
-
}, {
|
669
|
-
got: map.getControlsBy("foo", /foo$/),
|
670
|
-
expected: [map.controls[0], map.controls[4]],
|
671
|
-
message: "(regexp literal) got three controls ending with string"
|
672
|
-
}, {
|
673
|
-
got: map.getControlsBy("foo", /\s/),
|
674
|
-
expected: [map.controls[3]],
|
675
|
-
message: "(regexp literal) got control containing space"
|
676
|
-
}, {
|
677
|
-
got: map.getControlsBy("foo", new RegExp("BAR", "i")),
|
678
|
-
expected: [map.controls[1], map.controls[2], map.controls[3]],
|
679
|
-
message: "(regexp object) got layers ignoring case"
|
680
|
-
}, {
|
681
|
-
got: map.getControlsBy("foo", {test: function(str) {return str.length > 3;}}),
|
682
|
-
expected: [map.controls[2], map.controls[3]],
|
683
|
-
message: "(custom object) got controls with foo length greater than 3"
|
684
|
-
}
|
685
|
-
];
|
686
|
-
t.plan(cases.length);
|
687
|
-
for(var i=0; i<cases.length; ++i) {
|
688
|
-
t.eq(cases[i].got, cases[i].expected, cases[i].message);
|
689
|
-
}
|
690
|
-
|
691
|
-
}
|
692
|
-
|
693
|
-
function test_Map_getControlsByClass(t) {
|
694
|
-
|
695
|
-
var map = {
|
696
|
-
getBy: OpenLayers.Map.prototype.getBy,
|
697
|
-
getControlsBy: OpenLayers.Map.prototype.getControlsBy,
|
698
|
-
getControlsByClass: OpenLayers.Map.prototype.getControlsByClass,
|
699
|
-
controls: [
|
700
|
-
{CLASS_NAME: "foo", id: Math.random()},
|
701
|
-
{CLASS_NAME: "bar", id: Math.random()},
|
702
|
-
{CLASS_NAME: "foobar", id: Math.random()},
|
703
|
-
{CLASS_NAME: "foo bar", id: Math.random()},
|
704
|
-
{CLASS_NAME: "foo", id: Math.random()}
|
705
|
-
]
|
706
|
-
};
|
707
|
-
|
708
|
-
var cases = [
|
709
|
-
{
|
710
|
-
got: map.getControlsByClass("foo"),
|
711
|
-
expected: [map.controls[0], map.controls[4]],
|
712
|
-
message: "(string literal) got two controls matching type"
|
713
|
-
}, {
|
714
|
-
got: map.getControlsByClass("bar"),
|
715
|
-
expected: [map.controls[1]],
|
716
|
-
message: "(string literal) got one control matching type"
|
717
|
-
}, {
|
718
|
-
got: map.getControlsByClass("barfoo"),
|
719
|
-
expected: [],
|
720
|
-
message: "(string literal) got empty array for no match"
|
721
|
-
}, {
|
722
|
-
got: map.getControlsByClass(/foo/),
|
723
|
-
expected: [map.controls[0], map.controls[2], map.controls[3], map.controls[4]],
|
724
|
-
message: "(regexp literal) got three controls containing string"
|
725
|
-
}, {
|
726
|
-
got: map.getControlsByClass(/foo$/),
|
727
|
-
expected: [map.controls[0], map.controls[4]],
|
728
|
-
message: "(regexp literal) got three controls ending with string"
|
729
|
-
}, {
|
730
|
-
got: map.getControlsByClass(/\s/),
|
731
|
-
expected: [map.controls[3]],
|
732
|
-
message: "(regexp literal) got control containing space"
|
733
|
-
}, {
|
734
|
-
got: map.getControlsByClass(new RegExp("BAR", "i")),
|
735
|
-
expected: [map.controls[1], map.controls[2], map.controls[3]],
|
736
|
-
message: "(regexp object) got controls ignoring case"
|
737
|
-
}, {
|
738
|
-
got: map.getControlsByClass({test: function(str) {return str.length > 3;}}),
|
739
|
-
expected: [map.controls[2], map.controls[3]],
|
740
|
-
message: "(custom object) got controls with type length greater than 3"
|
741
|
-
}
|
742
|
-
];
|
743
|
-
t.plan(cases.length);
|
744
|
-
for(var i=0; i<cases.length; ++i) {
|
745
|
-
t.eq(cases[i].got, cases[i].expected, cases[i].message);
|
746
|
-
}
|
747
|
-
|
748
|
-
}
|
749
|
-
|
750
|
-
function test_Map_double_addLayer(t) {
|
751
|
-
t.plan(2);
|
752
|
-
|
753
|
-
map = new OpenLayers.Map('map');
|
754
|
-
layer = new OpenLayers.Layer.WMS('Test Layer',
|
755
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
756
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'}
|
757
|
-
);
|
758
|
-
|
759
|
-
var added = map.addLayer(layer);
|
760
|
-
t.ok(added === true, "Map.addLayer returns true if the layer is added to the map.");
|
761
|
-
var added = map.addLayer(layer);
|
762
|
-
t.ok(added === false, "Map.addLayer returns false if the layer is already present.");
|
763
|
-
|
764
|
-
map.destroy();
|
765
|
-
}
|
766
|
-
|
767
|
-
function test_Map_setBaseLayer(t) {
|
768
|
-
t.plan( 6 );
|
769
|
-
|
770
|
-
map = new OpenLayers.Map('map');
|
771
|
-
|
772
|
-
var wmslayer = new OpenLayers.Layer.WMS('Test Layer',
|
773
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
774
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
775
|
-
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
776
|
-
|
777
|
-
var wmslayer2 = new OpenLayers.Layer.WMS('Test Layer2',
|
778
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
779
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
780
|
-
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
781
|
-
|
782
|
-
map.addLayers([wmslayer, wmslayer2]);
|
783
|
-
|
784
|
-
t.ok(map.baseLayer == wmslayer, "default base layer is first one added");
|
785
|
-
|
786
|
-
map.setBaseLayer(null);
|
787
|
-
t.ok(map.baseLayer == wmslayer, "setBaseLayer on null object does nothing (and does not break)");
|
788
|
-
|
789
|
-
map.setBaseLayer("chicken");
|
790
|
-
t.ok(map.baseLayer == wmslayer, "setBaseLayer on non-layer object does nothing (and does not break)");
|
791
|
-
|
792
|
-
map.setBaseLayer(wmslayer2);
|
793
|
-
t.ok(map.baseLayer == wmslayer2, "setbaselayer correctly sets 'baseLayer' property");
|
794
|
-
|
795
|
-
map.destroy();
|
796
|
-
|
797
|
-
var l1 = new OpenLayers.Layer(),
|
798
|
-
l2 = new OpenLayers.Layer(null, {maxResolution: 1.4});
|
799
|
-
map = new OpenLayers.Map({
|
800
|
-
div: 'map',
|
801
|
-
allOverlays: true,
|
802
|
-
layers: [l1, l2],
|
803
|
-
zoom: 0,
|
804
|
-
center: [0, 0]
|
805
|
-
});
|
806
|
-
t.eq(l2.div.style.display, "none", "Layer invisible because not in range");
|
807
|
-
map.raiseLayer(l1, 1);
|
808
|
-
t.eq(l2.div.style.display, "block", "Layer visible after base layer change because in range now");
|
809
|
-
map.destroy();
|
810
|
-
}
|
811
|
-
|
812
|
-
function test_Map_removeLayer(t) {
|
813
|
-
t.plan(1);
|
814
|
-
var f = function() {};
|
815
|
-
var events = {triggerEvent: f};
|
816
|
-
var layers = [
|
817
|
-
{name: "fee", removeMap: f, events: events},
|
818
|
-
{name: "fi", removeMap: f, events: events},
|
819
|
-
{name: "fo", removeMap: f, events: events},
|
820
|
-
{name: "fum", removeMap: f, events: events}
|
821
|
-
];
|
822
|
-
var map = {
|
823
|
-
layers: layers,
|
824
|
-
baseLayer: layers[0],
|
825
|
-
layerContainerDiv: {removeChild: f},
|
826
|
-
events: {triggerEvent: f},
|
827
|
-
resetLayersZIndex: function() {}
|
828
|
-
};
|
829
|
-
OpenLayers.Map.prototype.removeLayer.apply(map, [map.baseLayer, false]);
|
830
|
-
t.eq(map.baseLayer, null,
|
831
|
-
"removing the baselayer sets baseLayer to null");
|
832
|
-
}
|
833
|
-
|
834
|
-
function test_Map_removeLayer_res(t) {
|
835
|
-
t.plan(2);
|
836
|
-
|
837
|
-
map = new OpenLayers.Map('map');
|
838
|
-
|
839
|
-
var layer0 = new OpenLayers.Layer.WMS(
|
840
|
-
'Test Layer 0',
|
841
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
842
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
843
|
-
{resolutions: [4, 2, 1]}
|
844
|
-
);
|
845
|
-
|
846
|
-
var layer1 = new OpenLayers.Layer.WMS(
|
847
|
-
'Test Layer 1',
|
848
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
849
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
850
|
-
{resolutions: [4, 2]}
|
851
|
-
);
|
852
|
-
|
853
|
-
map.addLayers([layer0, layer1]);
|
854
|
-
map.zoomToMaxExtent();
|
855
|
-
map.zoomTo(2);
|
856
|
-
t.eq(map.getResolution(), layer0.resolutions[2],
|
857
|
-
"correct resolution before removal");
|
858
|
-
map.removeLayer(layer0);
|
859
|
-
t.eq(map.getResolution(), layer0.resolutions[1],
|
860
|
-
"correct resolution after removal");
|
861
|
-
|
862
|
-
map.destroy();
|
863
|
-
}
|
864
|
-
|
865
|
-
function test_Map_removeLayer_zindex(t) {
|
866
|
-
t.plan(2);
|
867
|
-
|
868
|
-
map = new OpenLayers.Map('map');
|
869
|
-
|
870
|
-
var layer0 = new OpenLayers.Layer('Test Layer 0', {isBaseLayer:true});
|
871
|
-
var layer1 = new OpenLayers.Layer('Test Layer 1', {isBaseLayer:true});
|
872
|
-
var layer2 = new OpenLayers.Layer('Test Layer 2', {isBaseLayer:false});
|
873
|
-
|
874
|
-
map.addLayers([layer0, layer1, layer2]);
|
875
|
-
map.removeLayer(layer0);
|
876
|
-
|
877
|
-
t.eq(parseInt(layer1.div.style.zIndex), map.Z_INDEX_BASE['BaseLayer'],
|
878
|
-
"correct z-index after removeLayer");
|
879
|
-
t.eq(parseInt(layer2.div.style.zIndex), map.Z_INDEX_BASE['Overlay'] + 5,
|
880
|
-
"correct z-index after removeLayer");
|
881
|
-
|
882
|
-
map.destroy();
|
883
|
-
}
|
884
|
-
|
885
|
-
function test_Map_removeLayer_preremovelayer(t) {
|
886
|
-
t.plan(4);
|
887
|
-
map = new OpenLayers.Map('map');
|
888
|
-
|
889
|
-
map.addLayer(new OpenLayers.Layer());
|
890
|
-
map.removeLayer(map.layers[0]);
|
891
|
-
|
892
|
-
// one test: standard behaviour without listener
|
893
|
-
t.eq(map.layers.length, 0, "without registered preremovelayer-listener layers can be removed as usual");
|
894
|
-
|
895
|
-
var callCnt = 0;
|
896
|
-
|
897
|
-
map.events.register('preremovelayer', this, function(evt) {
|
898
|
-
callCnt++;
|
899
|
-
return !(evt.layer.name === 'donotremove');
|
900
|
-
});
|
901
|
-
var layer1 = new OpenLayers.Layer('donotremove');
|
902
|
-
var layer2 = new OpenLayers.Layer('doremove');
|
903
|
-
|
904
|
-
map.addLayers([layer1,layer2]);
|
905
|
-
|
906
|
-
// two tests: remove action can be canceled
|
907
|
-
map.removeLayer(layer1);
|
908
|
-
t.eq(map.layers.length, 2, "layer is not removed since preremovelayer returns false");
|
909
|
-
map.removeLayer(layer2);
|
910
|
-
t.eq(map.layers.length, 1, "layer is removed since preremovelayer returns true");
|
911
|
-
|
912
|
-
// one test: listener was called twice
|
913
|
-
t.eq(callCnt, 2, "preremovelayer-listener was called exactly twice");
|
914
|
-
|
915
|
-
map.destroy();
|
916
|
-
}
|
917
|
-
|
918
|
-
function test_Map_setBaseLayer_after_pan (t) {
|
919
|
-
t.plan(1);
|
920
|
-
|
921
|
-
map = new OpenLayers.Map('map');
|
922
|
-
var wmsLayer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
|
923
|
-
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
|
924
|
-
var tmsLayer = new OpenLayers.Layer.TMS("TMS",
|
925
|
-
"http://labs.metacarta.com/wms-c/Basic.py/",
|
926
|
-
{'layername':'basic', 'type':'png'});
|
927
|
-
map.addLayers([wmsLayer,tmsLayer]);
|
928
|
-
map.setBaseLayer(wmsLayer);
|
929
|
-
map.zoomToMaxExtent();
|
930
|
-
map.setBaseLayer(tmsLayer);
|
931
|
-
map.zoomIn();
|
932
|
-
map.pan(0, -200, {animate:false});
|
933
|
-
var log = [];
|
934
|
-
map.applyTransform = function(x, y, scale) {
|
935
|
-
log.push([x || map.layerContainerOriginPx.x, y || map.layerContainerOriginPx.y, scale]);
|
936
|
-
OpenLayers.Map.prototype.applyTransform.apply(this, arguments);
|
937
|
-
};
|
938
|
-
map.setBaseLayer(wmsLayer);
|
939
|
-
t.eq(log[0][0], 0, "layerContainer is recentered after setBaseLayer");
|
940
|
-
|
941
|
-
map.destroy();
|
942
|
-
}
|
943
|
-
|
944
|
-
function test_Map_moveLayer (t) {
|
945
|
-
t.plan(10);
|
946
|
-
|
947
|
-
var ct = 0;
|
948
|
-
map = new OpenLayers.Map('map');
|
949
|
-
var wmslayer = new OpenLayers.Layer.WMS('Test Layer',
|
950
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
951
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
952
|
-
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
953
|
-
|
954
|
-
var wmslayer2 = new OpenLayers.Layer.WMS('Test Layer2',
|
955
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
956
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
957
|
-
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
958
|
-
|
959
|
-
var wmslayer3 = new OpenLayers.Layer.WMS('Test Layer2',
|
960
|
-
"http://octo.metacarta.com/cgi-bin/mapserv",
|
961
|
-
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'},
|
962
|
-
{maxExtent: new OpenLayers.Bounds(33861, 717605, 330846, 1019656), maxResolution: 296985/1024, projection:"EPSG:2805" } );
|
963
|
-
|
964
|
-
map.addLayers([wmslayer, wmslayer2, wmslayer3]);
|
965
|
-
map.events.register("changelayer", map, function (e) { ct++; });
|
966
|
-
t.eq( map.getNumLayers(), 3, "getNumLayers returns the number of layers" );
|
967
|
-
t.eq( map.getLayerIndex(wmslayer3), 2, "getLayerIndex returns the right index" );
|
968
|
-
map.raiseLayer(wmslayer3, 1);
|
969
|
-
t.eq( map.getLayerIndex(wmslayer3), 2, "can't moveLayer up past the top of the stack" );
|
970
|
-
map.raiseLayer(wmslayer, -1);
|
971
|
-
t.eq( map.getLayerIndex(wmslayer), 0, "can't moveLayer down past the bottom of the stack" );
|
972
|
-
map.raiseLayer(wmslayer3, -1);
|
973
|
-
t.eq( map.getLayerIndex(wmslayer3), 1, "can moveLayer down from the top" );
|
974
|
-
t.eq( parseInt(wmslayer3.div.style.zIndex), map.Z_INDEX_BASE['BaseLayer'] + 5,
|
975
|
-
"layer div has the right zIndex after moving down" );
|
976
|
-
map.raiseLayer(wmslayer, 2);
|
977
|
-
t.eq( map.getLayerIndex(wmslayer), 2, "can moveLayer up from the bottom" );
|
978
|
-
t.eq( parseInt(wmslayer.div.style.zIndex), map.Z_INDEX_BASE['BaseLayer'] + 2 * 5,
|
979
|
-
"layer div has the right zIndex after moving up" );
|
980
|
-
t.eq( map.getLayerIndex(wmslayer3), 0, "top layer is now on the bottom" );
|
981
|
-
t.eq( ct, 3, "raiseLayer triggered changelayer the right # of times" );
|
982
|
-
|
983
|
-
map.destroy();
|
984
|
-
}
|
985
|
-
|
986
|
-
function test_Map_moveTo(t) {
|
987
|
-
t.plan(2);
|
988
|
-
|
989
|
-
map = new OpenLayers.Map('map');
|
990
|
-
var baseLayer = new OpenLayers.Layer.WMS("Test Layer",
|
991
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
992
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"},
|
993
|
-
{maxResolution: 'auto', maxExtent: new OpenLayers.Bounds(-10,-10,10,10)});
|
994
|
-
baseLayer.events.on({
|
995
|
-
move: function() {
|
996
|
-
t.ok(true, "move listener called");
|
997
|
-
},
|
998
|
-
movestart: function(e) {
|
999
|
-
t.eq(e.zoomChanged, true, "movestart listener called with expected value");
|
1000
|
-
}
|
1001
|
-
});
|
1002
|
-
baseLayer.events.on({
|
1003
|
-
moveend: function(e) {
|
1004
|
-
t.eq(e.zoomChanged, true, "moveend listener called with expected value");
|
1005
|
-
}
|
1006
|
-
});
|
1007
|
-
map.addLayer(baseLayer);
|
1008
|
-
var ll = new OpenLayers.LonLat(-100,-150);
|
1009
|
-
map.moveTo(ll, 2);
|
1010
|
-
t.ok(map.getCenter().equals(new OpenLayers.LonLat(0,0)), "safely sets out-of-bounds lonlat");
|
1011
|
-
|
1012
|
-
map.destroy();
|
1013
|
-
}
|
1014
|
-
|
1015
|
-
function test_Map_defaultTheme(t) {
|
1016
|
-
t.plan(5);
|
1017
|
-
|
1018
|
-
var links = document.getElementsByTagName('link');
|
1019
|
-
map = new OpenLayers.Map('map');
|
1020
|
-
var gotNodes = 0;
|
1021
|
-
var themeNode = null;
|
1022
|
-
for(var i=0; i<links.length; ++i) {
|
1023
|
-
if(OpenLayers.Util.isEquivalentUrl(map.theme, links.item(i).href)) {
|
1024
|
-
gotNodes += 1;
|
1025
|
-
themeNode = links.item(i);
|
1026
|
-
}
|
1027
|
-
}
|
1028
|
-
t.eq(gotNodes, 1, "by default, a single link node is added to document");
|
1029
|
-
t.ok(themeNode != null, "a link node with the theme href was added");
|
1030
|
-
t.eq(themeNode.rel, "stylesheet", "node added has rel set to stylesheet");
|
1031
|
-
t.eq(themeNode.type, "text/css", "node added has type set to text/css");
|
1032
|
-
|
1033
|
-
// reconstruct the map to prove that another link is not added
|
1034
|
-
map = new OpenLayers.Map('map');
|
1035
|
-
t.eq(links.length, document.getElementsByTagName('link').length,
|
1036
|
-
"calling the map constructor twice with the same theme doesn't add duplicate link nodes");
|
1037
|
-
|
1038
|
-
map.destroy();
|
1039
|
-
}
|
1040
|
-
|
1041
|
-
function test_Map_customTheme(t) {
|
1042
|
-
t.plan(5);
|
1043
|
-
|
1044
|
-
var customTheme = 'foo';
|
1045
|
-
var options = {theme: customTheme};
|
1046
|
-
map = new OpenLayers.Map('map', options);
|
1047
|
-
|
1048
|
-
var links = document.getElementsByTagName('link');
|
1049
|
-
var gotNodes = 0;
|
1050
|
-
var themeNode = null;
|
1051
|
-
for(var i=0; i<links.length; ++i) {
|
1052
|
-
if(OpenLayers.Util.isEquivalentUrl(map.theme, links.item(i).href)) {
|
1053
|
-
gotNodes += 1;
|
1054
|
-
themeNode = links.item(i);
|
1055
|
-
}
|
1056
|
-
}
|
1057
|
-
|
1058
|
-
t.eq(map.theme, customTheme, "map theme is properly set");
|
1059
|
-
t.eq(gotNodes, 1, "with custom theme, a single link node is added to document");
|
1060
|
-
t.ok(themeNode != null, "a link node with the theme href was added");
|
1061
|
-
t.eq(themeNode.rel, "stylesheet", "node added has rel set to stylesheet");
|
1062
|
-
t.eq(themeNode.type, "text/css", "node added has type set to text/css");
|
1063
|
-
|
1064
|
-
map.destroy();
|
1065
|
-
}
|
1066
|
-
|
1067
|
-
function test_Map_noTheme(t) {
|
1068
|
-
t.plan(1);
|
1069
|
-
|
1070
|
-
var head = document.getElementsByTagName('head')[0];
|
1071
|
-
var nodeCount = head.childNodes.length;
|
1072
|
-
|
1073
|
-
var options = {theme: null};
|
1074
|
-
map = new OpenLayers.Map('map', options);
|
1075
|
-
|
1076
|
-
t.eq(nodeCount, head.childNodes.length, "with no theme, a node is not added to document head" );
|
1077
|
-
|
1078
|
-
map.destroy();
|
1079
|
-
}
|
1080
|
-
|
1081
|
-
function test_Map_addControls(t) {
|
1082
|
-
t.plan(5);
|
1083
|
-
var map = new OpenLayers.Map('map', {
|
1084
|
-
controls: []
|
1085
|
-
});
|
1086
|
-
var controls = [
|
1087
|
-
new OpenLayers.Control({id:'firstctrl'}),
|
1088
|
-
new OpenLayers.Control({id:'secondctrl'})
|
1089
|
-
];
|
1090
|
-
map.addControls(controls);
|
1091
|
-
t.eq(map.controls.length, 2, "two controls were added by map.addControls without a px-array");
|
1092
|
-
t.eq(map.controls[0].id, 'firstctrl', "control with index 0 has id 'firstctrl'");
|
1093
|
-
t.eq(map.controls[1].id, 'secondctrl', "control with index 1 has id 'secondctrl'");
|
1094
|
-
|
1095
|
-
var controls2 = [
|
1096
|
-
new OpenLayers.Control({id:'thirdctrl'}),
|
1097
|
-
new OpenLayers.Control({id:'fourthctrl'}),
|
1098
|
-
new OpenLayers.Control({id:'fifthctrl'})
|
1099
|
-
];
|
1100
|
-
// this array is intentionally one element shorter than the above
|
1101
|
-
var pixels2 = [
|
1102
|
-
null,
|
1103
|
-
new OpenLayers.Pixel(27,11)
|
1104
|
-
];
|
1105
|
-
map.addControls(controls2, pixels2);
|
1106
|
-
t.eq(map.controls.length, 5, "three additional controls were added by map.addControls with a px-array");
|
1107
|
-
t.eq(map.controls[3].position.toString(), pixels2[1].toString(), "control 'fourthctrl' has position set to given px");
|
1108
|
-
|
1109
|
-
map.destroy();
|
1110
|
-
}
|
1111
|
-
|
1112
|
-
function test_Map_getControl(t) {
|
1113
|
-
t.plan(2);
|
1114
|
-
|
1115
|
-
var map1 = new OpenLayers.Map('map');
|
1116
|
-
|
1117
|
-
var control = new OpenLayers.Control();
|
1118
|
-
map1.addControl(control);
|
1119
|
-
|
1120
|
-
var gotControl = map1.getControl(control.id);
|
1121
|
-
t.ok(gotControl == control, "got right control");
|
1122
|
-
|
1123
|
-
gotControl = map1.getControl("bogus id");
|
1124
|
-
t.ok(gotControl == null, "getControl() for bad id returns null");
|
1125
|
-
|
1126
|
-
map1.destroy();
|
1127
|
-
}
|
1128
|
-
|
1129
|
-
function test_Map_removeControl(t) {
|
1130
|
-
t.plan(6);
|
1131
|
-
|
1132
|
-
var oldNumControls, newNumControls;
|
1133
|
-
|
1134
|
-
var map1 = new OpenLayers.Map('map');
|
1135
|
-
oldNumControls = map1.controls.length;
|
1136
|
-
|
1137
|
-
var control = new OpenLayers.Control();
|
1138
|
-
map1.addControl(control);
|
1139
|
-
|
1140
|
-
//add control
|
1141
|
-
newNumControls = map1.controls.length;
|
1142
|
-
t.ok( newNumControls = oldNumControls + 1, "adding a control increases control count")
|
1143
|
-
|
1144
|
-
var foundDiv = false;
|
1145
|
-
for(var i=0; i < map1.viewPortDiv.childNodes.length; i++) {
|
1146
|
-
var childNode = map1.viewPortDiv.childNodes[i];
|
1147
|
-
if (childNode == control.div) {
|
1148
|
-
foundDiv = true;
|
1149
|
-
}
|
1150
|
-
}
|
1151
|
-
t.ok(foundDiv, "new control's div correctly added to viewPort");
|
1152
|
-
|
1153
|
-
//remove control
|
1154
|
-
map1.removeControl(control)
|
1155
|
-
newNumControls = map1.controls.length;
|
1156
|
-
t.ok( newNumControls == oldNumControls, "removing the control decreases control count")
|
1157
|
-
|
1158
|
-
var gotControl = map1.getControl(control.id);
|
1159
|
-
t.ok( gotControl == null, "control no longer in map's controls array");
|
1160
|
-
|
1161
|
-
var foundDiv = false;
|
1162
|
-
for(var i=0; i < map1.viewPortDiv.childNodes.length; i++) {
|
1163
|
-
var childNode = map1.viewPortDiv.childNodes[i];
|
1164
|
-
if (childNode == control.div) {
|
1165
|
-
foundDiv = true;
|
1166
|
-
}
|
1167
|
-
}
|
1168
|
-
t.ok(!foundDiv, "control no longer child of viewPort");
|
1169
|
-
|
1170
|
-
//remove bogus
|
1171
|
-
control = { id: "bogus id" };
|
1172
|
-
map1.removeControl(control);
|
1173
|
-
newNumControls = map1.controls.length;
|
1174
|
-
t.ok( newNumControls == oldNumControls, "removing bad controlid doesnt crash or decrease control count")
|
1175
|
-
|
1176
|
-
map1.destroy();
|
1177
|
-
|
1178
|
-
}
|
1179
|
-
|
1180
|
-
function test_Map_restrictedExtent(t) {
|
1181
|
-
t.plan(25);
|
1182
|
-
var extent = new OpenLayers.Bounds(-180, -90, 180, 90);
|
1183
|
-
var options = {
|
1184
|
-
maxResolution: "auto"
|
1185
|
-
};
|
1186
|
-
var map = new OpenLayers.Map("map", options);
|
1187
|
-
var layer = new OpenLayers.Layer.WMS(
|
1188
|
-
"test",
|
1189
|
-
"http://octo.metacarta.com/cgi-bin/mapserv?",
|
1190
|
-
{map: "/mapdata/vmap_wms.map", layers: "basic"}
|
1191
|
-
);
|
1192
|
-
map.addLayer(layer);
|
1193
|
-
map.zoomToMaxExtent();
|
1194
|
-
var nw = new OpenLayers.LonLat(extent.left, extent.top);
|
1195
|
-
var ne = new OpenLayers.LonLat(extent.right, extent.top);
|
1196
|
-
var sw = new OpenLayers.LonLat(extent.left, extent.bottom);
|
1197
|
-
var se = new OpenLayers.LonLat(extent.right, extent.bottom);
|
1198
|
-
|
1199
|
-
// try panning to northwest corner
|
1200
|
-
map.setOptions({restrictedExtent: extent});
|
1201
|
-
map.setCenter(nw, 0);
|
1202
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1203
|
-
extent.getCenterLonLat().toString(),
|
1204
|
-
"map extent properly restricted to northwest at zoom 0");
|
1205
|
-
t.eq(map.zoom, 0, "zoom not restricted for nw, 0");
|
1206
|
-
map.setCenter(nw, 5);
|
1207
|
-
t.eq(map.getExtent().top, extent.top,
|
1208
|
-
"map extent top properly restricted to northwest at zoom 5");
|
1209
|
-
t.eq(map.getExtent().left, extent.left,
|
1210
|
-
"map extent left properly restricted to northwest at zoom 5");
|
1211
|
-
t.eq(map.zoom, 5, "zoom not restricted for nw, 5");
|
1212
|
-
map.setOptions({restrictedExtent: null});
|
1213
|
-
map.setCenter(nw, 0);
|
1214
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1215
|
-
nw.toString(),
|
1216
|
-
"map extent not restricted with null restrictedExtent for nw");
|
1217
|
-
|
1218
|
-
// try panning to northeast corner
|
1219
|
-
map.setOptions({restrictedExtent: extent});
|
1220
|
-
map.setCenter(ne, 0);
|
1221
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1222
|
-
extent.getCenterLonLat().toString(),
|
1223
|
-
"map extent properly restricted to northeast at zoom 0");
|
1224
|
-
t.eq(map.zoom, 0, "zoom not restricted for ne, 0");
|
1225
|
-
map.setCenter(ne, 5);
|
1226
|
-
t.eq(map.getExtent().top, extent.top,
|
1227
|
-
"map extent top properly restricted to northeast at zoom 5");
|
1228
|
-
t.eq(map.getExtent().right, extent.right,
|
1229
|
-
"map extent right properly restricted to northeast at zoom 5");
|
1230
|
-
t.eq(map.zoom, 5, "zoom not restricted for ne, 5");
|
1231
|
-
map.setOptions({restrictedExtent: null});
|
1232
|
-
map.setCenter(ne, 0);
|
1233
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1234
|
-
ne.toString(),
|
1235
|
-
"map extent not restricted with null restrictedExtent for ne");
|
1236
|
-
|
1237
|
-
// try panning to southwest corner
|
1238
|
-
map.setOptions({restrictedExtent: extent});
|
1239
|
-
map.setCenter(sw, 0);
|
1240
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1241
|
-
extent.getCenterLonLat().toString(),
|
1242
|
-
"map extent properly restricted to southwest at zoom 0");
|
1243
|
-
t.eq(map.zoom, 0, "zoom not restricted for sw, 0");
|
1244
|
-
map.setCenter(sw, 5);
|
1245
|
-
t.eq(map.getExtent().bottom, extent.bottom,
|
1246
|
-
"map extent bottom properly restricted to southwest at zoom 5");
|
1247
|
-
t.eq(map.getExtent().left, extent.left,
|
1248
|
-
"map extent left properly restricted to southwest at zoom 5");
|
1249
|
-
t.eq(map.zoom, 5, "zoom not restricted for sw, 5");
|
1250
|
-
map.setOptions({restrictedExtent: null});
|
1251
|
-
map.setCenter(sw, 0);
|
1252
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1253
|
-
sw.toString(),
|
1254
|
-
"map extent not restricted with null restrictedExtent for sw");
|
1255
|
-
|
1256
|
-
// try panning to southeast corner
|
1257
|
-
map.setOptions({restrictedExtent: extent});
|
1258
|
-
map.setCenter(se, 0);
|
1259
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1260
|
-
extent.getCenterLonLat().toString(),
|
1261
|
-
"map extent properly restricted to southeast at zoom 0");
|
1262
|
-
t.eq(map.zoom, 0, "zoom not restricted for se, 0");
|
1263
|
-
map.setCenter(se, 5);
|
1264
|
-
t.eq(map.getExtent().bottom, extent.bottom,
|
1265
|
-
"map extent bottom properly restricted to southeast at zoom 5");
|
1266
|
-
t.eq(map.getExtent().right, extent.right,
|
1267
|
-
"map extent right properly restricted to southeast at zoom 5");
|
1268
|
-
t.eq(map.zoom, 5, "zoom not restricted for se, 5");
|
1269
|
-
map.setOptions({restrictedExtent: null});
|
1270
|
-
map.setCenter(se, 0);
|
1271
|
-
t.eq(map.getExtent().getCenterLonLat().toString(),
|
1272
|
-
se.toString(),
|
1273
|
-
"map extent not restricted with null restrictedExtent for se");
|
1274
|
-
|
1275
|
-
map.destroy();
|
1276
|
-
|
1277
|
-
extent = new OpenLayers.Bounds(8, 44.5, 19, 50);
|
1278
|
-
var options = {
|
1279
|
-
restrictedExtent: extent,
|
1280
|
-
zoomMethod: null
|
1281
|
-
};
|
1282
|
-
map = new OpenLayers.Map('map', options);
|
1283
|
-
|
1284
|
-
var wms = new OpenLayers.Layer.WMS(
|
1285
|
-
"OpenLayers WMS",
|
1286
|
-
"http://vmap0.tiles.osgeo.org/wms/vmap0?",
|
1287
|
-
{layers: 'basic'}
|
1288
|
-
);
|
1289
|
-
|
1290
|
-
map.addLayers([wms]);
|
1291
|
-
map.zoomToExtent(extent);
|
1292
|
-
map.zoomIn();
|
1293
|
-
map.setOptions({restrictedExtent: null});
|
1294
|
-
map.pan(-250, -250);
|
1295
|
-
t.ok((map.getExtent().bottom == 48.3486328125 && map.getExtent().left == 7.45751953125), "Expected extent when toggling restrictedExtent");
|
1296
|
-
map.destroy();
|
1297
|
-
}
|
1298
|
-
|
1299
|
-
function test_Map_getResolutionForZoom(t) {
|
1300
|
-
t.plan(2);
|
1301
|
-
var map = new OpenLayers.Map("map");
|
1302
|
-
var res = map.getResolutionForZoom();
|
1303
|
-
t.eq(res, null, "getResolutionForZoom returns null for no base layer");
|
1304
|
-
map.fractionalZoom = true;
|
1305
|
-
var layer = new OpenLayers.Layer("test", {isBaseLayer: true});
|
1306
|
-
map.addLayer(layer);
|
1307
|
-
layer.getResolutionForZoom = function() {
|
1308
|
-
t.ok(true, "getResolutionForZoom calls base layer getResolutionForZoom");
|
1309
|
-
}
|
1310
|
-
var res = map.getResolutionForZoom();
|
1311
|
-
layer.destroy();
|
1312
|
-
map.destroy();
|
1313
|
-
}
|
1314
|
-
|
1315
|
-
function test_zoomTo(t) {
|
1316
|
-
t.plan(8);
|
1317
|
-
|
1318
|
-
var map = new OpenLayers.Map("map", {zoomMethod: null});
|
1319
|
-
map.addLayer(new OpenLayers.Layer(null, {
|
1320
|
-
isBaseLayer: true
|
1321
|
-
}));
|
1322
|
-
|
1323
|
-
map.zoomToMaxExtent();
|
1324
|
-
|
1325
|
-
map.zoomTo(2);
|
1326
|
-
t.eq(map.getZoom(), 2, 'zoomTo(2)');
|
1327
|
-
|
1328
|
-
map.zoomTo(3.6);
|
1329
|
-
t.eq(map.getZoom(), 4, 'zoomTo(3.6)');
|
1330
|
-
|
1331
|
-
map.zoomTo("4.6");
|
1332
|
-
t.eq(map.getZoom(), 5, 'zoomTo("4.6")');
|
1333
|
-
|
1334
|
-
map.zoomTo("1.2");
|
1335
|
-
t.eq(map.getZoom(), 1, 'zoomTo("1.2")');
|
1336
|
-
|
1337
|
-
// now allow fractional zoom
|
1338
|
-
map.fractionalZoom = true;
|
1339
|
-
|
1340
|
-
map.zoomTo(2);
|
1341
|
-
t.eq(map.getZoom(), 2, '[fractionalZoom] zoomTo(2)');
|
1342
|
-
|
1343
|
-
map.zoomTo(3.6);
|
1344
|
-
t.eq(map.getZoom(), 3.6, '[fractionalZoom] zoomTo(3.6)');
|
1345
|
-
|
1346
|
-
map.zoomTo("4.6");
|
1347
|
-
t.eq(map.getZoom(), 4.6, '[fractionalZoom] zoomTo("4.6")');
|
1348
|
-
|
1349
|
-
map.zoomTo("1.2");
|
1350
|
-
t.eq(map.getZoom(), 1.2, '[fractionalZoom] zoomTo("1.2")');
|
1351
|
-
|
1352
|
-
map.destroy();
|
1353
|
-
}
|
1354
|
-
|
1355
|
-
function test_zoomTo_animated(t) {
|
1356
|
-
t.plan(2);
|
1357
|
-
|
1358
|
-
var map = new OpenLayers.Map("map");
|
1359
|
-
map.addLayer(new OpenLayers.Layer(null, {
|
1360
|
-
isBaseLayer: true
|
1361
|
-
}));
|
1362
|
-
|
1363
|
-
map.zoomToMaxExtent();
|
1364
|
-
|
1365
|
-
map.zoomTo(2);
|
1366
|
-
map.zoomIn();
|
1367
|
-
map.zoomOut();
|
1368
|
-
map.zoomIn();
|
1369
|
-
t.delay_call(2, function() {
|
1370
|
-
t.eq(map.getZoom(), 3, '[fractionalZoom: false] zoomTo(2) - zoomIn() - zoomOut() - zoomIn()');
|
1371
|
-
|
1372
|
-
// now allow fractional zoom
|
1373
|
-
map.fractionalZoom = true;
|
1374
|
-
|
1375
|
-
map.zoomTo(2.6);
|
1376
|
-
map.zoomIn();
|
1377
|
-
map.zoomOut();
|
1378
|
-
map.zoomIn();
|
1379
|
-
});
|
1380
|
-
t.delay_call(4, function() {
|
1381
|
-
t.eq(map.getZoom(), 3.6, '[fractionalZoom: true] zoomTo(2) - zoomIn() - zoomOut() - zoomIn()');
|
1382
|
-
map.destroy();
|
1383
|
-
});
|
1384
|
-
|
1385
|
-
}
|
1386
|
-
|
1387
|
-
function test_Map_getUnits(t) {
|
1388
|
-
t.plan(2);
|
1389
|
-
var map = new OpenLayers.Map("map");
|
1390
|
-
var units = map.getUnits();
|
1391
|
-
t.eq(units, null, "getUnits returns null for no base layer");
|
1392
|
-
|
1393
|
-
var layer = new OpenLayers.Layer("test", {
|
1394
|
-
isBaseLayer: true,
|
1395
|
-
units: 'foo'
|
1396
|
-
});
|
1397
|
-
map.addLayer(layer);
|
1398
|
-
var units = map.getUnits();
|
1399
|
-
t.eq(units, 'foo', "getUnits returns the base layer units property");
|
1400
|
-
layer.destroy();
|
1401
|
-
map.destroy();
|
1402
|
-
}
|
1403
|
-
|
1404
|
-
function test_Map_destroy (t) {
|
1405
|
-
t.plan( 3 );
|
1406
|
-
map = new OpenLayers.Map('map');
|
1407
|
-
map.destroy();
|
1408
|
-
t.eq( map.layers, null, "map.layers is null after destroy" );
|
1409
|
-
t.eq( map.controls, null, "map.controls is null after destroy" );
|
1410
|
-
t.eq( map.viewPortDiv, null, "map's viewportDiv nullified");
|
1411
|
-
}
|
1412
|
-
|
1413
|
-
function test_Map_getMaxExtent(t){
|
1414
|
-
t.plan(5);
|
1415
|
-
|
1416
|
-
var options = null;
|
1417
|
-
var map = {};
|
1418
|
-
|
1419
|
-
//null options, no baseLayer
|
1420
|
-
var maxExtent = OpenLayers.Map.prototype.getMaxExtent.apply(map, [options]);
|
1421
|
-
t.eq(maxExtent, null, "null options, no baseLayer returns null");
|
1422
|
-
|
1423
|
-
//null options.restricted, no baseLayer
|
1424
|
-
maxExtent = OpenLayers.Map.prototype.getMaxExtent.apply(map, [options]);
|
1425
|
-
t.eq(maxExtent, null, "null options.restricted, no baseLayer returns null");
|
1426
|
-
|
1427
|
-
//true options.restricted, null map.restrictedExtent no baseLayer
|
1428
|
-
maxExtent = OpenLayers.Map.prototype.getMaxExtent.apply(map, [options]);
|
1429
|
-
t.eq(maxExtent, null, "true options.restricted, null map.restrictedExtent no baseLayer returns null");
|
1430
|
-
|
1431
|
-
//true options.restricted, valid map.restrictedExtent no baseLayer
|
1432
|
-
options = {
|
1433
|
-
'restricted': true
|
1434
|
-
};
|
1435
|
-
map.restrictedExtent = {};
|
1436
|
-
maxExtent = OpenLayers.Map.prototype.getMaxExtent.apply(map, [options]);
|
1437
|
-
t.ok(maxExtent == map.restrictedExtent, "true options.restricted, valid map.restrictedExtent no baseLayer returns map.restrictedExtent");
|
1438
|
-
|
1439
|
-
//null options, valid baseLayer
|
1440
|
-
options = null;
|
1441
|
-
map.baseLayer = {
|
1442
|
-
'maxExtent': {}
|
1443
|
-
};
|
1444
|
-
var maxExtent = OpenLayers.Map.prototype.getMaxExtent.apply(map, [options]);
|
1445
|
-
t.ok(maxExtent == map.baseLayer.maxExtent, "null options, valid baseLayer returns map.baseLayer.maxExtent");
|
1446
|
-
}
|
1447
|
-
|
1448
|
-
function test_Map_zoomToMaxExtent(t){
|
1449
|
-
t.plan(4)
|
1450
|
-
|
1451
|
-
gMaxExtent = {};
|
1452
|
-
|
1453
|
-
var map = {
|
1454
|
-
'getMaxExtent': function(options) {
|
1455
|
-
gRestricted = options.restricted;
|
1456
|
-
return gMaxExtent;
|
1457
|
-
},
|
1458
|
-
'zoomToExtent': function(extent) {
|
1459
|
-
t.ok(extent == gMaxExtent, "zoomToExtent() always called on return from map.getMaxExtent()");
|
1460
|
-
}
|
1461
|
-
};
|
1462
|
-
|
1463
|
-
//options is null
|
1464
|
-
var options = null;
|
1465
|
-
gRestricted = null;
|
1466
|
-
OpenLayers.Map.prototype.zoomToMaxExtent.apply(map, [options]);
|
1467
|
-
t.eq(gRestricted, true, "default 'restricted' passed to map.getMaxExtent() is true");
|
1468
|
-
|
1469
|
-
//valid options
|
1470
|
-
options = {
|
1471
|
-
'restricted': {}
|
1472
|
-
};
|
1473
|
-
gRestricted = null;
|
1474
|
-
OpenLayers.Map.prototype.zoomToMaxExtent.apply(map, [options]);
|
1475
|
-
t.ok(gRestricted == options.restricted, "when valid options argument, 'options.restricted' passed to map.getMaxExtent()");
|
1476
|
-
}
|
1477
|
-
|
1478
|
-
function test_Map_zoomToScale(t) {
|
1479
|
-
t.plan(4);
|
1480
|
-
|
1481
|
-
var m = {
|
1482
|
-
'baseLayer': { 'units': {} },
|
1483
|
-
'size': {'w': 10, 'h': 15},
|
1484
|
-
'getSize': function() { return {'w': 10, 'h': 15}; },
|
1485
|
-
'getCachedCenter': function() { return {'lon': -5, 'lat': -25}; },
|
1486
|
-
'zoomToExtent': function(extent, closest) {
|
1487
|
-
t.ok(extent.equals(g_ExpectedExtent), "extent correctly calculated for zoomToExtent()");
|
1488
|
-
t.ok(closest == g_Closest, "closest correctly passed on to zoomToExtent()");
|
1489
|
-
}
|
1490
|
-
}
|
1491
|
-
|
1492
|
-
var temp = OpenLayers.Util.getResolutionFromScale;
|
1493
|
-
OpenLayers.Util.getResolutionFromScale = function(scale, units) {
|
1494
|
-
t.ok(scale == g_Scale, "scale parameter correctly passed to getResolutionFromScale");
|
1495
|
-
t.ok(units == m.baseLayer.units, "map's baselayer's units parameter correctly passed to getResolutionFromScale");
|
1496
|
-
return 1000;
|
1497
|
-
};
|
1498
|
-
|
1499
|
-
g_ExpectedExtent = new OpenLayers.Bounds(-5005,-7525,4995,7475);
|
1500
|
-
g_Scale = {};
|
1501
|
-
g_Closest = {};
|
1502
|
-
var args = [g_Scale, g_Closest];
|
1503
|
-
OpenLayers.Map.prototype.zoomToScale.apply(m, args);
|
1504
|
-
|
1505
|
-
OpenLayers.Util.getResolutionFromScale = temp;
|
1506
|
-
}
|
1507
|
-
|
1508
|
-
function test_Map_zoomToExtent(t) {
|
1509
|
-
t.plan(12);
|
1510
|
-
|
1511
|
-
var map = new OpenLayers.Map("map");
|
1512
|
-
var layer = new OpenLayers.Layer(null, {isBaseLayer: true});
|
1513
|
-
map.addLayer(layer);
|
1514
|
-
|
1515
|
-
var bounds = new OpenLayers.Bounds(-160, 15, -50, 69);
|
1516
|
-
var center;
|
1517
|
-
|
1518
|
-
// default for closest
|
1519
|
-
map.zoomToExtent(bounds);
|
1520
|
-
center = map.getCenter();
|
1521
|
-
t.eq(center.lon, -105, "a) correct x");
|
1522
|
-
t.eq(center.lat, 42, "a) correct y");
|
1523
|
-
t.eq(map.getZoom(), 2, "a) correct zoom");
|
1524
|
-
|
1525
|
-
// false for closest
|
1526
|
-
map.zoomToExtent(bounds, false);
|
1527
|
-
center = map.getCenter();
|
1528
|
-
t.eq(center.lon, -105, "b) correct x");
|
1529
|
-
t.eq(center.lat, 42, "b) correct y");
|
1530
|
-
t.eq(map.getZoom(), 2, "b) correct zoom");
|
1531
|
-
|
1532
|
-
// true for closest
|
1533
|
-
map.zoomToExtent(bounds, true);
|
1534
|
-
center = map.getCenter();
|
1535
|
-
t.eq(center.lon, -105, "c) correct x");
|
1536
|
-
t.eq(center.lat, 42, "c) correct y");
|
1537
|
-
t.eq(map.getZoom(), 3, "c) correct zoom");
|
1538
|
-
|
1539
|
-
// accept array
|
1540
|
-
map.zoomToExtent([-160, 15, -50, 69]);
|
1541
|
-
center = map.getCenter();
|
1542
|
-
t.eq(center.lon, -105, "(array) correct x");
|
1543
|
-
t.eq(center.lat, 42, "(array) correct y");
|
1544
|
-
t.eq(map.getZoom(), 2, "(array) correct zoom");
|
1545
|
-
|
1546
|
-
map.destroy();
|
1547
|
-
}
|
1548
|
-
|
1549
|
-
function test_Map_zoomToExtent_wrapped(t) {
|
1550
|
-
t.plan(9);
|
1551
|
-
|
1552
|
-
var map = new OpenLayers.Map("map");
|
1553
|
-
var layer = new OpenLayers.Layer(null, {isBaseLayer: true, wrapDateLine: true});
|
1554
|
-
map.addLayer(layer);
|
1555
|
-
|
1556
|
-
var bounds, center;
|
1557
|
-
|
1558
|
-
var cases = [{
|
1559
|
-
// real world
|
1560
|
-
bbox: [120, -20, 140, 0],
|
1561
|
-
center: [130, -10]
|
1562
|
-
}, {
|
1563
|
-
// one world to the right
|
1564
|
-
bbox: [220, -45, 240, 45],
|
1565
|
-
center: [-130, 0]
|
1566
|
-
}, {
|
1567
|
-
// two worlds to the right
|
1568
|
-
bbox: [550, -15, 560, 5],
|
1569
|
-
center: [-165, -5]
|
1570
|
-
}, {
|
1571
|
-
// one world to the left
|
1572
|
-
bbox: [-240, -15, -220, 5],
|
1573
|
-
center: [130, -5]
|
1574
|
-
}, {
|
1575
|
-
// two worlds to the left
|
1576
|
-
bbox: [-600, -15, -580, 5],
|
1577
|
-
center: [130, -5]
|
1578
|
-
}];
|
1579
|
-
|
1580
|
-
var num = cases.length;
|
1581
|
-
t.plan(num * 2);
|
1582
|
-
|
1583
|
-
var c, bounds, center;
|
1584
|
-
for (var i=0; i<num; ++i) {
|
1585
|
-
c = cases[i];
|
1586
|
-
bounds = OpenLayers.Bounds.fromArray(c.bbox);
|
1587
|
-
map.zoomToExtent(bounds);
|
1588
|
-
center = map.getCenter();
|
1589
|
-
t.eq(center.lon, c.center[0], "y: " + bounds);
|
1590
|
-
t.eq(center.lat, c.center[1], "x: " + bounds);
|
1591
|
-
}
|
1592
|
-
|
1593
|
-
map.destroy();
|
1594
|
-
}
|
1595
|
-
|
1596
|
-
|
1597
|
-
function test_allOverlays(t) {
|
1598
|
-
|
1599
|
-
t.plan(18);
|
1600
|
-
|
1601
|
-
var map = new OpenLayers.Map({
|
1602
|
-
div: "map", allOverlays: true
|
1603
|
-
});
|
1604
|
-
|
1605
|
-
var a = new OpenLayers.Layer.Vector("a", {visibility: true});
|
1606
|
-
|
1607
|
-
var b = new OpenLayers.Layer.Image(
|
1608
|
-
"b",
|
1609
|
-
"http://earthtrends.wri.org/images/maps/4_m_citylights_lg.gif",
|
1610
|
-
new OpenLayers.Bounds(-180, -88.759, 180, 88.759),
|
1611
|
-
new OpenLayers.Size(580, 288)
|
1612
|
-
);
|
1613
|
-
|
1614
|
-
var c = new OpenLayers.Layer.WMS(
|
1615
|
-
"c",
|
1616
|
-
"http://labs.metacarta.com/wms/vmap0",
|
1617
|
-
{layers: 'basic'}
|
1618
|
-
);
|
1619
|
-
|
1620
|
-
var d = new OpenLayers.Layer.Vector("d");
|
1621
|
-
|
1622
|
-
map.addLayers([a, b, c, d]);
|
1623
|
-
|
1624
|
-
var moveCount = 0;
|
1625
|
-
a.moveTo = function() {
|
1626
|
-
moveCount++;
|
1627
|
-
OpenLayers.Layer.Vector.prototype.moveTo.apply(this, arguments);
|
1628
|
-
};
|
1629
|
-
|
1630
|
-
map.zoomToMaxExtent();
|
1631
|
-
t.eq(moveCount, 1, "map.moveTo moves the base layer only once");
|
1632
|
-
t.eq(map.getCenter().toString(), "lon=0,lat=0", "a map with all overlays can have a center");
|
1633
|
-
|
1634
|
-
a.setVisibility(false);
|
1635
|
-
var moveend = 0;
|
1636
|
-
a.events.on({"moveend": function() { moveend++; }});
|
1637
|
-
map.zoomToMaxExtent();
|
1638
|
-
t.eq(moveCount, 1, "map.moveTo does not move the base layer if it is invisible");
|
1639
|
-
t.eq(moveend, 0, "map.moveTo does not trigger \"moveend\" in the layer if the layer is invisible");
|
1640
|
-
a.setVisibility(true);
|
1641
|
-
|
1642
|
-
// a, b, c, d
|
1643
|
-
t.eq(map.baseLayer.name, "a", "base layer set to first layer added");
|
1644
|
-
|
1645
|
-
map.removeLayer(a);
|
1646
|
-
// b, c, d
|
1647
|
-
t.eq(map.baseLayer.name, "b", "if base layer is removed, lowest layer becomes base");
|
1648
|
-
|
1649
|
-
map.addLayer(a);
|
1650
|
-
// b, c, d, a
|
1651
|
-
t.eq(map.baseLayer.name, "b", "adding a new layer doesn't change base layer");
|
1652
|
-
|
1653
|
-
map.setLayerIndex(c, 1);
|
1654
|
-
// b, d, c, a
|
1655
|
-
t.eq(map.baseLayer.name, "b", "changing layer order above base doesn't mess with base");
|
1656
|
-
|
1657
|
-
map.setLayerIndex(d, 0);
|
1658
|
-
// d, b, c, a
|
1659
|
-
t.eq(map.baseLayer.name, "d", "changing layer order to 0 sets base layer");
|
1660
|
-
|
1661
|
-
map.raiseLayer(d, 1);
|
1662
|
-
// b, d, c, a
|
1663
|
-
t.eq(map.baseLayer.name, "b", "raising the base layer sets a new base layer");
|
1664
|
-
|
1665
|
-
map.raiseLayer(d, -1);
|
1666
|
-
// d, b, c, a
|
1667
|
-
t.eq(map.baseLayer.name, "d", "lowering a layer to lowest index sets as base");
|
1668
|
-
|
1669
|
-
// all this switching of base layer didn't muck with layer visibility
|
1670
|
-
t.eq(a.visibility, true, "a is visible");
|
1671
|
-
t.eq(b.visibility, true, "b is visible");
|
1672
|
-
t.eq(c.visibility, true, "c is visible");
|
1673
|
-
t.eq(d.visibility, true, "d is visible");
|
1674
|
-
|
1675
|
-
// test that map can have an invisible base layer
|
1676
|
-
b.setVisibility(false);
|
1677
|
-
map.setLayerIndex(b, 0);
|
1678
|
-
t.eq(b.visibility, false, "changing layer order doesn't change visibility");
|
1679
|
-
|
1680
|
-
|
1681
|
-
map.destroy();
|
1682
|
-
|
1683
|
-
// make sure setVisibility is called when adding a single layer to the map
|
1684
|
-
map = new OpenLayers.Map({
|
1685
|
-
div: "map", allOverlays: true
|
1686
|
-
});
|
1687
|
-
var count = 0;
|
1688
|
-
var layer = new OpenLayers.Layer(null, {
|
1689
|
-
visibility: true,
|
1690
|
-
maxExtent: new OpenLayers.Bounds(-180, -90, 180, 90),
|
1691
|
-
setVisibility: function() {
|
1692
|
-
++count;
|
1693
|
-
OpenLayers.Layer.prototype.setVisibility.apply(this, arguments);
|
1694
|
-
}
|
1695
|
-
});
|
1696
|
-
map.addLayer(layer);
|
1697
|
-
map.zoomToMaxExtent();
|
1698
|
-
|
1699
|
-
t.eq(count, 1, "setVisibility called when visibility is true in layer config");
|
1700
|
-
t.eq(layer.div.style.display, "", "layer is visible.");
|
1701
|
-
|
1702
|
-
map.destroy();
|
1703
|
-
|
1704
|
-
}
|
1705
|
-
|
1706
|
-
function test_panTo(t) {
|
1707
|
-
|
1708
|
-
t.plan(6);
|
1709
|
-
|
1710
|
-
var log = [];
|
1711
|
-
var map = new OpenLayers.Map("map", {
|
1712
|
-
eventListeners: {
|
1713
|
-
"movestart": function() {log.push("movestart");},
|
1714
|
-
"move": function() {log.push("move");},
|
1715
|
-
"moveend": function() {log.push("moveend");}
|
1716
|
-
}
|
1717
|
-
});
|
1718
|
-
map.addLayer(
|
1719
|
-
new OpenLayers.Layer(null, {isBaseLayer: true})
|
1720
|
-
);
|
1721
|
-
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
|
1722
|
-
t.eq(log[log.length-1], "moveend", "moveend fired when map center is set");
|
1723
|
-
log = [];
|
1724
|
-
|
1725
|
-
map.panTo(new OpenLayers.LonLat(1, 0));
|
1726
|
-
t.eq(map.panTween.playing, true, "the map pan tween is playing before destroy");
|
1727
|
-
|
1728
|
-
t.delay_call(2, function() {
|
1729
|
-
t.eq(log[0], "movestart", "panTo starts with movestart event");
|
1730
|
-
t.eq(log[1], "move", "move events fired while panning");
|
1731
|
-
t.eq(log[log.length-1], "moveend", "panTo finishes with moveend event");
|
1732
|
-
map.destroy();
|
1733
|
-
t.ok(!map.panTween || !map.panTween.playing, "the map pan tween is not playing after destroy");
|
1734
|
-
});
|
1735
|
-
}
|
1736
|
-
|
1737
|
-
function test_pan(t) {
|
1738
|
-
t.plan(4);
|
1739
|
-
|
1740
|
-
var map = new OpenLayers.Map("map");
|
1741
|
-
map.addLayer(
|
1742
|
-
new OpenLayers.Layer(null, {isBaseLayer: true})
|
1743
|
-
);
|
1744
|
-
map.setCenter(new OpenLayers.LonLat(0, 0), 5);
|
1745
|
-
var log = [];
|
1746
|
-
map.events.on({
|
1747
|
-
"movestart": function() {log.push("movestart");},
|
1748
|
-
"move": function() {log.push("move");},
|
1749
|
-
"moveend": function() {log.push("moveend");}
|
1750
|
-
});
|
1751
|
-
|
1752
|
-
// simulate the drag sequence of the DragPan control;
|
1753
|
-
map.pan(5,5, {animate: false, dragging: true});
|
1754
|
-
map.pan(1,1, {animate: false, dragging: false});
|
1755
|
-
|
1756
|
-
t.eq(log[0], "movestart", "pan sequence starts with movestart");
|
1757
|
-
t.eq(log[1], "move", "followed by move,");
|
1758
|
-
t.eq(log[log.length-2], "move", "move again before we stop panning,");
|
1759
|
-
t.eq(log[log.length-1], "moveend", "and moveend when we're done.");
|
1760
|
-
}
|
1761
|
-
|
1762
|
-
function test_pan_no_anim_event_sequence(t) {
|
1763
|
-
t.plan(4);
|
1764
|
-
|
1765
|
-
var log = [];
|
1766
|
-
var map = new OpenLayers.Map("map");
|
1767
|
-
map.addLayer(
|
1768
|
-
new OpenLayers.Layer(null, {isBaseLayer: true})
|
1769
|
-
);
|
1770
|
-
map.setCenter(new OpenLayers.LonLat(0, 0), 5);
|
1771
|
-
map.events.on({
|
1772
|
-
"movestart": function() {
|
1773
|
-
log.push("movestart");
|
1774
|
-
},
|
1775
|
-
"move": function() {
|
1776
|
-
log.push("move");
|
1777
|
-
},
|
1778
|
-
"moveend": function() {
|
1779
|
-
log.push("moveend");
|
1780
|
-
}
|
1781
|
-
});
|
1782
|
-
|
1783
|
-
map.pan(5,5, {animate: false});
|
1784
|
-
t.eq(log.length, 3, "no more than 3 events happen.");
|
1785
|
-
t.eq(log[0], "movestart", "pan sequence starts with movestart");
|
1786
|
-
t.eq(log[1], "move", "followed by move,");
|
1787
|
-
t.eq(log[2], "moveend", "and moveend when we're done.");
|
1788
|
-
|
1789
|
-
map.destroy();
|
1790
|
-
}
|
1791
|
-
|
1792
|
-
// test if we can call updateSize before document.body is ready. updateOk
|
1793
|
-
// is tested in the test_updateSize function below
|
1794
|
-
var earlyMap = new OpenLayers.Map();
|
1795
|
-
var updateOk;
|
1796
|
-
try {
|
1797
|
-
earlyMap.updateSize();
|
1798
|
-
updateOk = true;
|
1799
|
-
} catch(e) {}
|
1800
|
-
earlyMap.destroy();
|
1801
|
-
function test_updateSize(t) {
|
1802
|
-
t.plan(3);
|
1803
|
-
|
1804
|
-
// checking updateSize from outside this test function (see above)
|
1805
|
-
t.ok(updateOk, "updateSize works before document.body is ready");
|
1806
|
-
|
1807
|
-
var map, moveToCnt, size;
|
1808
|
-
|
1809
|
-
map = new OpenLayers.Map({div: "map"});
|
1810
|
-
map.addLayer(new OpenLayers.Layer("layer", {isBaseLayer: true}));
|
1811
|
-
|
1812
|
-
map.moveTo = function() {
|
1813
|
-
moveToCnt++;
|
1814
|
-
OpenLayers.Map.prototype.moveTo.apply(this, arguments);
|
1815
|
-
};
|
1816
|
-
|
1817
|
-
map.getCurrentSize = function() {
|
1818
|
-
return size;
|
1819
|
-
};
|
1820
|
-
|
1821
|
-
// map has no center
|
1822
|
-
// 1 test
|
1823
|
-
moveToCnt = 0;
|
1824
|
-
size = new OpenLayers.Size(650, 350);
|
1825
|
-
map.updateSize();
|
1826
|
-
t.eq(moveToCnt, 0, "updateSize doesn't move the map if it doesn't have a center");
|
1827
|
-
|
1828
|
-
// map has a center
|
1829
|
-
// 1 test
|
1830
|
-
map.zoomToMaxExtent();
|
1831
|
-
moveToCnt = 0;
|
1832
|
-
size = new OpenLayers.Size(600, 300);
|
1833
|
-
map.updateSize();
|
1834
|
-
t.eq(moveToCnt, 1, "updateSize move the map if it has a center");
|
1835
|
-
|
1836
|
-
map.destroy();
|
1837
|
-
}
|
1838
|
-
|
1839
|
-
function test_invisible_map(t) {
|
1840
|
-
/**
|
1841
|
-
* This test confirms that initializing a map using an element that is
|
1842
|
-
* not currently displayed doesn't cause any trouble.
|
1843
|
-
*/
|
1844
|
-
t.plan(1);
|
1845
|
-
|
1846
|
-
var map, msg = "initializing a map on an undisplayed element";
|
1847
|
-
try {
|
1848
|
-
map = new OpenLayers.Map("invisimap");
|
1849
|
-
} catch (err) {
|
1850
|
-
msg += ": " + err;
|
1851
|
-
}
|
1852
|
-
t.ok(!!map, msg);
|
1853
|
-
|
1854
|
-
if (map) {
|
1855
|
-
map.destroy();
|
1856
|
-
}
|
1857
|
-
}
|
1858
|
-
|
1859
|
-
function test_layers_option(t) {
|
1860
|
-
|
1861
|
-
t.plan(3);
|
1862
|
-
|
1863
|
-
var map = new OpenLayers.Map({
|
1864
|
-
div: "map",
|
1865
|
-
layers: [
|
1866
|
-
new OpenLayers.Layer()
|
1867
|
-
]
|
1868
|
-
});
|
1869
|
-
|
1870
|
-
t.eq(map.layers.length, 1, "single layer from options added");
|
1871
|
-
|
1872
|
-
map.destroy();
|
1873
|
-
|
1874
|
-
map = new OpenLayers.Map({
|
1875
|
-
div: "map",
|
1876
|
-
layers: [
|
1877
|
-
new OpenLayers.Layer(null, {isBaseLayer: true}),
|
1878
|
-
new OpenLayers.Layer(null, {isBaseLayer: false})
|
1879
|
-
]
|
1880
|
-
});
|
1881
|
-
|
1882
|
-
t.eq(map.layers.length, 2, "multiple layers added from options");
|
1883
|
-
t.ok(map.baseLayer, "map has a base layer");
|
1884
|
-
|
1885
|
-
map.destroy();
|
1886
|
-
|
1887
|
-
}
|
1888
|
-
|
1889
|
-
function test_center_option(t) {
|
1890
|
-
t.plan(7);
|
1891
|
-
|
1892
|
-
var map, msg;
|
1893
|
-
|
1894
|
-
|
1895
|
-
// try setting center without layers, this has no effect
|
1896
|
-
var failed = false;
|
1897
|
-
try {
|
1898
|
-
map = new OpenLayers.Map({
|
1899
|
-
div: "map",
|
1900
|
-
center: new OpenLayers.LonLat(1, 2)
|
1901
|
-
});
|
1902
|
-
msg = "center option without layers has no effect";
|
1903
|
-
} catch (err) {
|
1904
|
-
failed = true;
|
1905
|
-
msg = "center option without layers throws error";
|
1906
|
-
}
|
1907
|
-
t.ok(!failed, msg);
|
1908
|
-
|
1909
|
-
if (map) {
|
1910
|
-
map.destroy();
|
1911
|
-
}
|
1912
|
-
|
1913
|
-
var log = [];
|
1914
|
-
var meth = OpenLayers.Layer.prototype.moveTo;
|
1915
|
-
OpenLayers.Layer.prototype.moveTo = function() {
|
1916
|
-
log.push(arguments);
|
1917
|
-
meth.apply(this, arguments);
|
1918
|
-
};
|
1919
|
-
|
1920
|
-
// set center without zoom
|
1921
|
-
var center = new OpenLayers.LonLat(1, 2);
|
1922
|
-
map = new OpenLayers.Map({
|
1923
|
-
div: "map",
|
1924
|
-
layers: [new OpenLayers.Layer(null, {isBaseLayer: true})],
|
1925
|
-
center: center
|
1926
|
-
});
|
1927
|
-
|
1928
|
-
t.ok(center.equals(map.getCenter()), "map center set without zoom");
|
1929
|
-
t.eq(log.length, 1, "moveTo called once");
|
1930
|
-
|
1931
|
-
map.destroy();
|
1932
|
-
OpenLayers.Layer.prototype.moveTo = meth;
|
1933
|
-
|
1934
|
-
// set center and zoom
|
1935
|
-
var zoom = 3;
|
1936
|
-
map = new OpenLayers.Map({
|
1937
|
-
div: "map",
|
1938
|
-
layers: [new OpenLayers.Layer(null, {isBaseLayer: true})],
|
1939
|
-
center: center,
|
1940
|
-
zoom: zoom
|
1941
|
-
});
|
1942
|
-
|
1943
|
-
t.ok(center.equals(map.getCenter()), "map center set with center and zoom");
|
1944
|
-
t.eq(zoom, map.getZoom(), "map zoom set with center and zoom");
|
1945
|
-
|
1946
|
-
map.destroy();
|
1947
|
-
|
1948
|
-
// set center and zoom with all overlays
|
1949
|
-
map = new OpenLayers.Map({
|
1950
|
-
div: "map",
|
1951
|
-
allOverlays: true,
|
1952
|
-
layers: [new OpenLayers.Layer()],
|
1953
|
-
center: center,
|
1954
|
-
zoom: zoom
|
1955
|
-
});
|
1956
|
-
|
1957
|
-
t.ok(center.equals(map.getCenter()), "map center set with all overlays");
|
1958
|
-
t.eq(zoom, map.getZoom(), "map zoom set with all overlays");
|
1959
|
-
|
1960
|
-
map.destroy();
|
1961
|
-
|
1962
|
-
}
|
1963
|
-
function test_pixel_lonlat(t) {
|
1964
|
-
|
1965
|
-
t.plan(4);
|
1966
|
-
|
1967
|
-
var map = new OpenLayers.Map({
|
1968
|
-
div: "map",
|
1969
|
-
layers: [
|
1970
|
-
new OpenLayers.Layer("name", {isBaseLayer:true})
|
1971
|
-
]
|
1972
|
-
});
|
1973
|
-
map.zoomToMaxExtent();
|
1974
|
-
var px = map.getPixelFromLonLat(map.getLonLatFromPixel(new OpenLayers.Pixel(100, 100)));
|
1975
|
-
t.eq(px.x, 100, "x is the same in and ot");
|
1976
|
-
t.eq(px.y, 100, "y is the same in and out");
|
1977
|
-
var ll = map.getLonLatFromPixel(map.getPixelFromLonLat(new OpenLayers.LonLat(100, 100)));
|
1978
|
-
t.ok((ll.lon > (100 -map.getResolution()) && (ll.lon < (100 + map.getResolution()))), "lon is the same in and ot");
|
1979
|
-
t.ok((ll.lat > (100 -map.getResolution()) && (ll.lat < (100 + map.getResolution()))), "lat is the same in and ot");
|
1980
|
-
map.destroy();
|
1981
|
-
}
|
1982
|
-
|
1983
|
-
function test_moveByPx(t) {
|
1984
|
-
t.plan(14);
|
1985
|
-
|
1986
|
-
var moved;
|
1987
|
-
var Layer = OpenLayers.Class(OpenLayers.Layer, {
|
1988
|
-
moveByPx: function(dx, dy) {
|
1989
|
-
moved[this.name] = true;
|
1990
|
-
}
|
1991
|
-
});
|
1992
|
-
|
1993
|
-
var map = new OpenLayers.Map({
|
1994
|
-
div: 'map',
|
1995
|
-
maxExtent: new OpenLayers.Bounds(-50, -50, 50, 50),
|
1996
|
-
restrictedExtent: new OpenLayers.Bounds(-10, -10, 10, 10),
|
1997
|
-
layers: [
|
1998
|
-
new Layer('base',
|
1999
|
-
{isBaseLayer: true}),
|
2000
|
-
new Layer('outofrange',
|
2001
|
-
{isBaseLayer: false, minResolution:2})
|
2002
|
-
]
|
2003
|
-
});
|
2004
|
-
var log = [];
|
2005
|
-
map.applyTransform = function(x, y, scale) {
|
2006
|
-
log.push([x || map.layerContainerOriginPx.x, y || map.layerContainerOriginPx.y, scale]);
|
2007
|
-
OpenLayers.Map.prototype.applyTransform.apply(this, arguments);
|
2008
|
-
};
|
2009
|
-
|
2010
|
-
moved = {};
|
2011
|
-
map.zoomToExtent(new OpenLayers.Bounds(-1, -1, 1, 1));
|
2012
|
-
|
2013
|
-
// check initial state
|
2014
|
-
t.eq(log[0][0], 0,
|
2015
|
-
'[initial state] layer container left correct');
|
2016
|
-
t.eq(log[0][1], 0,
|
2017
|
-
'[initial state] layer container top correct');
|
2018
|
-
t.eq(moved['base'], undefined,
|
2019
|
-
'[initial state] base layer not moved');
|
2020
|
-
t.eq(moved['outofrange'], undefined,
|
2021
|
-
'[initial state] out-of-range layer not moved');
|
2022
|
-
|
2023
|
-
// move to a valid position
|
2024
|
-
moved = {};
|
2025
|
-
map.moveByPx(-455, 455);
|
2026
|
-
t.eq(log[1][0], 455,
|
2027
|
-
'[valid position] layer container left correct');
|
2028
|
-
t.eq(log[1][1], -455,
|
2029
|
-
'[valid position] layer container top correct');
|
2030
|
-
t.eq(moved['base'], true,
|
2031
|
-
'[valid position] base layer moved');
|
2032
|
-
t.eq(moved['outofrange'], undefined,
|
2033
|
-
'[valid position] out-of-range layer not moved');
|
2034
|
-
|
2035
|
-
// move outside the max extent
|
2036
|
-
moved = {};
|
2037
|
-
map.moveByPx(-4500, 4500);
|
2038
|
-
t.eq(log.length, 2,
|
2039
|
-
'[outside max extent] layer container offset unchanged');
|
2040
|
-
t.eq(moved['base'], undefined,
|
2041
|
-
'[outside max extent] base layer not moved');
|
2042
|
-
t.eq(moved['outofrange'], undefined,
|
2043
|
-
'[outside max extent] out-of-range layer not moved');
|
2044
|
-
|
2045
|
-
// move outside the restricted extent
|
2046
|
-
moved = {};
|
2047
|
-
map.moveByPx(-500, 500);
|
2048
|
-
t.eq(log.length, 2,
|
2049
|
-
'[outside restricted extent] layer container offset unchanged');
|
2050
|
-
t.eq(moved['base'], undefined,
|
2051
|
-
'[outside restricted extent] base layer not moved');
|
2052
|
-
t.eq(moved['outofrange'], undefined,
|
2053
|
-
'[outside restricted extent] out-of-range layer not moved');
|
2054
|
-
|
2055
|
-
|
2056
|
-
map.destroy();
|
2057
|
-
}
|
2058
|
-
|
2059
|
-
// test for http://trac.osgeo.org/openlayers/ticket/3388
|
2060
|
-
function test_moveByPx_restrictedExtent(t) {
|
2061
|
-
t.plan(2);
|
2062
|
-
|
2063
|
-
var map = new OpenLayers.Map({
|
2064
|
-
div: 'map',
|
2065
|
-
restrictedExtent: new OpenLayers.Bounds(-22.5,-11.25,22.5,11.25),
|
2066
|
-
layers: [
|
2067
|
-
new OpenLayers.Layer('name', {isBaseLayer: true})
|
2068
|
-
]
|
2069
|
-
});
|
2070
|
-
|
2071
|
-
map.zoomToExtent(new OpenLayers.Bounds(-11.25, 0, 11.25, 11.25));
|
2072
|
-
|
2073
|
-
var log = [];
|
2074
|
-
map.applyTransform = function(x, y, scale) {
|
2075
|
-
log.push([x || map.layerContainerOriginPx.x, y || map.layerContainerOriginPx.y, scale]);
|
2076
|
-
OpenLayers.Map.prototype.applyTransform.apply(this, arguments);
|
2077
|
-
};
|
2078
|
-
|
2079
|
-
map.moveByPx(-10, -10);
|
2080
|
-
t.eq(log[0][0], 10, 'layer container left correct');
|
2081
|
-
t.eq(log[0][1], 0, 'layer container top correct');
|
2082
|
-
}
|
2083
|
-
|
2084
|
-
function test_applyTransform(t) {
|
2085
|
-
t.plan(10);
|
2086
|
-
var origStylePrefix = OpenLayers.Util.vendorPrefix.style;
|
2087
|
-
OpenLayers.Util.vendorPrefix.style =
|
2088
|
-
OpenLayers.Util.vendorPrefix.css =
|
2089
|
-
function(key) { return 'transform'; };
|
2090
|
-
|
2091
|
-
var map = new OpenLayers.Map('map');
|
2092
|
-
map.layerContainerDiv = {style: {}};
|
2093
|
-
delete map.applyTransform.transform;
|
2094
|
-
delete map.applyTransform.template;
|
2095
|
-
var origGetStyle = OpenLayers.Element.getStyle;
|
2096
|
-
OpenLayers.Element.getStyle = function() { return 'foo'; }
|
2097
|
-
map.applyTransform(1, 2, 3);
|
2098
|
-
OpenLayers.Element.getStyle = origGetStyle;
|
2099
|
-
t.eq(map.layerContainerDiv.style.transform, 'translate3d(1px,2px,0) scale3d(3,3,1)', '3d transform and scale used when available');
|
2100
|
-
|
2101
|
-
delete map.applyTransform.transform;
|
2102
|
-
delete map.applyTransform.template;
|
2103
|
-
var origIndexOf = String.prototype.indexOf;
|
2104
|
-
String.prototype.indexOf = function() { return -1; };
|
2105
|
-
map.layerContainerOriginPx = {x: -3, y: 2};
|
2106
|
-
map.applyTransform(1, 2, 3);
|
2107
|
-
String.prototype.indexOf = origIndexOf;
|
2108
|
-
t.eq(map.layerContainerDiv.style.transform, 'translate(4px,0px) scale(3,3)', '2d translate and scale correct');
|
2109
|
-
t.eq(map.layerContainerDiv.style.left, '-3px', 'container origin x set as style.left');
|
2110
|
-
t.eq(map.layerContainerDiv.style.top, '2px', 'container origin y set as style.top');
|
2111
|
-
map.applyTransform(1, 2);
|
2112
|
-
t.ok(!map.layerContainerDiv.style.transform, 'no transform set when no transform needed');
|
2113
|
-
t.eq(map.layerContainerDiv.style.left, '1px', 'style.left correct when no transform needed');
|
2114
|
-
t.eq(map.layerContainerDiv.style.top, '2px', 'style.top correct when no transform needed');
|
2115
|
-
|
2116
|
-
map.applyTransform.transform = null;
|
2117
|
-
map.applyTransform(4, 5, 6);
|
2118
|
-
t.eq(map.layerContainerDiv.style.left, '4px', 'style.left set when transform not available')
|
2119
|
-
t.eq(map.layerContainerDiv.style.top, '5px', 'style.top set when transform not available')
|
2120
|
-
t.ok(!map.layerContainerDiv.style.transform, 'no transform set, because not supported');
|
2121
|
-
|
2122
|
-
map.destroy();
|
2123
|
-
delete map.applyTransform.transform;
|
2124
|
-
delete map.applyTransform.template;
|
2125
|
-
OpenLayers.Util.vendorPrefix.style = origStylePrefix;
|
2126
|
-
}
|
2127
|
-
|
2128
|
-
function test_options(t) {
|
2129
|
-
t.plan(2);
|
2130
|
-
|
2131
|
-
var map = new OpenLayers.Map('map');
|
2132
|
-
t.eq(map.options, {}, 'map.options is empty with no options');
|
2133
|
-
map.destroy();
|
2134
|
-
|
2135
|
-
var options = {
|
2136
|
-
resolutions: [1,2,3,5],
|
2137
|
-
projection: "EPSG:4326",
|
2138
|
-
units: 'm'
|
2139
|
-
};
|
2140
|
-
var map = new OpenLayers.Map('map', options);
|
2141
|
-
t.eq(map.options, options, 'map.options is a copy of the constructor option');
|
2142
|
-
map.destroy();
|
2143
|
-
}
|
2144
|
-
|
2145
|
-
function test_adjustZoom(t) {
|
2146
|
-
t.plan(5);
|
2147
|
-
var map = new OpenLayers.Map({
|
2148
|
-
div: 'map',
|
2149
|
-
layers: [
|
2150
|
-
new OpenLayers.Layer('name', {
|
2151
|
-
isBaseLayer: true,
|
2152
|
-
wrapDateLine: true
|
2153
|
-
})
|
2154
|
-
]
|
2155
|
-
});
|
2156
|
-
map.zoomToMaxExtent();
|
2157
|
-
t.ok(map.getResolution() <= map.getMaxExtent().getWidth() / map.getSize().w, "wrapDateLine map not wider than world");
|
2158
|
-
|
2159
|
-
t.eq(map.adjustZoom(9), 9, "valid zoom maintained");
|
2160
|
-
t.eq(map.adjustZoom(1), 2, "zoom adjusted to not exceed world width");
|
2161
|
-
|
2162
|
-
map.fractionalZoom = true;
|
2163
|
-
t.eq(map.adjustZoom(1).toPrecision(3), "1.29", "zoom adjusted to match world width");
|
2164
|
-
|
2165
|
-
map.moveTo([16, 48], 0);
|
2166
|
-
t.eq(map.getCenter().toShortString(), "0, 0", "no panning when moveTo is called with invalid zoom");
|
2167
|
-
}
|
2168
|
-
|
2169
|
-
function test_correctCenterAtZoomLevel0(t) {
|
2170
|
-
t.plan(1);
|
2171
|
-
var map = new OpenLayers.Map({
|
2172
|
-
div: 'map',
|
2173
|
-
maxExtent: new OpenLayers.Bounds(-30, 48.00, 3.50, 64.00),
|
2174
|
-
restrictedExtent: new OpenLayers.Bounds(-30, 48.00, 3.50, 64.00),
|
2175
|
-
projection: "EPSG:4258",
|
2176
|
-
units: "degrees",
|
2177
|
-
layers: [
|
2178
|
-
new OpenLayers.Layer('name', {
|
2179
|
-
isBaseLayer: true
|
2180
|
-
})
|
2181
|
-
]
|
2182
|
-
});
|
2183
|
-
map.setCenter(new OpenLayers.LonLat(-1.3, 50.8), 4);
|
2184
|
-
map.moveTo(null, 0);
|
2185
|
-
var center = map.getCenter();
|
2186
|
-
t.ok(center.equals(new OpenLayers.LonLat(-13.25, 56)), "Center is correct and not equal to maxExtent's center");
|
2187
|
-
}
|
2188
|
-
|
2189
|
-
function test_getZoomTargetCenter(t) {
|
2190
|
-
t.plan(1);
|
2191
|
-
var map = new OpenLayers.Map({
|
2192
|
-
div: 'map',
|
2193
|
-
layers: [
|
2194
|
-
new OpenLayers.Layer('', {isBaseLayer: true})
|
2195
|
-
],
|
2196
|
-
center: [0, 0],
|
2197
|
-
zoom: 1
|
2198
|
-
});
|
2199
|
-
|
2200
|
-
var ll = map.getZoomTargetCenter({x: 44, y: 22}, map.getMaxResolution());
|
2201
|
-
|
2202
|
-
t.eq(ll.toShortString(), "180, -90", "getZoomTargetCenter works.");
|
2203
|
-
|
2204
|
-
map.destroy();
|
2205
|
-
}
|
2206
|
-
|
2207
|
-
function test_autoUpdateSize(t) {
|
2208
|
-
t.plan(1);
|
2209
|
-
OpenLayers.Event.unloadCache();
|
2210
|
-
var resizeListener = false;
|
2211
|
-
var map = new OpenLayers.Map({
|
2212
|
-
autoUpdateSize: false,
|
2213
|
-
div: 'map',
|
2214
|
-
layers: [
|
2215
|
-
new OpenLayers.Layer('name', {
|
2216
|
-
isBaseLayer: true,
|
2217
|
-
wrapDateLine: true
|
2218
|
-
})
|
2219
|
-
]
|
2220
|
-
});
|
2221
|
-
map.setCenter(new OpenLayers.LonLat(-1.3, 50.8), 4);
|
2222
|
-
for (var key in OpenLayers.Event.observers) {
|
2223
|
-
var obj = OpenLayers.Event.observers[key];
|
2224
|
-
for (var i=0, ii=obj.length; i<ii; ++i) {
|
2225
|
-
var listener = obj[i];
|
2226
|
-
if (listener.name === 'resize' && listener.element === window) {
|
2227
|
-
resizeListener = true;
|
2228
|
-
}
|
2229
|
-
}
|
2230
|
-
}
|
2231
|
-
t.eq(resizeListener, map.autoUpdateSize, "resize listener not registered when autoUpdateSize is false");
|
2232
|
-
map.destroy();
|
2233
|
-
}
|
2234
|
-
|
2235
|
-
function test_tileManager(t) {
|
2236
|
-
t.plan(3);
|
2237
|
-
var map = new OpenLayers.Map('map');
|
2238
|
-
t.ok(map.tileManager instanceof OpenLayers.TileManager, "Default tileManager created");
|
2239
|
-
map.destroy();
|
2240
|
-
map = new OpenLayers.Map('map', {tileManager: null});
|
2241
|
-
t.ok(map.tileManager === null, "No tileManager created");
|
2242
|
-
map.destroy();
|
2243
|
-
var options = {cacheSize: 512};
|
2244
|
-
map = new OpenLayers.Map('map', {tileManager: options});
|
2245
|
-
t.eq(map.tileManager.cacheSize, 512, "cacheSize taken from options");
|
2246
|
-
map.destroy();
|
2247
|
-
}
|
2248
|
-
|
2249
|
-
</script>
|
2250
|
-
</head>
|
2251
|
-
<body>
|
2252
|
-
<div id="map" style="width: 600px; height: 300px;"/>
|
2253
|
-
<div style="display: none;"><div id="invisimap"></div></div>
|
2254
|
-
</body>
|
2255
|
-
</html>
|