diff options
author | Chris Schlaeger <chris@linux.com> | 2014-08-12 21:56:44 +0200 |
---|---|---|
committer | Chris Schlaeger <chris@linux.com> | 2014-08-12 21:56:44 +0200 |
commit | ea346a785dc1b3f7c156f6fc33da634e1f1a627b (patch) | |
tree | af67530553d20b6e82ad60fd79593e9c4abf5565 /misc/openlayers/examples/wfs-reprojection.js | |
parent | 59741cd535c47f25971bf8c32b25da25ceadc6d5 (diff) | |
download | postrunner-ea346a785dc1b3f7c156f6fc33da634e1f1a627b.zip |
Adding jquery, flot and openlayers to be included with the GEM.v0.0.4
Diffstat (limited to 'misc/openlayers/examples/wfs-reprojection.js')
-rw-r--r-- | misc/openlayers/examples/wfs-reprojection.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/misc/openlayers/examples/wfs-reprojection.js b/misc/openlayers/examples/wfs-reprojection.js new file mode 100644 index 0000000..64a0736 --- /dev/null +++ b/misc/openlayers/examples/wfs-reprojection.js @@ -0,0 +1,60 @@ +var map, layer, styleMap; +OpenLayers.ProxyHost = "proxy.cgi?url="; + +function init() { + + var geographic = new OpenLayers.Projection("EPSG:4326"); + var mercator = new OpenLayers.Projection("EPSG:900913"); + + map = new OpenLayers.Map('map', { + projection: mercator + }); + + var g = new OpenLayers.Layer.Google("Google Layer", { + sphericalMercator: true + }); + map.addLayers([g]); + + // prepare to style the data + styleMap = new OpenLayers.StyleMap({ + strokeColor: "black", + strokeWidth: 2, + strokeOpacity: 0.5, + fillOpacity: 0.2 + }); + // create a color table for state FIPS code + var colors = ["red", "orange", "yellow", "green", "blue", "purple"]; + var code, fips = {}; + for(var i=1; i<=66; ++i) { + code = "0" + i; + code = code.substring(code.length - 2); + fips[code] = {fillColor: colors[i % colors.length]}; + } + // add unique value rules with your color lookup + styleMap.addUniqueValueRules("default", "STATE_FIPS", fips); + + // This server supports server-side reprojection, but we're using WFS 1.0 + // here (which doesn't support reprojection) to illustrate client-side + // reprojection. + var wfs = new OpenLayers.Layer.Vector("States", { + strategies: [new OpenLayers.Strategy.BBOX()], + protocol: new OpenLayers.Protocol.WFS({ + version: "1.0.0", + srsName: "EPSG:4326", // this is the default + url: "http://demo.opengeo.org/geoserver/wfs", + featureType: "states", + featureNS: "http://www.openplans.org/topp" + }), + projection: geographic, // specified because it is different than the map + styleMap: styleMap + }); + map.addLayer(wfs); + + // if you want to use Geographic coords, transform to ESPG:900913 + var ddBounds = new OpenLayers.Bounds( + -73.839111,40.287907,-68.214111,44.441624 + ); + map.zoomToExtent( + ddBounds.transform(geographic, mercator) + ); +} |