|
|
@@ -127,14 +127,20 @@ function OPEN_LAYERS_WPS() {
|
|
|
|
|
|
?>
|
|
|
<link rel="stylesheet" href="stuff/open-layers/theme/default/style.css" type="text/css">
|
|
|
- <link rel="stylesheet" href="stuff/open-layers/style.css" type="text/css">
|
|
|
+ <link rel="stylesheet" href="stuff/open-layers/style.css" type="text/css">
|
|
|
<style type="text/css">
|
|
|
- .olControlEditingToolbar .olControlModifyFeatureItemInactive {
|
|
|
- background-image: url(stuff/open-layers/theme/default/img/draw_point_off.png);
|
|
|
- }
|
|
|
- .olControlEditingToolbar .olControlModifyFeatureItemActive {
|
|
|
- background-image: url(stuff/open-layers/theme/default/img/draw_point_on.png);
|
|
|
- }
|
|
|
+ .olControlEditingToolbar .olControlModifyFeatureItemInactive {
|
|
|
+ background-image: url(stuff/open-layers/theme/default/img/draw_point_off.png);
|
|
|
+ }
|
|
|
+ .olControlEditingToolbar .olControlModifyFeatureItemActive {
|
|
|
+ background-image: url(stuff/open-layers/theme/default/img/draw_point_on.png);
|
|
|
+ }
|
|
|
+ .olControlRefresh {
|
|
|
+ background-image: url(stuff/open-layers/theme/default/img/save_features_off.png.png);
|
|
|
+ }
|
|
|
+ .olControlZoomToPoly {
|
|
|
+ background-image: url(stuff/open-layers/theme/default/img/ruler.png);
|
|
|
+ }
|
|
|
.olControlLayerSwitcher .layersDiv {
|
|
|
border-radius: 10px 0 0 10px;
|
|
|
opacity: 0.75;
|
|
|
@@ -193,7 +199,6 @@ function OPEN_LAYERS_WPS() {
|
|
|
var _capabilities;
|
|
|
var _process;
|
|
|
var _layer;
|
|
|
-
|
|
|
/*
|
|
|
initialize the plugin.
|
|
|
*/
|
|
|
@@ -265,31 +270,131 @@ function OPEN_LAYERS_WPS() {
|
|
|
|
|
|
var toolbar = new OpenLayers.Control.EditingToolbar(_layer);
|
|
|
toolbar.addControls([new OpenLayers.Control.ModifyFeature(_layer, {
|
|
|
- title: "Select feature"
|
|
|
+ title: "Wybierz",
|
|
|
+ deferDelete: true
|
|
|
})]);
|
|
|
-
|
|
|
+
|
|
|
var extent = new OpenLayers.Bounds(
|
|
|
2035059.4410645328, 7200979.560689885, 2113330.958028555, 7279251.0776539035
|
|
|
);
|
|
|
|
|
|
- var gphy = new OpenLayers.Layer.OSM("Mapa");
|
|
|
+ var gphy = new OpenLayers.Layer.OSM("Mapa", null, {
|
|
|
+ resolutions: [156543.03390625, 78271.516953125, 39135.7584765625,
|
|
|
+ 19567.87923828125, 9783.939619140625, 4891.9698095703125,
|
|
|
+ 2445.9849047851562, 1222.9924523925781, 611.4962261962891,
|
|
|
+ 305.74811309814453, 152.87405654907226, 76.43702827453613,
|
|
|
+ 38.218514137268066, 19.109257068634033, 9.554628534317017,
|
|
|
+ 4.777314267158508, 2.388657133579254, 1.194328566789627,
|
|
|
+ 0.5971642833948135, 0.25, 0.1, 0.05],
|
|
|
+ serverResolutions: [156543.03390625, 78271.516953125, 39135.7584765625,
|
|
|
+ 19567.87923828125, 9783.939619140625,
|
|
|
+ 4891.9698095703125, 2445.9849047851562,
|
|
|
+ 1222.9924523925781, 611.4962261962891,
|
|
|
+ 305.74811309814453, 152.87405654907226,
|
|
|
+ 76.43702827453613, 38.218514137268066,
|
|
|
+ 19.109257068634033, 9.554628534317017,
|
|
|
+ 4.777314267158508, 2.388657133579254,
|
|
|
+ 1.194328566789627, 0.5971642833948135],
|
|
|
+ transitionEffect: 'resize'
|
|
|
+ });
|
|
|
+
|
|
|
+ var selectFeature = new OpenLayers.Control.SelectFeature(_layer);
|
|
|
+
|
|
|
+ var dragFeature = new OpenLayers.Control.DragFeature(_layer);
|
|
|
+ dragFeature.handlers['drag'].stopDown = false;
|
|
|
+ dragFeature.handlers['drag'].stopUp = false;
|
|
|
+ dragFeature.handlers['drag'].stopClick = false;
|
|
|
+ dragFeature.handlers['feature'].stopDown = false;
|
|
|
+ dragFeature.handlers['feature'].stopUp = false;
|
|
|
+ dragFeature.handlers['feature'].stopClick = false;
|
|
|
+
|
|
|
+ var btnZoomToPoly = new OpenLayers.Control.Button({
|
|
|
+ displayClass: "olControlZoomToPoly", trigger:
|
|
|
+ function() {
|
|
|
+ var multiPolygon = OpenLayers.Geometry.fromWKT(
|
|
|
+ "MULTIPOLYGON(((2072016.74395199 7234076.79293037,2072016.74395199 7234115.01144451,2072131.3994944 7234115.01144451,2072131.3994944 7234076.79293037,2072016.74395199 7234076.79293037)))"
|
|
|
+ ).getBounds();
|
|
|
+ map.zoomToExtent(multiPolygon);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ toolbar.addControls([btnZoomToPoly]);
|
|
|
|
|
|
+
|
|
|
+ var btnRefresh = new OpenLayers.Control.Button({
|
|
|
+ displayClass: "olControlRefresh", trigger:
|
|
|
+ function() {
|
|
|
+ _layer.refresh({force:true});
|
|
|
+ }
|
|
|
+ });
|
|
|
+ toolbar.addControls([btnRefresh]);
|
|
|
+
|
|
|
var map = new OpenLayers.Map(_nodeMapId, {
|
|
|
projection: new OpenLayers.Projection("EPSG:900913"),
|
|
|
displayProjection: new OpenLayers.Projection("EPSG:4326"),
|
|
|
restrictedExtent: extent,
|
|
|
controls: [
|
|
|
toolbar,
|
|
|
+ dragFeature,
|
|
|
+ selectFeature,
|
|
|
+ // removeFeature,
|
|
|
new OpenLayers.Control.ZoomPanel(),
|
|
|
new OpenLayers.Control.PanPanel(),
|
|
|
new OpenLayers.Control.LayerSwitcher(),
|
|
|
new OpenLayers.Control.ScaleLine(),
|
|
|
new OpenLayers.Control.KeyboardDefaults()
|
|
|
- ],
|
|
|
- layers: [gphy,_layer]
|
|
|
+ // new OpenLayers.Control.MousePosition()
|
|
|
+ ], layers: [gphy,_layer]
|
|
|
});
|
|
|
+
|
|
|
map.zoomToMaxExtent();
|
|
|
- };
|
|
|
+
|
|
|
+ selectFeature.activate();
|
|
|
+ dragFeature.activate();
|
|
|
+
|
|
|
+ //var removeFeature = new OpenLayers.Control.RemoveFeature(_layer//,
|
|
|
+ // {onDone: function(feature) {console.log(feature)}
|
|
|
+ // }
|
|
|
+ // );
|
|
|
+
|
|
|
+
|
|
|
+ // _layer.removeFeatures(_layer.getSelectedFuture());
|
|
|
+ // removeFuture.activate();
|
|
|
+
|
|
|
+// var draw = new OpenLayers.Control.DrawFeature(
|
|
|
+// _layer, OpenLayers.Handler.Path
|
|
|
+// );
|
|
|
+// map.addControl(_draw);
|
|
|
+// draw.activate();
|
|
|
+
|
|
|
+// OpenLayers.Event.observe(document, "keydown", function(evt) {
|
|
|
+// var handled = false;
|
|
|
+// switch (evt.keyCode) {
|
|
|
+// case 90: // z
|
|
|
+// if (evt.metaKey || evt.ctrlKey) {
|
|
|
+// draw.undo();
|
|
|
+// handled = true;
|
|
|
+// }
|
|
|
+// break;
|
|
|
+// case 89: // y
|
|
|
+// if (evt.metaKey || evt.ctrlKey) {
|
|
|
+// draw.redo();
|
|
|
+// handled = true;
|
|
|
+// }
|
|
|
+// break;
|
|
|
+// case 27: // esc
|
|
|
+// draw.cancel();
|
|
|
+// handled = true;
|
|
|
+// break;
|
|
|
+// }
|
|
|
+// if (handled) {
|
|
|
+// OpenLayers.Event.stop(evt);
|
|
|
+// }
|
|
|
+// });
|
|
|
+
|
|
|
+ };
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
// using OpenLayers.Format.WPSCapabilities to read the capabilities
|
|
|
priv.getCapabilities = function() {
|