annotate client/src/store/map.js @ 2624:9dbaf69c7a66

Improve geoserver config to better calculate bounding boxes * Disable the use of estimated extents for the postgis storage configuration for geoserver, which is set via the gemma middleware. This way we are able to get better bounding boxes for many layers where the postgis function `ST_EstimatedExtent()` would be far off.
author Bernhard Reiter <bernhard@intevation.de>
date Wed, 13 Mar 2019 16:18:39 +0100
parents 85f9bf4a6eba
children 27933e66e848
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1362
ca33ad696594 remove the first empyty lines
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1361
diff changeset
1 /* This is Free Software under GNU Affero General Public License v >= 3.0
1019
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
2 * without warranty, see README.md and license for details.
1361
ea3a89a1813a remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1313
diff changeset
3 *
1019
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
4 * SPDX-License-Identifier: AGPL-3.0-or-later
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
5 * License-Filename: LICENSES/AGPL-3.0.txt
1361
ea3a89a1813a remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1313
diff changeset
6 *
1927
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
7 * Copyright (C) 2018, 2019 by via donau
1019
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
8 * – Österreichische Wasserstraßen-Gesellschaft mbH
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
9 * Software engineering by Intevation GmbH
1361
ea3a89a1813a remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1313
diff changeset
10 *
1019
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
11 * Author(s):
1927
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
12 * * Bernhard Reiter <bernhard.reiter@intevation.de>
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
13 * * Markus Kottländer <markus@intevation.de>
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
14 * * Thomas Junk <thomas.junk@intevation.de>
1019
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
15 */
ca628dce90dd Licensing information added
Thomas Junk <thomas.junk@intevation.de>
parents: 975
diff changeset
16
585
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
17 //import { HTTP } from "../lib/http";
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
18
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
19 import TileWMS from "ol/source/TileWMS.js";
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
20 import { Tile as TileLayer, Vector as VectorLayer } from "ol/layer.js";
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
21 import OSM from "ol/source/OSM";
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
22 import Draw from "ol/interaction/Draw.js";
2568
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
23 import { Icon, Stroke, Style, Fill, Text, Circle } from "ol/style.js";
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
24 import VectorSource from "ol/source/Vector.js";
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
25 import Point from "ol/geom/Point.js";
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
26 import { bbox as bboxStrategy } from "ol/loadingstrategy";
1272
bc55ffaeb639 cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents: 1247
diff changeset
27 import { HTTP } from "../lib/http";
1158
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
28 import { fromLonLat } from "ol/proj";
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
29 import { getLength, getArea } from "ol/sphere.js";
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
30 import { unByKey } from "ol/Observable";
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
31 import { getCenter } from "ol/extent";
2132
7a2eedc182f7 staging: zoomable stretches. zoomToExtent etd
Thomas Junk <thomas.junk@intevation.de>
parents: 2125
diff changeset
32 import { transformExtent } from "ol/proj.js";
7a2eedc182f7 staging: zoomable stretches. zoomToExtent etd
Thomas Junk <thomas.junk@intevation.de>
parents: 2125
diff changeset
33 import bbox from "@turf/bbox";
1524
a0a16577261a Translation: mark some strings for translation
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1438
diff changeset
34 import app from "../main";
585
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
35
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
36 const LAYERS = {
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
37 OPENSTREETMAP: "Open Streetmap",
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
38 INLANDECDIS: "Inland ECDIS chart Danube",
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
39 WATERWAYAREA: "Waterway Area",
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
40 STRETCHES: "Stretches",
2273
4eeaba4ef573 client: rename the Fairway Dimensions layers
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2263
diff changeset
41 FAIRWAYDIMENSIONSLOS1: "LOS 1 Fairway Dimensions",
4eeaba4ef573 client: rename the Fairway Dimensions layers
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2263
diff changeset
42 FAIRWAYDIMENSIONSLOS2: "LOS 2 Fairway Dimensions",
4eeaba4ef573 client: rename the Fairway Dimensions layers
Fadi Abbud <fadi.abbud@intevation.de>
parents: 2263
diff changeset
43 FAIRWAYDIMENSIONSLOS3: "LOS 3 Fairway Dimensions",
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
44 WATERWAYAXIS: "Waterway Axis",
2157
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
45 WATERWAYPROFILES: "Waterway Profiles",
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
46 BOTTLENECKS: "Bottlenecks",
2506
89c439721db2 client: new symbold for critical bottlenecks, normal bottlenecks are not marked anymore
Markus Kottlaender <markus@intevation.de>
parents: 2491
diff changeset
47 BOTTLENECKSTATUS: "Critical Bottlenecks",
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
48 BOTTLENECKISOLINE: "Bottleneck isolines",
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
49 DISTANCEMARKS: "Distance marks",
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
50 DISTANCEMARKSAXIS: "Distance marks, Axis",
2451
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
51 GAUGES: "Gauges",
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
52 DRAWTOOL: "Draw Tool",
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
53 CUTTOOL: "Cut Tool"
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
54 };
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
55
2186
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
56 const moveMap = ({ view, extent, zoom, preventZoomOut }) => {
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
57 const currentZoom = view.getZoom();
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
58 view.fit(extent, {
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
59 maxZoom: preventZoomOut ? Math.max(zoom, currentZoom) : zoom,
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
60 duration: 700
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
61 });
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
62 };
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
63
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
64 // initial state
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
65 const init = () => {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
66 return {
783
ab9604a46075 client: add move after clicking search result
Bernhard Reiter <bernhard@intevation.de>
parents: 782
diff changeset
67 openLayersMap: null,
2310
92b21df288e2 client: use user specific extent only on initial load
Markus Kottlaender <markus@intevation.de>
parents: 2309
diff changeset
68 initialLoad: true,
1313
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
69 extent: {
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
70 lat: 6155376,
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
71 lon: 1819178,
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
72 zoom: 11
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
73 },
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
74 identifyTool: null, // event binding (singleclick, dblclick)
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
75 identifiedFeatures: [], // map features identified by clicking on the map
1247
c14353e2cdb9 repositioning of buttons (issue225)
Markus Kottlaender <markus@intevation.de>
parents: 1237
diff changeset
76 currentMeasurement: null, // distance or area from line-/polygon-/cutTool
1237
74562dc29e10 refactored drawtool
Markus Kottlaender <markus@intevation.de>
parents: 1197
diff changeset
77 lineTool: null, // open layers interaction object (Draw)
74562dc29e10 refactored drawtool
Markus Kottlaender <markus@intevation.de>
parents: 1197
diff changeset
78 polygonTool: null, // open layers interaction object (Draw)
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
79 cutTool: null, // open layers interaction object (Draw)
1927
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
80 isolinesLegendImgDataURL: "",
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
81 layers: [
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
82 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
83 name: LAYERS.OPENSTREETMAP,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
84 data: new TileLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
85 source: new OSM()
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
86 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
87 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
88 showInLegend: true
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
89 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
90 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
91 name: LAYERS.INLANDECDIS,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
92 data: new TileLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
93 source: new TileWMS({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
94 preload: 1,
1648
53f49b109f0c client: improve ECDIS WMS map loading
Bernhard Reiter <bernhard@intevation.de>
parents: 1645
diff changeset
95 url: "https://service.d4d-portal.info/wms/",
1874
bad32adafef2 client: add real pdf generation with jspdf
Bernhard Reiter <bernhard@intevation.de>
parents: 1643
diff changeset
96 crossOrigin: "anonymous",
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
97 params: { LAYERS: "d4d", VERSION: "1.1.1", TILED: true }
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
98 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
99 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
100 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
101 showInLegend: true
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
102 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
103 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
104 name: LAYERS.WATERWAYAREA,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
105 data: new VectorLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
106 source: new VectorSource({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
107 strategy: bboxStrategy
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
108 }),
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
109 style: new Style({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
110 stroke: new Stroke({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
111 color: "rgba(0, 102, 0, 1)",
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
112 width: 2
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
113 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
114 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
115 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
116 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
117 showInLegend: true
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
118 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
119 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
120 name: LAYERS.STRETCHES,
1943
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
121 data: new VectorLayer({
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
122 source: new VectorSource({
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
123 strategy: bboxStrategy
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
124 }),
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
125 style: new Style({
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
126 stroke: new Stroke({
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
127 color: "rgba(250, 200, 0, .8)",
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
128 width: 2
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
129 }),
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
130 fill: new Fill({
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
131 color: "rgba(250, 200, 10, .3)"
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
132 })
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
133 })
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
134 }),
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
135 isVisible: false,
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
136 showInLegend: true
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
137 },
52a6e63d5dcc Added stretches layer, removed WW-Area named.
Sascha Wilde <wilde@intevation.de>
parents: 1927
diff changeset
138 {
2250
23c03e2eaf4f client: make different LOS visually distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2237
diff changeset
139 name: LAYERS.FAIRWAYDIMENSIONSLOS3,
1944
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
140 data: new VectorLayer({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
141 source: new VectorSource(),
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
142 style: function() {
1944
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
143 return [
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
144 new Style({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
145 stroke: new Stroke({
2250
23c03e2eaf4f client: make different LOS visually distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2237
diff changeset
146 color: "rgba(0, 0, 255, 1.0)",
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
147 width: 2
2313
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
148 }),
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
149 fill: new Fill({
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
150 color: "rgba(255, 255, 255, 0.4)"
1944
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
151 })
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
152 }),
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
153 new Style({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
154 text: new Text({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
155 font: 'bold 12px "Open Sans", "sans-serif"',
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
156 placement: "line",
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
157 fill: new Fill({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
158 color: "black"
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
159 }),
2250
23c03e2eaf4f client: make different LOS visually distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2237
diff changeset
160 text: "LOS: 3"
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
161 //, zIndex: 10
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
162 })
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
163 })
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
164 ];
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
165 }
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
166 }),
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
167 isVisible: true,
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
168 showInLegend: true
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
169 },
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
170 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
171 name: LAYERS.FAIRWAYDIMENSIONSLOS2,
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
172 data: new VectorLayer({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
173 source: new VectorSource(),
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
174 style: function() {
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
175 return [
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
176 new Style({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
177 stroke: new Stroke({
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
178 color: "rgba(0, 0, 255, 0.9)",
2309
77adbdd24d52 client: fix drawing perormance
Bernhard Reiter <bernhard@intevation.de>
parents: 2273
diff changeset
179 lineDash: [3, 6],
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
180 lineCap: "round",
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
181 width: 2
2313
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
182 }),
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
183 fill: new Fill({
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
184 color: "rgba(240, 230, 0, 0.1)"
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
185 })
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
186 }),
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
187 new Style({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
188 text: new Text({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
189 font: 'bold 12px "Open Sans", "sans-serif"',
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
190 placement: "line",
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
191 fill: new Fill({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
192 color: "black"
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
193 }),
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
194 text: "LOS: 2"
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
195 //, zIndex: 10
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
196 })
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
197 })
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
198 ];
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
199 }
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
200 }),
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
201 isVisible: false,
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
202 showInLegend: true
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
203 },
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
204 {
2250
23c03e2eaf4f client: make different LOS visually distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2237
diff changeset
205 name: LAYERS.FAIRWAYDIMENSIONSLOS1,
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
206 data: new VectorLayer({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
207 source: new VectorSource(),
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
208 style: function() {
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
209 return [
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
210 new Style({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
211 stroke: new Stroke({
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
212 color: "rgba(0, 0, 255, 0.8)",
2309
77adbdd24d52 client: fix drawing perormance
Bernhard Reiter <bernhard@intevation.de>
parents: 2273
diff changeset
213 lineDash: [2, 4],
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
214 lineCap: "round",
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
215 width: 2
2313
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
216 }),
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
217 fill: new Fill({
ba4dfff74d3f client: improve styles for LOS layers
Bernhard Reiter <bernhard@intevation.de>
parents: 2309
diff changeset
218 color: "rgba(240, 230, 0, 0.2)"
2125
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
219 })
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
220 }),
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
221 new Style({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
222 text: new Text({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
223 font: 'bold 12px "Open Sans", "sans-serif"',
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
224 placement: "line",
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
225 fill: new Fill({
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
226 color: "black"
ea5a0e771b71 Distinct fairway layers per LOS
Markus Kottlaender <markus@intevation.de>
parents: 2108
diff changeset
227 }),
2250
23c03e2eaf4f client: make different LOS visually distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2237
diff changeset
228 text: "LOS: 1"
1944
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
229 //, zIndex: 10
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
230 })
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
231 })
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
232 ];
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
233 }
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
234 }),
2263
7efa29d16e77 client: make different LOS layer visually more distinct
Bernhard Reiter <bernhard@intevation.de>
parents: 2250
diff changeset
235 isVisible: false,
1944
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
236 showInLegend: true
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
237 },
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
238 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
239 name: LAYERS.WATERWAYAXIS,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
240 data: new VectorLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
241 source: new VectorSource({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
242 strategy: bboxStrategy
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
243 }),
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
244 style: new Style({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
245 stroke: new Stroke({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
246 color: "rgba(0, 0, 255, .5)",
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
247 lineDash: [5, 5],
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
248 width: 2
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
249 })
2237
a78f19ff7cde LAYERS.WATERWAYAXIS: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2235
diff changeset
250 }),
a78f19ff7cde LAYERS.WATERWAYAXIS: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2235
diff changeset
251 // TODO: Set layer in layertree active/inactive depending on
a78f19ff7cde LAYERS.WATERWAYAXIS: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2235
diff changeset
252 // resolution.
a78f19ff7cde LAYERS.WATERWAYAXIS: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2235
diff changeset
253 maxResolution: 5,
a78f19ff7cde LAYERS.WATERWAYAXIS: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2235
diff changeset
254 minResolution: 0
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
255 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
256 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
257 showInLegend: true
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
258 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
259 {
2157
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
260 name: LAYERS.WATERWAYPROFILES,
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
261 data: new VectorLayer({
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
262 source: new VectorSource({
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
263 strategy: bboxStrategy
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
264 }),
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
265 style: new Style({
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
266 stroke: new Stroke({
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
267 color: "rgba(0, 0, 255, .5)",
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
268 lineDash: [5, 5],
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
269 width: 2
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
270 })
2235
39586a34979c LAYERS.WATERWAYPROFILES: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2224
diff changeset
271 }),
39586a34979c LAYERS.WATERWAYPROFILES: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2224
diff changeset
272 maxResolution: 2.5,
39586a34979c LAYERS.WATERWAYPROFILES: Set max- and minResolution. Modelled after d4d.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2224
diff changeset
273 minResolution: 0
2157
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
274 }),
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
275 isVisible: true,
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
276 showInLegend: true
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
277 },
8be0fbac2297 Added layer for waterway profiles.
Sascha Wilde <wilde@intevation.de>
parents: 2140
diff changeset
278 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
279 name: LAYERS.BOTTLENECKS,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
280 data: new VectorLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
281 source: new VectorSource({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
282 strategy: bboxStrategy
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
283 }),
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
284 style: function() {
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
285 return new Style({
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
286 stroke: new Stroke({
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
287 color: "rgba(230, 230, 10, .8)",
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
288 width: 4
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
289 }),
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
290 fill: new Fill({
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
291 color: "rgba(230, 230, 10, .3)"
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
292 })
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
293 });
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
294 }
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
295 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
296 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
297 showInLegend: true
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
298 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
299 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
300 name: LAYERS.BOTTLENECKISOLINE,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
301 data: new TileLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
302 source: new TileWMS({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
303 preload: 0,
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
304 projection: "EPSG:3857",
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
305 url: window.location.origin + "/api/internal/wms",
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
306 params: {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
307 LAYERS: "sounding_results_contour_lines_geoserver",
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
308 VERSION: "1.1.1",
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
309 TILED: true
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
310 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
311 tileLoadFunction: function(tile, src) {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
312 // console.log("calling for", tile, src);
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
313 HTTP.get(src, {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
314 headers: {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
315 "X-Gemma-Auth": localStorage.getItem("token")
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
316 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
317 responseType: "blob"
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
318 }).then(response => {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
319 tile.getImage().src = URL.createObjectURL(response.data);
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
320 });
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
321 } // TODO tile.setState(TileState.ERROR);
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
322 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
323 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
324 isVisible: false,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
325 showInLegend: true
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
326 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
327 {
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
328 name: LAYERS.BOTTLENECKSTATUS,
2506
89c439721db2 client: new symbold for critical bottlenecks, normal bottlenecks are not marked anymore
Markus Kottlaender <markus@intevation.de>
parents: 2491
diff changeset
329 forLegendStyle: { point: true, resolution: 16 },
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
330 data: new VectorLayer({
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
331 source: new VectorSource({
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
332 strategy: bboxStrategy
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
333 }),
2506
89c439721db2 client: new symbold for critical bottlenecks, normal bottlenecks are not marked anymore
Markus Kottlaender <markus@intevation.de>
parents: 2491
diff changeset
334 style: function(feature, resolution, isLegend) {
2525
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
335 let styles = [];
2506
89c439721db2 client: new symbold for critical bottlenecks, normal bottlenecks are not marked anymore
Markus Kottlaender <markus@intevation.de>
parents: 2491
diff changeset
336 if ((feature.get("fa_critical") && resolution > 15) || isLegend) {
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
337 let bnCenter = getCenter(feature.getGeometry().getExtent());
2525
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
338 styles.push(
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
339 new Style({
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
340 geometry: new Point(bnCenter),
2526
6498267096ae client: critical bottlenecks: use png instead of vectors for marker
Markus Kottlaender <markus@intevation.de>
parents: 2525
diff changeset
341 image: new Icon({
6498267096ae client: critical bottlenecks: use png instead of vectors for marker
Markus Kottlaender <markus@intevation.de>
parents: 2525
diff changeset
342 src: require("../assets/marker-bottleneck-critical.png"),
6498267096ae client: critical bottlenecks: use png instead of vectors for marker
Markus Kottlaender <markus@intevation.de>
parents: 2525
diff changeset
343 anchor: [0.5, 0.5],
6498267096ae client: critical bottlenecks: use png instead of vectors for marker
Markus Kottlaender <markus@intevation.de>
parents: 2525
diff changeset
344 scale: isLegend ? 0.5 : 1
2506
89c439721db2 client: new symbold for critical bottlenecks, normal bottlenecks are not marked anymore
Markus Kottlaender <markus@intevation.de>
parents: 2491
diff changeset
345 })
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
346 })
2525
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
347 );
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
348 }
2525
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
349 if (feature.get("fa_critical") && !isLegend) {
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
350 styles.push(
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
351 new Style({
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
352 stroke: new Stroke({
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
353 color: "rgba(255, 0, 0, 1)",
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
354 width: 4
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
355 })
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
356 })
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
357 );
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
358 }
8416cf343f17 client: critical bottlenecks: added red stroke color
Markus Kottlaender <markus@intevation.de>
parents: 2511
diff changeset
359 return styles;
2482
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
360 }
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
361 }),
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
362 isVisible: true,
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
363 showInLegend: true
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
364 },
ae1987c5beb3 client: display bottleneck status in separate layer
Markus Kottlaender <markus@intevation.de>
parents: 2446
diff changeset
365 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
366 name: LAYERS.DISTANCEMARKS,
1944
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
367 forLegendStyle: { point: true, resolution: 8 },
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
368 data: new VectorLayer({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
369 source: new VectorSource({
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
370 strategy: bboxStrategy
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
371 })
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
372 }),
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
373 isVisible: false,
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
374 showInLegend: true
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
375 },
ef1184654839 Order layers a bit less arbitrary.
Sascha Wilde <wilde@intevation.de>
parents: 1943
diff changeset
376 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
377 name: LAYERS.DISTANCEMARKSAXIS,
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
378 forLegendStyle: { point: true, resolution: 8 },
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
379 data: new VectorLayer({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
380 source: new VectorSource({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
381 strategy: bboxStrategy
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
382 }),
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
383 style: function(feature, resolution) {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
384 if (resolution < 10) {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
385 var s = new Style({
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
386 image: new Circle({
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
387 radius: 5,
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
388 fill: new Fill({ color: "rgba(255, 0, 0, 0.1)" }),
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
389 stroke: new Stroke({ color: "blue", width: 1 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
390 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
391 });
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
392 if (resolution < 6) {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
393 s.setText(
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
394 new Text({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
395 offsetY: 12,
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
396 font: '10px "Open Sans", "sans-serif"',
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
397 fill: new Fill({
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
398 color: "black"
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
399 }),
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
400 text: (feature.get("hectometre") / 10).toString()
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
401 })
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
402 );
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
403 }
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
404 return s;
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
405 } else {
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
406 return [];
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
407 }
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
408 }
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
409 }),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
410 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
411 showInLegend: true
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
412 },
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
413 {
2451
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
414 name: LAYERS.GAUGES,
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
415 forLegendStyle: { point: true, resolution: 8 },
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
416 data: new VectorLayer({
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
417 source: new VectorSource({
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
418 strategy: bboxStrategy
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
419 }),
2568
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
420 style: function(feature, resolution, isLegend) {
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
421 return [
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
422 new Style({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
423 image: new Icon({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
424 src: require("../assets/marker-gauge.png"),
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
425 anchor: [0.5, isLegend ? 0.5 : 1],
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
426 scale: isLegend ? 0.5 : 1
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
427 }),
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
428 text: new Text({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
429 font: '10px "Open Sans", "sans-serif"',
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
430 offsetY: 8,
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
431 fill: new Fill({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
432 color: "white"
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
433 }),
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
434 text: feature.get("objname")
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
435 })
2456
194b42f28ea3 linting
Markus Kottlaender <markus@intevation.de>
parents: 2451
diff changeset
436 }),
2568
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
437 new Style({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
438 text: new Text({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
439 font: '10px "Open Sans", "sans-serif"',
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
440 offsetY: 7,
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
441 offsetX: -1,
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
442 fill: new Fill({
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
443 color: "black"
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
444 }),
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
445 text: feature.get("objname")
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
446 })
2451
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
447 })
2568
c546e38008de client: improved gauge layer icon
Markus Kottlaender <markus@intevation.de>
parents: 2526
diff changeset
448 ];
2451
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
449 },
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
450 maxResolution: 100,
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
451 minResolution: 0
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
452 }),
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
453 isVisible: true,
2456
194b42f28ea3 linting
Markus Kottlaender <markus@intevation.de>
parents: 2451
diff changeset
454 showInLegend: true
2451
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
455 },
960550ccca55 Added gauges layer.
Sascha Wilde <wilde@intevation.de>
parents: 2446
diff changeset
456 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
457 name: LAYERS.DRAWTOOL,
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
458 data: new VectorLayer({
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
459 source: new VectorSource({ wrapX: false }),
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
460 style: function(feature) {
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
461 // adapted from OpenLayer's LineString Arrow Example
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
462 var geometry = feature.getGeometry();
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
463 var styles = [
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
464 // linestring
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
465 new Style({
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
466 stroke: new Stroke({
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
467 color: "#369aca",
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
468 width: 2
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
469 })
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
470 })
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
471 ];
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
472
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
473 if (geometry.getType() === "LineString") {
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
474 geometry.forEachSegment(function(start, end) {
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
475 var dx = end[0] - start[0];
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
476 var dy = end[1] - start[1];
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
477 var rotation = Math.atan2(dy, dx);
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
478 // arrows
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
479 styles.push(
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
480 new Style({
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
481 geometry: new Point(end),
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
482 image: new Icon({
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
483 // we need to make sure the image is loaded by Vue Loader
1272
bc55ffaeb639 cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents: 1247
diff changeset
484 src: require("../assets/linestring_arrow.png"),
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
485 // fiddling with the anchor's y value does not help to
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
486 // position the image more centered on the line ending, as the
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
487 // default line style seems to be slightly uncentered in the
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
488 // anti-aliasing, but the image is not placed with subpixel
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
489 // precision
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
490 anchor: [0.75, 0.5],
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
491 rotateWithView: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
492 rotation: -rotation
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
493 })
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
494 })
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
495 );
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
496 });
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
497 }
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
498 return styles;
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
499 }
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
500 }),
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
501 isVisible: true,
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
502 showInLegend: false
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
503 },
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
504 {
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
505 name: LAYERS.CUTTOOL,
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
506 data: new VectorLayer({
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
507 source: new VectorSource({ wrapX: false }),
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
508 style: function(feature) {
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
509 // adapted from OpenLayer's LineString Arrow Example
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
510 var geometry = feature.getGeometry();
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
511 var styles = [
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
512 // linestring
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
513 new Style({
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
514 stroke: new Stroke({
1197
49740dcba52c changed cut tool style
Markus Kottlaender <markus@intevation.de>
parents: 1158
diff changeset
515 color: "#333333",
49740dcba52c changed cut tool style
Markus Kottlaender <markus@intevation.de>
parents: 1158
diff changeset
516 width: 2,
49740dcba52c changed cut tool style
Markus Kottlaender <markus@intevation.de>
parents: 1158
diff changeset
517 lineDash: [7, 7]
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
518 })
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
519 })
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
520 ];
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
521
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
522 if (geometry.getType() === "LineString") {
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
523 geometry.forEachSegment(function(start, end) {
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
524 var dx = end[0] - start[0];
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
525 var dy = end[1] - start[1];
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
526 var rotation = Math.atan2(dy, dx);
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
527 // arrows
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
528 styles.push(
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
529 new Style({
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
530 geometry: new Point(end),
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
531 image: new Icon({
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
532 // we need to make sure the image is loaded by Vue Loader
1272
bc55ffaeb639 cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents: 1247
diff changeset
533 src: require("../assets/linestring_arrow_grey.png"),
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
534 // fiddling with the anchor's y value does not help to
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
535 // position the image more centered on the line ending, as the
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
536 // default line style seems to be slightly uncentered in the
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
537 // anti-aliasing, but the image is not placed with subpixel
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
538 // precision
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
539 anchor: [0.75, 0.5],
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
540 rotateWithView: true,
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
541 rotation: -rotation
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
542 })
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
543 })
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
544 );
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
545 });
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
546 }
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
547 return styles;
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
548 }
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
549 }),
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
550 isVisible: true,
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
551 showInLegend: false
1099
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
552 }
1f4799bab8a6 deleted layers/layers.js and moved content to map store
Markus Kottlaender <markus@intevation.de>
parents: 1096
diff changeset
553 ]
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
554 };
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
555 };
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
556
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
557 export default {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
558 init,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
559 namespaced: true,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
560 state: init(),
585
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
561 getters: {
1121
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
562 layersForLegend: state => {
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
563 return state.layers.filter(layer => layer.showInLegend);
035dc35e1dfc moved draw layer in map store's layers property
Markus Kottlaender <markus@intevation.de>
parents: 1115
diff changeset
564 },
754
105c421f99b1 refac: small improvements to code structure
Thomas Junk <thomas.junk@intevation.de>
parents: 747
diff changeset
565 getLayerByName: state => name => {
105c421f99b1 refac: small improvements to code structure
Thomas Junk <thomas.junk@intevation.de>
parents: 747
diff changeset
566 return state.layers.find(layer => layer.name === name);
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
567 },
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
568 getVSourceByName: (state, getters) => name => {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
569 return getters.getLayerByName(name).data.getSource();
2370
7fe2f5d334dc client: improved identify tool readability
Markus Kottlaender <markus@intevation.de>
parents: 2314
diff changeset
570 },
7fe2f5d334dc client: improved identify tool readability
Markus Kottlaender <markus@intevation.de>
parents: 2314
diff changeset
571 filteredIdentifiedFeatures: state => {
7fe2f5d334dc client: improved identify tool readability
Markus Kottlaender <markus@intevation.de>
parents: 2314
diff changeset
572 return state.identifiedFeatures.filter(f => f.getId());
585
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
573 }
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
574 },
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
575 mutations: {
2310
92b21df288e2 client: use user specific extent only on initial load
Markus Kottlaender <markus@intevation.de>
parents: 2309
diff changeset
576 initialLoad: (state, initialLoad) => {
92b21df288e2 client: use user specific extent only on initial load
Markus Kottlaender <markus@intevation.de>
parents: 2309
diff changeset
577 state.initialLoad = initialLoad;
92b21df288e2 client: use user specific extent only on initial load
Markus Kottlaender <markus@intevation.de>
parents: 2309
diff changeset
578 },
1313
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
579 extent: (state, extent) => {
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
580 state.extent = extent;
e4e35fb2d995 save map extent (center/zoom) in store, to not lose it when switching between map and admin area
Markus Kottlaender <markus@intevation.de>
parents: 1296
diff changeset
581 },
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
582 setLayerVisible: (state, name) => {
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
583 const layer = state.layers.findIndex(l => l.name === name);
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
584 state.layers[layer].isVisible = true;
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
585 state.layers[layer].data.setVisible(true);
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
586 },
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
587 setLayerInvisible: (state, name) => {
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
588 const layer = state.layers.findIndex(l => l.name === name);
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
589 state.layers[layer].isVisible = false;
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
590 state.layers[layer].data.setVisible(false);
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
591 },
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
592 toggleVisibilityByName: (state, name) => {
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
593 const layer = state.layers.findIndex(l => l.name === name);
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
594 state.layers[layer].isVisible = !state.layers[layer].isVisible;
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
595 state.layers[layer].data.setVisible(state.layers[layer].isVisible);
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
596 },
585
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
597 toggleVisibility: (state, layer) => {
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
598 state.layers[layer].isVisible = !state.layers[layer].isVisible;
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
599 state.layers[layer].data.setVisible(state.layers[layer].isVisible);
770
c12ec7fde3f2 client: add simple identify top area box
Bernhard Reiter <bernhard@intevation.de>
parents: 754
diff changeset
600 },
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
601 openLayersMap: (state, map) => {
783
ab9604a46075 client: add move after clicking search result
Bernhard Reiter <bernhard@intevation.de>
parents: 782
diff changeset
602 state.openLayersMap = map;
1112
2c3d32322126 moved identifystore properties to mapstore
Markus Kottlaender <markus@intevation.de>
parents: 1099
diff changeset
603 },
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
604 identifyTool: (state, events) => {
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
605 state.identifyTool = events;
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
606 },
1112
2c3d32322126 moved identifystore properties to mapstore
Markus Kottlaender <markus@intevation.de>
parents: 1099
diff changeset
607 setIdentifiedFeatures: (state, identifiedFeatures) => {
2c3d32322126 moved identifystore properties to mapstore
Markus Kottlaender <markus@intevation.de>
parents: 1099
diff changeset
608 state.identifiedFeatures = identifiedFeatures;
2c3d32322126 moved identifystore properties to mapstore
Markus Kottlaender <markus@intevation.de>
parents: 1099
diff changeset
609 },
2c3d32322126 moved identifystore properties to mapstore
Markus Kottlaender <markus@intevation.de>
parents: 1099
diff changeset
610 setCurrentMeasurement: (state, measurement) => {
2c3d32322126 moved identifystore properties to mapstore
Markus Kottlaender <markus@intevation.de>
parents: 1099
diff changeset
611 state.currentMeasurement = measurement;
1115
1b160eda22cf moved drawMode to map store
Markus Kottlaender <markus@intevation.de>
parents: 1114
diff changeset
612 },
1237
74562dc29e10 refactored drawtool
Markus Kottlaender <markus@intevation.de>
parents: 1197
diff changeset
613 lineTool: (state, lineTool) => {
74562dc29e10 refactored drawtool
Markus Kottlaender <markus@intevation.de>
parents: 1197
diff changeset
614 state.lineTool = lineTool;
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
615 },
1237
74562dc29e10 refactored drawtool
Markus Kottlaender <markus@intevation.de>
parents: 1197
diff changeset
616 polygonTool: (state, polygonTool) => {
74562dc29e10 refactored drawtool
Markus Kottlaender <markus@intevation.de>
parents: 1197
diff changeset
617 state.polygonTool = polygonTool;
1140
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
618 },
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
619 cutTool: (state, cutTool) => {
2e06bc53b002 separating line/polygon/cut tools in UI
Markus Kottlaender <markus@intevation.de>
parents: 1122
diff changeset
620 state.cutTool = cutTool;
1158
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
621 },
2186
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
622 moveToBoundingBox: (state, { boundingBox, zoom, preventZoomOut }) => {
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
623 const extent = transformExtent(boundingBox, "EPSG:4326", "EPSG:3857");
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
624 let view = state.openLayersMap.getView();
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
625 moveMap({ view, extent, zoom, preventZoomOut });
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
626 },
2132
7a2eedc182f7 staging: zoomable stretches. zoomToExtent etd
Thomas Junk <thomas.junk@intevation.de>
parents: 2125
diff changeset
627 moveToExtent: (state, { feature, zoom, preventZoomOut }) => {
7a2eedc182f7 staging: zoomable stretches. zoomToExtent etd
Thomas Junk <thomas.junk@intevation.de>
parents: 2125
diff changeset
628 const boundingBox = bbox(feature.geometry);
7a2eedc182f7 staging: zoomable stretches. zoomToExtent etd
Thomas Junk <thomas.junk@intevation.de>
parents: 2125
diff changeset
629 const extent = transformExtent(boundingBox, "EPSG:4326", "EPSG:3857");
2108
cac5d2fba591 bbox tool from turfjs added. zoomToExtent function added to map.js
Thomas Junk <thomas.junk@intevation.de>
parents: 2101
diff changeset
630 let view = state.openLayersMap.getView();
2186
d0498088894f map_store: extracted moveMap, etd moveToBoundingBox, refactored moveToExtent
Thomas Junk <thomas.junk@intevation.de>
parents: 2166
diff changeset
631 moveMap({ view, extent, zoom, preventZoomOut });
2108
cac5d2fba591 bbox tool from turfjs added. zoomToExtent function added to map.js
Thomas Junk <thomas.junk@intevation.de>
parents: 2101
diff changeset
632 },
1158
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
633 moveMap: (state, { coordinates, zoom, preventZoomOut }) => {
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
634 let view = state.openLayersMap.getView();
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
635 const currentZoom = view.getZoom();
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
636 view.animate({
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
637 zoom: preventZoomOut ? Math.max(zoom, currentZoom) : zoom,
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
638 center: fromLonLat(coordinates, view.getProjection()),
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
639 duration: 700
da75faa8043f added central moveMap method to pan and zoom the map on certain events
Markus Kottlaender <markus@intevation.de>
parents: 1144
diff changeset
640 });
1927
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
641 },
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
642 isolinesLegendImgDataURL: (state, isolinesLegendImgDataURL) => {
5a37ee321651 client: make isolines legend graphic internally availableo
Bernhard Reiter <bernhard@intevation.de>
parents: 1879
diff changeset
643 state.isolinesLegendImgDataURL = isolinesLegendImgDataURL;
1144
5f98d0c9d738 linted code
Markus Kottlaender <markus@intevation.de>
parents: 1140
diff changeset
644 }
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
645 },
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
646 actions: {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
647 openLayersMap({ commit, dispatch, getters }, map) {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
648 const drawVectorSrc = getters.getVSourceByName("Draw Tool");
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
649 const cutVectorSrc = getters.getVSourceByName("Cut Tool");
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
650
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
651 // init line tool
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
652 const lineTool = new Draw({
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
653 source: drawVectorSrc,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
654 type: "LineString",
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
655 maxPoints: 2
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
656 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
657 lineTool.setActive(false);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
658 lineTool.on("drawstart", () => {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
659 drawVectorSrc.clear();
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
660 commit("setCurrentMeasurement", null);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
661 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
662 lineTool.on("drawend", event => {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
663 commit("setCurrentMeasurement", {
1524
a0a16577261a Translation: mark some strings for translation
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1438
diff changeset
664 quantity: app.$gettext("Length"),
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
665 unitSymbol: "m",
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
666 value: Math.round(getLength(event.feature.getGeometry()) * 10) / 10
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
667 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
668 commit("application/showIdentify", true, { root: true });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
669 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
670
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
671 // init polygon tool
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
672 const polygonTool = new Draw({
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
673 source: drawVectorSrc,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
674 type: "Polygon",
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
675 maxPoints: 50
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
676 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
677 polygonTool.setActive(false);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
678 polygonTool.on("drawstart", () => {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
679 drawVectorSrc.clear();
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
680 commit("setCurrentMeasurement", null);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
681 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
682 polygonTool.on("drawend", event => {
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
683 const areaSize = getArea(event.feature.getGeometry());
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
684 commit("setCurrentMeasurement", {
1524
a0a16577261a Translation: mark some strings for translation
Fadi Abbud <fadi.abbud@intevation.de>
parents: 1438
diff changeset
685 quantity: app.$gettext("Area"),
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
686 unitSymbol: areaSize > 100000 ? "km²" : "m²",
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
687 value:
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
688 areaSize > 100000
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
689 ? Math.round(areaSize / 1000) / 1000 // convert into 1 km² == 1000*1000 m² and round to 1000 m²
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
690 : Math.round(areaSize)
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
691 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
692 commit("application/showIdentify", true, { root: true });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
693 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
694
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
695 // init cut tool
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
696 const cutTool = new Draw({
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
697 source: cutVectorSrc,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
698 type: "LineString",
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
699 maxPoints: 2,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
700 style: new Style({
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
701 stroke: new Stroke({
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
702 color: "#444",
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
703 width: 2,
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
704 lineDash: [7, 7]
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
705 }),
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
706 image: new Circle({
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
707 fill: new Fill({ color: "#333" }),
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
708 stroke: new Stroke({ color: "#fff", width: 1.5 }),
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
709 radius: 6
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
710 })
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
711 })
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
712 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
713 cutTool.setActive(false);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
714 cutTool.on("drawstart", () => {
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
715 dispatch("disableIdentifyTool");
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
716 cutVectorSrc.clear();
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
717 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
718 cutTool.on("drawend", event => {
1395
210e9f16f8a0 delete cross profiles from localstorage
Markus Kottlaender <markus@intevation.de>
parents: 1363
diff changeset
719 commit("fairwayprofile/selectedCut", null, { root: true });
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
720 dispatch("fairwayprofile/cut", event.feature, { root: true }).then(() =>
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
721 // This setTimeout is an ugly workaround. If we would enable the
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
722 // identifyTool here immediately then the click event from ending the
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
723 // cut will trigger it. We don't want that.
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
724 setTimeout(() => dispatch("enableIdentifyTool"), 1000)
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
725 );
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
726 });
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
727
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
728 map.addInteraction(lineTool);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
729 map.addInteraction(cutTool);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
730 map.addInteraction(polygonTool);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
731
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
732 commit("lineTool", lineTool);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
733 commit("polygonTool", polygonTool);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
734 commit("cutTool", cutTool);
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
735 commit("openLayersMap", map);
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
736 },
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
737 disableIdentifyTool({ state }) {
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
738 unByKey(state.identifyTool);
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
739 state.identifyTool = null;
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
740 },
1438
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
741 enableIdentifyTool({ state, rootState, commit, dispatch, getters }) {
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
742 if (!state.identifyTool) {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
743 state.identifyTool = state.openLayersMap.on(
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
744 ["singleclick", "dblclick"],
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
745 event => {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
746 commit("setIdentifiedFeatures", []);
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
747 // checking our WFS layers
2166
69c49301d689 map.js: GetFeaturesAtPixel added hitTolerance:7.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2157
diff changeset
748 var features = state.openLayersMap.getFeaturesAtPixel(event.pixel, {
69c49301d689 map.js: GetFeaturesAtPixel added hitTolerance:7.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2157
diff changeset
749 hitTolerance: 7
69c49301d689 map.js: GetFeaturesAtPixel added hitTolerance:7.
Bjoern Schilberg <bjoern@intevation.de>
parents: 2157
diff changeset
750 });
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
751 if (features) {
2510
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
752 let identifiedFeatures = [];
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
753
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
754 for (let feature of features) {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
755 let id = feature.getId();
2510
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
756
2511
e958104be9a9 removed console.log, added comment
Markus Kottlaender <markus@intevation.de>
parents: 2510
diff changeset
757 // avoid identifying the same feature twice
2510
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
758 if (
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
759 identifiedFeatures.findIndex(
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
760 f => f.getId() === feature.getId()
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
761 ) === -1
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
762 ) {
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
763 identifiedFeatures.push(feature);
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
764 }
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
765
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
766 // get selected bottleneck
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
767 // RegExp.prototype.test() works with number, str and undefined
2133
602c2096c078 fix: bottleneckselection via identifytool
Thomas Junk <thomas.junk@intevation.de>
parents: 2132
diff changeset
768 if (/^bottlenecks/.test(id)) {
1438
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
769 if (
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
770 rootState.bottlenecks.selectedBottleneck !=
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
771 feature.get("objnam")
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
772 ) {
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
773 dispatch(
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
774 "bottlenecks/setSelectedBottleneck",
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
775 feature.get("objnam"),
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
776 { root: true }
1565
faa045ebdf0c select first surveydate after identification of bottleneck
Thomas Junk <thomas.junk@intevation.de>
parents: 1524
diff changeset
777 ).then(() => {
faa045ebdf0c select first surveydate after identification of bottleneck
Thomas Junk <thomas.junk@intevation.de>
parents: 1524
diff changeset
778 this.commit("bottlenecks/setFirstSurveySelected");
faa045ebdf0c select first surveydate after identification of bottleneck
Thomas Junk <thomas.junk@intevation.de>
parents: 1524
diff changeset
779 });
1438
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
780 commit("moveMap", {
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
781 coordinates: getCenter(
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
782 feature
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
783 .getGeometry()
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
784 .clone()
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
785 .transform("EPSG:3857", "EPSG:4326")
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
786 .getExtent()
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
787 ),
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
788 zoom: 17,
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
789 preventZoomOut: true
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
790 });
71eb96690f91 avoid unnecessary setSelectedBottleneck call
Markus Kottlaender <markus@intevation.de>
parents: 1437
diff changeset
791 }
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
792 }
2590
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
793
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
794 // get selected gauge
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
795 if (/^gauges/.test(id)) {
2596
8774054959a7 client: added Gauges dialog/tool to show waterlevel diagrams
Markus Kottlaender <markus@intevation.de>
parents: 2590
diff changeset
796 if (
2604
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
797 rootState.gauges.selectedGaugeName !==
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
798 feature.get("objname")
2596
8774054959a7 client: added Gauges dialog/tool to show waterlevel diagrams
Markus Kottlaender <markus@intevation.de>
parents: 2590
diff changeset
799 ) {
2604
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
800 dispatch(
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
801 "gauges/selectedGaugeName",
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
802 feature.get("objname"),
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
803 {
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
804 root: true
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
805 }
85f9bf4a6eba client: gauge waterlevel diagram: draw reference waterlevels
Markus Kottlaender <markus@intevation.de>
parents: 2596
diff changeset
806 );
2590
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
807 commit("moveMap", {
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
808 coordinates: getCenter(
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
809 feature
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
810 .getGeometry()
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
811 .clone()
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
812 .transform("EPSG:3857", "EPSG:4326")
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
813 .getExtent()
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
814 ),
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
815 zoom: 17,
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
816 preventZoomOut: true
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
817 });
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
818 }
1686ec185155 client: added gauge waterlevel example diagram
Markus Kottlaender <markus@intevation.de>
parents: 2568
diff changeset
819 }
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
820 }
2510
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
821
f2758dafe390 client: identify tool: avoid identifying the same feature twice
Markus Kottlaender <markus@intevation.de>
parents: 2506
diff changeset
822 commit("setIdentifiedFeatures", identifiedFeatures);
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
823 }
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
824
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
825 // DEBUG output and example how to remove the GeometryName
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
826 /*
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
827 for (let feature of features) {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
828 console.log("Identified:", feature.getId());
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
829 for (let key of feature.getKeys()) {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
830 if (key != feature.getGeometryName()) {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
831 console.log(key, feature.get(key));
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
832 }
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
833 }
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
834 }
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
835 */
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
836
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
837 // trying the GetFeatureInfo way for WMS
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
838 var wmsSource = getters.getVSourceByName(
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
839 "Inland ECDIS chart Danube"
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
840 );
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
841 var url = wmsSource.getGetFeatureInfoUrl(
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
842 event.coordinate,
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
843 100 /* resolution */,
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
844 "EPSG:3857",
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
845 // { INFO_FORMAT: "application/vnd.ogc.gml" } // not allowed by d4d
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
846 { INFO_FORMAT: "text/plain" }
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
847 );
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
848
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
849 if (url) {
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
850 // cannot directly query here because of SOP
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
851 console.log("GetFeatureInfo url:", url);
1435
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
852 }
7fa030127b05 fixed panning problem
Markus Kottlaender <markus@intevation.de>
parents: 1395
diff changeset
853 }
1437
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
854 );
1cd1549aab47 fixed panning problem when drawing cross cuts
Markus Kottlaender <markus@intevation.de>
parents: 1435
diff changeset
855 }
1296
99c039e86624 replaced manual store cleanup on logout with central store reset
Markus Kottlaender <markus@intevation.de>
parents: 1272
diff changeset
856 }
585
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
857 }
ef307bd6b5d8 refac: restructured client application
Thomas Junk <thomas.junk@intevation.de>
parents:
diff changeset
858 };
2140
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
859
55bedb39295a feat: clicking on stretches activates according layer
Thomas Junk <thomas.junk@intevation.de>
parents: 2133
diff changeset
860 export { LAYERS };