diff options
Diffstat (limited to 'web')
-rw-r--r-- | web/cobrands/fixmystreet/fixmystreet.js | 10 | ||||
-rw-r--r-- | web/cobrands/zurich/zurich-wmts-hybrid.xml | 356 | ||||
-rw-r--r-- | web/cobrands/zurich/zurich-wmts-map.xml | 356 | ||||
-rw-r--r-- | web/cobrands/zurich/zurich-wmts-satellite.xml (renamed from web/cobrands/zurich/Zurich-WMTSCapabilities.xml) | 0 | ||||
-rw-r--r-- | web/js/OpenLayers.2.11.zurich.js | 22 | ||||
-rw-r--r-- | web/js/map-OpenLayers.js | 28 | ||||
-rw-r--r-- | web/js/map-wmts-zurich.js | 27 |
7 files changed, 757 insertions, 42 deletions
diff --git a/web/cobrands/fixmystreet/fixmystreet.js b/web/cobrands/fixmystreet/fixmystreet.js index 65c738a8c..b9506c78a 100644 --- a/web/cobrands/fixmystreet/fixmystreet.js +++ b/web/cobrands/fixmystreet/fixmystreet.js @@ -10,14 +10,14 @@ * elem2: target element * offset: this will be added (if present) to the final value, useful for height errors */ -function heightFix(elem1, elem2, offset){ +function heightFix(elem1, elem2, offset, force) { var h1 = $(elem1).height(), h2 = $(elem2).height(); - if(offset === undefined){ + if (offset === undefined) { offset = 0; } - if(h1 > h2){ - $(elem2).css({'min-height':h1+offset}); + if (h1 > h2 || force) { + $(elem2).css( { 'min-height': h1+offset } ); } } @@ -437,7 +437,7 @@ $.fn.drawer = function(id, ajax) { if (cobrand == 'bromley') { offset = -110; } - heightFix(window, '.content', offset); + heightFix(window, '.content', offset, 1); // in case we have a map that isn't full screen map_fix(); } diff --git a/web/cobrands/zurich/zurich-wmts-hybrid.xml b/web/cobrands/zurich/zurich-wmts-hybrid.xml new file mode 100644 index 000000000..f1580cc89 --- /dev/null +++ b/web/cobrands/zurich/zurich-wmts-hybrid.xml @@ -0,0 +1,356 @@ +<?xml version="1.0" encoding="UTF-8"?>
+
+
+
+
+
+
+
+
+
+
+
+
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0"
+ xmlns:ows="http://www.opengis.net/ows/1.1"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:gml="http://www.opengis.net/gml"
+ xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd"
+ version="1.0.0">
+ <!-- Service Identification -->
+ <ows:ServiceIdentification>
+ <ows:Title>Hybrid</ows:Title>
+ <ows:ServiceType>OGC WMTS</ows:ServiceType>
+ <ows:ServiceTypeVersion>1.0.0</ows:ServiceTypeVersion>
+</ows:ServiceIdentification> <!-- Operations Metadata --> <ows:OperationsMetadata>
+ <ows:Operation name="GetCapabilities">
+ <ows:DCP>
+ <ows:HTTP>
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Hybrid/MapServer/WMTS/1.0.0/WMTSCapabilities.xml">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>RESTful</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ <!-- add KVP binding in 10.1 -->
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Hybrid/MapServer/WMTS?">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>KVP</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ </ows:HTTP>
+ </ows:DCP>
+ </ows:Operation>
+ <ows:Operation name="GetTile">
+ <ows:DCP>
+ <ows:HTTP>
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Hybrid/MapServer/WMTS/tile/1.0.0/">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>RESTful</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Hybrid/MapServer/WMTS?">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>KVP</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ </ows:HTTP>
+ </ows:DCP>
+ </ows:Operation>
+</ows:OperationsMetadata>
+<Contents>
+ <!--Layer-->
+ <Layer>
+ <ows:Title>Hybrid</ows:Title>
+ <ows:Identifier>Hybrid</ows:Identifier>
+
+ <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::21781">
+ <ows:LowerCorner>665000.0 230000.0</ows:LowerCorner>
+ <ows:UpperCorner>700000.0 270000.0</ows:UpperCorner>
+ </ows:BoundingBox>
+
+ <ows:WGS84BoundingBox crs="urn:ogc:def:crs:OGC:2:84">
+ <ows:LowerCorner>8.297842338812158 47.21471096634782</ows:LowerCorner>
+ <ows:UpperCorner>8.768863108218179 47.57887356607757</ows:UpperCorner>
+ </ows:WGS84BoundingBox>
+ <Style isDefault="true">
+ <ows:Title>Default Style</ows:Title>
+ <ows:Identifier>default</ows:Identifier>
+ </Style>
+ <Format>image/jpgpng</Format>
+ <TileMatrixSetLink>
+ <TileMatrixSet>default028mm</TileMatrixSet>
+ </TileMatrixSetLink>
+ <TileMatrixSetLink>
+ <TileMatrixSet>nativeTileMatrixSet</TileMatrixSet>
+ </TileMatrixSetLink>
+
+ <ResourceURL format="image/jpgpng" resourceType="tile" template="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Hybrid/MapServer/WMTS/tile/1.0.0/Hybrid/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}" />
+ </Layer>
+ <!--TileMatrixSet-->
+ <TileMatrixSet>
+ <ows:Title>Default TileMatrix using 0.28mm</ows:Title>
+ <ows:Abstract>The tile matrix set that has scale values calculated based on the dpi defined by OGC specification (dpi assumes 0.28mm as the physical distance of a pixel).</ows:Abstract>
+ <ows:Identifier>default028mm</ows:Identifier>
+ <ows:SupportedCRS>urn:ogc:def:crs:EPSG::21781</ows:SupportedCRS>
+
+ <TileMatrix>
+ <ows:Identifier>0</ows:Identifier>
+ <ScaleDenominator>236235.11904761902</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>3</MatrixWidth>
+ <MatrixHeight>4</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>1</ows:Identifier>
+ <ScaleDenominator>118117.55952380951</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>5</MatrixWidth>
+ <MatrixHeight>6</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>2</ows:Identifier>
+ <ScaleDenominator>60476.19047619047</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>9</MatrixWidth>
+ <MatrixHeight>10</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>3</ows:Identifier>
+ <ScaleDenominator>30238.095238095237</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>17</MatrixWidth>
+ <MatrixHeight>19</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>4</ows:Identifier>
+ <ScaleDenominator>15119.047619047618</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>33</MatrixWidth>
+ <MatrixHeight>38</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>5</ows:Identifier>
+ <ScaleDenominator>7559.523809523809</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>66</MatrixWidth>
+ <MatrixHeight>75</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>6</ows:Identifier>
+ <ScaleDenominator>3779.7619047619046</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>131</MatrixWidth>
+ <MatrixHeight>149</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>7</ows:Identifier>
+ <ScaleDenominator>1889.8809523809523</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>260</MatrixWidth>
+ <MatrixHeight>296</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>8</ows:Identifier>
+ <ScaleDenominator>944.9404761904761</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>518</MatrixWidth>
+ <MatrixHeight>591</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>9</ows:Identifier>
+ <ScaleDenominator>472.4702380952381</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>1035</MatrixWidth>
+ <MatrixHeight>1182</MatrixHeight>
+
+ </TileMatrix>
+
+ </TileMatrixSet>
+ <TileMatrixSet>
+ <ows:Title>Native TiledMapService TileMatrixSet</ows:Title>
+ <ows:Abstract>the tile matrix set that has scale values calculated based on the dpi defined by ArcGIS Server tiled map service. The current tile dpi is 96</ows:Abstract>
+ <ows:Identifier>nativeTileMatrixSet</ows:Identifier>
+ <ows:SupportedCRS>urn:ogc:def:crs:EPSG::21781</ows:SupportedCRS>
+
+ <TileMatrix>
+ <ows:Identifier>0</ows:Identifier>
+ <ScaleDenominator>250000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>3</MatrixWidth>
+ <MatrixHeight>4</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>1</ows:Identifier>
+ <ScaleDenominator>125000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>5</MatrixWidth>
+ <MatrixHeight>6</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>2</ows:Identifier>
+ <ScaleDenominator>64000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>9</MatrixWidth>
+ <MatrixHeight>10</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>3</ows:Identifier>
+ <ScaleDenominator>32000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>17</MatrixWidth>
+ <MatrixHeight>19</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>4</ows:Identifier>
+ <ScaleDenominator>16000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>33</MatrixWidth>
+ <MatrixHeight>38</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>5</ows:Identifier>
+ <ScaleDenominator>8000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>66</MatrixWidth>
+ <MatrixHeight>75</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>6</ows:Identifier>
+ <ScaleDenominator>4000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>131</MatrixWidth>
+ <MatrixHeight>149</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>7</ows:Identifier>
+ <ScaleDenominator>2000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>260</MatrixWidth>
+ <MatrixHeight>296</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>8</ows:Identifier>
+ <ScaleDenominator>1000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>518</MatrixWidth>
+ <MatrixHeight>591</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>9</ows:Identifier>
+ <ScaleDenominator>500.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>1035</MatrixWidth>
+ <MatrixHeight>1182</MatrixHeight>
+
+ </TileMatrix>
+
+ </TileMatrixSet>
+
+</Contents>
+<ServiceMetadataURL xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Hybrid/MapServer/WMTS/1.0.0/WMTSCapabilities.xml" />
+</Capabilities>
diff --git a/web/cobrands/zurich/zurich-wmts-map.xml b/web/cobrands/zurich/zurich-wmts-map.xml new file mode 100644 index 000000000..b78f88826 --- /dev/null +++ b/web/cobrands/zurich/zurich-wmts-map.xml @@ -0,0 +1,356 @@ +<?xml version="1.0" encoding="UTF-8"?>
+
+
+
+
+
+
+
+
+
+
+
+
+<Capabilities xmlns="http://www.opengis.net/wmts/1.0"
+ xmlns:ows="http://www.opengis.net/ows/1.1"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:gml="http://www.opengis.net/gml"
+ xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd"
+ version="1.0.0">
+ <!-- Service Identification -->
+ <ows:ServiceIdentification>
+ <ows:Title>Stadtplan</ows:Title>
+ <ows:ServiceType>OGC WMTS</ows:ServiceType>
+ <ows:ServiceTypeVersion>1.0.0</ows:ServiceTypeVersion>
+</ows:ServiceIdentification> <!-- Operations Metadata --> <ows:OperationsMetadata>
+ <ows:Operation name="GetCapabilities">
+ <ows:DCP>
+ <ows:HTTP>
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Stadtplan/MapServer/WMTS/1.0.0/WMTSCapabilities.xml">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>RESTful</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ <!-- add KVP binding in 10.1 -->
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Stadtplan/MapServer/WMTS?">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>KVP</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ </ows:HTTP>
+ </ows:DCP>
+ </ows:Operation>
+ <ows:Operation name="GetTile">
+ <ows:DCP>
+ <ows:HTTP>
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Stadtplan/MapServer/WMTS/tile/1.0.0/">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>RESTful</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ <ows:Get xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Stadtplan/MapServer/WMTS?">
+ <ows:Constraint name="GetEncoding">
+ <ows:AllowedValues>
+ <ows:Value>KVP</ows:Value>
+ </ows:AllowedValues>
+ </ows:Constraint>
+ </ows:Get>
+ </ows:HTTP>
+ </ows:DCP>
+ </ows:Operation>
+</ows:OperationsMetadata>
+<Contents>
+ <!--Layer-->
+ <Layer>
+ <ows:Title>Stadtplan</ows:Title>
+ <ows:Identifier>Stadtplan</ows:Identifier>
+
+ <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::21781">
+ <ows:LowerCorner>672499.0 238999.0</ows:LowerCorner>
+ <ows:UpperCorner>689999.0 256999.0</ows:UpperCorner>
+ </ows:BoundingBox>
+
+ <ows:WGS84BoundingBox crs="urn:ogc:def:crs:OGC:2:84">
+ <ows:LowerCorner>8.398302613481356 47.29709259053008</ows:LowerCorner>
+ <ows:UpperCorner>8.633312509540968 47.46115331797573</ows:UpperCorner>
+ </ows:WGS84BoundingBox>
+ <Style isDefault="true">
+ <ows:Title>Default Style</ows:Title>
+ <ows:Identifier>default</ows:Identifier>
+ </Style>
+ <Format>image/jpgpng</Format>
+ <TileMatrixSetLink>
+ <TileMatrixSet>default028mm</TileMatrixSet>
+ </TileMatrixSetLink>
+ <TileMatrixSetLink>
+ <TileMatrixSet>nativeTileMatrixSet</TileMatrixSet>
+ </TileMatrixSetLink>
+
+ <ResourceURL format="image/jpgpng" resourceType="tile" template="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Stadtplan/MapServer/WMTS/tile/1.0.0/Stadtplan/{Style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}" />
+ </Layer>
+ <!--TileMatrixSet-->
+ <TileMatrixSet>
+ <ows:Title>Default TileMatrix using 0.28mm</ows:Title>
+ <ows:Abstract>The tile matrix set that has scale values calculated based on the dpi defined by OGC specification (dpi assumes 0.28mm as the physical distance of a pixel).</ows:Abstract>
+ <ows:Identifier>default028mm</ows:Identifier>
+ <ows:SupportedCRS>urn:ogc:def:crs:EPSG::21781</ows:SupportedCRS>
+
+ <TileMatrix>
+ <ows:Identifier>0</ows:Identifier>
+ <ScaleDenominator>236235.11904761902</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>2</MatrixWidth>
+ <MatrixHeight>2</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>1</ows:Identifier>
+ <ScaleDenominator>118117.55952380951</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>3</MatrixWidth>
+ <MatrixHeight>3</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>2</ows:Identifier>
+ <ScaleDenominator>60476.19047619047</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>5</MatrixWidth>
+ <MatrixHeight>5</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>3</ows:Identifier>
+ <ScaleDenominator>30238.095238095237</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>9</MatrixWidth>
+ <MatrixHeight>9</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>4</ows:Identifier>
+ <ScaleDenominator>15119.047619047618</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>17</MatrixWidth>
+ <MatrixHeight>18</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>5</ows:Identifier>
+ <ScaleDenominator>7559.523809523809</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>34</MatrixWidth>
+ <MatrixHeight>35</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>6</ows:Identifier>
+ <ScaleDenominator>3779.7619047619046</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>66</MatrixWidth>
+ <MatrixHeight>68</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>7</ows:Identifier>
+ <ScaleDenominator>1889.8809523809523</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>130</MatrixWidth>
+ <MatrixHeight>134</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>8</ows:Identifier>
+ <ScaleDenominator>944.9404761904761</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>259</MatrixWidth>
+ <MatrixHeight>267</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>9</ows:Identifier>
+ <ScaleDenominator>472.4702380952381</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>517</MatrixWidth>
+ <MatrixHeight>533</MatrixHeight>
+
+ </TileMatrix>
+
+ </TileMatrixSet>
+ <TileMatrixSet>
+ <ows:Title>Native TiledMapService TileMatrixSet</ows:Title>
+ <ows:Abstract>the tile matrix set that has scale values calculated based on the dpi defined by ArcGIS Server tiled map service. The current tile dpi is 96</ows:Abstract>
+ <ows:Identifier>nativeTileMatrixSet</ows:Identifier>
+ <ows:SupportedCRS>urn:ogc:def:crs:EPSG::21781</ows:SupportedCRS>
+
+ <TileMatrix>
+ <ows:Identifier>0</ows:Identifier>
+ <ScaleDenominator>250000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>2</MatrixWidth>
+ <MatrixHeight>2</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>1</ows:Identifier>
+ <ScaleDenominator>125000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>3</MatrixWidth>
+ <MatrixHeight>3</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>2</ows:Identifier>
+ <ScaleDenominator>64000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>5</MatrixWidth>
+ <MatrixHeight>5</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>3</ows:Identifier>
+ <ScaleDenominator>32000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>9</MatrixWidth>
+ <MatrixHeight>9</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>4</ows:Identifier>
+ <ScaleDenominator>16000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>17</MatrixWidth>
+ <MatrixHeight>18</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>5</ows:Identifier>
+ <ScaleDenominator>8000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>34</MatrixWidth>
+ <MatrixHeight>35</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>6</ows:Identifier>
+ <ScaleDenominator>4000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>66</MatrixWidth>
+ <MatrixHeight>68</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>7</ows:Identifier>
+ <ScaleDenominator>2000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>130</MatrixWidth>
+ <MatrixHeight>134</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>8</ows:Identifier>
+ <ScaleDenominator>1000.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>259</MatrixWidth>
+ <MatrixHeight>267</MatrixHeight>
+
+ </TileMatrix>
+
+ <TileMatrix>
+ <ows:Identifier>9</ows:Identifier>
+ <ScaleDenominator>500.0</ScaleDenominator>
+ <TopLeftCorner>-2.93864E7 3.08145E7</TopLeftCorner>
+ <TileWidth>256</TileWidth>
+ <TileHeight>256</TileHeight>
+
+ <MatrixWidth>517</MatrixWidth>
+ <MatrixHeight>533</MatrixHeight>
+
+ </TileMatrix>
+
+ </TileMatrixSet>
+
+</Contents>
+<ServiceMetadataURL xlink:href="http://www.wmts.stadt-zuerich.ch/arcgis/rest/services/Stadtplan/MapServer/WMTS/1.0.0/WMTSCapabilities.xml" />
+</Capabilities>
diff --git a/web/cobrands/zurich/Zurich-WMTSCapabilities.xml b/web/cobrands/zurich/zurich-wmts-satellite.xml index c8b863c22..c8b863c22 100644 --- a/web/cobrands/zurich/Zurich-WMTSCapabilities.xml +++ b/web/cobrands/zurich/zurich-wmts-satellite.xml diff --git a/web/js/OpenLayers.2.11.zurich.js b/web/js/OpenLayers.2.11.zurich.js index 671984fb4..62087500d 100644 --- a/web/js/OpenLayers.2.11.zurich.js +++ b/web/js/OpenLayers.2.11.zurich.js @@ -23,26 +23,6 @@ * *--------------------------------------------------------------------------*/ -/** -* -* Contains portions of Rico <http://openrico.org/> -* -* Copyright 2005 Sabre Airline Solutions -* -* Licensed under the Apache License, Version 2.0 (the "License"); you -* may not use this file except in compliance with the License. You -* may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -* implied. See the License for the specific language governing -* permissions and limitations under the License. -* -**/ - /** * Contains XMLHttpRequest.js <http://code.google.com/p/xmlhttprequest/> * Copyright 2007 Sergey Ilinsky (http://www.ilinsky.com) @@ -1381,4 +1361,4 @@ format(date.getMinutes())+':'+ format(date.getSeconds())+'"';}},CLASS_NAME:"OpenLayers.Format.JSON"});OpenLayers.Control.DragFeature=OpenLayers.Class(OpenLayers.Control,{geometryTypes:null,onStart:function(feature,pixel){},onDrag:function(feature,pixel){},onComplete:function(feature,pixel){},onEnter:function(feature){},onLeave:function(feature){},documentDrag:false,layer:null,feature:null,dragCallbacks:{},featureCallbacks:{},lastPixel:null,initialize:function(layer,options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.layer=layer;this.handlers={drag:new OpenLayers.Handler.Drag(this,OpenLayers.Util.extend({down:this.downFeature,move:this.moveFeature,up:this.upFeature,out:this.cancel,done:this.doneDragging},this.dragCallbacks),{documentDrag:this.documentDrag}),feature:new OpenLayers.Handler.Feature(this,this.layer,OpenLayers.Util.extend({click:this.clickFeature,clickout:this.clickoutFeature,over:this.overFeature,out:this.outFeature},this.featureCallbacks),{geometryTypes:this.geometryTypes})};},clickFeature:function(feature){if(this.handlers.feature.touch&&!this.over&&this.overFeature(feature)){this.handlers.drag.dragstart(this.handlers.feature.evt);this.handlers.drag.stopDown=false;}},clickoutFeature:function(feature){if(this.handlers.feature.touch&&this.over){this.outFeature(feature);this.handlers.drag.stopDown=true;}},destroy:function(){this.layer=null;OpenLayers.Control.prototype.destroy.apply(this,[]);},activate:function(){return(this.handlers.feature.activate()&&OpenLayers.Control.prototype.activate.apply(this,arguments));},deactivate:function(){this.handlers.drag.deactivate();this.handlers.feature.deactivate();this.feature=null;this.dragging=false;this.lastPixel=null;OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass+"Over");return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},overFeature:function(feature){var activated=false;if(!this.handlers.drag.dragging){this.feature=feature;this.handlers.drag.activate();activated=true;this.over=true;OpenLayers.Element.addClass(this.map.viewPortDiv,this.displayClass+"Over");this.onEnter(feature);}else{if(this.feature.id==feature.id){this.over=true;}else{this.over=false;}} return activated;},downFeature:function(pixel){this.lastPixel=pixel;this.onStart(this.feature,pixel);},moveFeature:function(pixel){var res=this.map.getResolution();this.feature.geometry.move(res*(pixel.x-this.lastPixel.x),res*(this.lastPixel.y-pixel.y));this.layer.drawFeature(this.feature);this.lastPixel=pixel;this.onDrag(this.feature,pixel);},upFeature:function(pixel){if(!this.over){this.handlers.drag.deactivate();}},doneDragging:function(pixel){this.onComplete(this.feature,pixel);},outFeature:function(feature){if(!this.handlers.drag.dragging){this.over=false;this.handlers.drag.deactivate();OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass+"Over");this.onLeave(feature);this.feature=null;}else{if(this.feature.id==feature.id){this.over=false;}}},cancel:function(){this.handlers.drag.deactivate();this.over=false;},setMap:function(map){this.handlers.drag.setMap(map);this.handlers.feature.setMap(map);OpenLayers.Control.prototype.setMap.apply(this,arguments);},CLASS_NAME:"OpenLayers.Control.DragFeature"});OpenLayers.Control.PinchZoom=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOOL,containerOrigin:null,pinchOrigin:null,currentCenter:null,autoActivate:true,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,arguments);this.handler=new OpenLayers.Handler.Pinch(this,{start:this.pinchStart,move:this.pinchMove,done:this.pinchDone},this.handlerOptions);},activate:function(){var activated=OpenLayers.Control.prototype.activate.apply(this,arguments);if(activated){this.map.events.on({moveend:this.updateContainerOrigin,scope:this});this.updateContainerOrigin();} return activated;},deactivate:function(){var deactivated=OpenLayers.Control.prototype.deactivate.apply(this,arguments);if(this.map&&this.map.events){this.map.events.un({moveend:this.updateContainerOrigin,scope:this});} -return deactivated;},updateContainerOrigin:function(){var container=this.map.layerContainerDiv;this.containerOrigin={x:parseInt(container.style.left,10),y:parseInt(container.style.top,10)};},pinchStart:function(evt,pinchData){this.pinchOrigin=evt.xy;this.currentCenter=evt.xy;},pinchMove:function(evt,pinchData){var scale=pinchData.scale;var containerOrigin=this.containerOrigin;var pinchOrigin=this.pinchOrigin;var current=evt.xy;var dx=Math.round((current.x-pinchOrigin.x)+(scale-1)*(containerOrigin.x-pinchOrigin.x));var dy=Math.round((current.y-pinchOrigin.y)+(scale-1)*(containerOrigin.y-pinchOrigin.y));this.applyTransform("translate("+dx+"px, "+dy+"px) scale("+scale+")");this.currentCenter=current;},applyTransform:function(transform){var style=this.map.layerContainerDiv.style;style['-webkit-transform']=transform;style['-moz-transform']=transform;},pinchDone:function(evt,start,last){this.applyTransform("");var zoom=this.map.getZoomForResolution(this.map.getResolution()/last.scale,true);if(zoom!==this.map.getZoom()||!this.currentCenter.equals(this.pinchOrigin)){var resolution=this.map.getResolutionForZoom(zoom);var location=this.map.getLonLatFromPixel(this.pinchOrigin);var zoomPixel=this.currentCenter;var size=this.map.getSize();location.lon+=resolution*((size.w/2)-zoomPixel.x);location.lat-=resolution*((size.h/2)-zoomPixel.y);this.map.setCenter(location,zoom);}},CLASS_NAME:"OpenLayers.Control.PinchZoom"});
\ No newline at end of file +return deactivated;},updateContainerOrigin:function(){var container=this.map.layerContainerDiv;this.containerOrigin={x:parseInt(container.style.left,10),y:parseInt(container.style.top,10)};},pinchStart:function(evt,pinchData){this.pinchOrigin=evt.xy;this.currentCenter=evt.xy;},pinchMove:function(evt,pinchData){var scale=pinchData.scale;var containerOrigin=this.containerOrigin;var pinchOrigin=this.pinchOrigin;var current=evt.xy;var dx=Math.round((current.x-pinchOrigin.x)+(scale-1)*(containerOrigin.x-pinchOrigin.x));var dy=Math.round((current.y-pinchOrigin.y)+(scale-1)*(containerOrigin.y-pinchOrigin.y));this.applyTransform("translate("+dx+"px, "+dy+"px) scale("+scale+")");this.currentCenter=current;},applyTransform:function(transform){var style=this.map.layerContainerDiv.style;style['-webkit-transform']=transform;style['-moz-transform']=transform;},pinchDone:function(evt,start,last){this.applyTransform("");var zoom=this.map.getZoomForResolution(this.map.getResolution()/last.scale,true);if(zoom!==this.map.getZoom()||!this.currentCenter.equals(this.pinchOrigin)){var resolution=this.map.getResolutionForZoom(zoom);var location=this.map.getLonLatFromPixel(this.pinchOrigin);var zoomPixel=this.currentCenter;var size=this.map.getSize();location.lon+=resolution*((size.w/2)-zoomPixel.x);location.lat-=resolution*((size.h/2)-zoomPixel.y);this.map.setCenter(location,zoom);}},CLASS_NAME:"OpenLayers.Control.PinchZoom"}); diff --git a/web/js/map-OpenLayers.js b/web/js/map-OpenLayers.js index b76a7b166..cd77beefb 100644 --- a/web/js/map-OpenLayers.js +++ b/web/js/map-OpenLayers.js @@ -201,7 +201,8 @@ function fixmystreet_onload() { var showhide = [ 'Show pins', 'Hide pins', 'Dangos pinnau', 'Cuddio pinnau', - "Vis nåler", "Gjem nåler" + "Vis nåler", "Gjem nåler", + "Zeige Stecknadeln", "Stecknadeln ausblenden" ]; for (var i=0; i<showhide.length; i+=2) { if (this.innerHTML == showhide[i]) { @@ -267,19 +268,24 @@ $(function(){ } // Set it up our way - fixmystreet.layer_options = OpenLayers.Util.extend({ - zoomOffset: fixmystreet.zoomOffset, - transitionEffect: 'resize', - numZoomLevels: fixmystreet.numZoomLevels - }, fixmystreet.layer_options); var layer; - if (fixmystreet.layer_options.matrixIds) { - layer = new fixmystreet.map_type(fixmystreet.layer_options); - } else { - layer = new fixmystreet.map_type("", fixmystreet.layer_options); + if (!fixmystreet.layer_options.length) { + fixmystreet.layer_options = [ fixmystreet.layer_options ]; + } + for (var i=0; i<fixmystreet.layer_options.length; i++) { + fixmystreet.layer_options[i] = OpenLayers.Util.extend({ + zoomOffset: fixmystreet.zoomOffset, + transitionEffect: 'resize', + numZoomLevels: fixmystreet.numZoomLevels + }, fixmystreet.layer_options[i]); + if (fixmystreet.layer_options[i].matrixIds) { + layer = new fixmystreet.map_type(fixmystreet.layer_options[i]); + } else { + layer = new fixmystreet.map_type("", fixmystreet.layer_options); + } + fixmystreet.map.addLayer(layer); } - fixmystreet.map.addLayer(layer); if (!fixmystreet.map.getCenter()) { var centre = new OpenLayers.LonLat( fixmystreet.longitude, fixmystreet.latitude ); diff --git a/web/js/map-wmts-zurich.js b/web/js/map-wmts-zurich.js index 63f3f9cd7..12d267775 100644 --- a/web/js/map-wmts-zurich.js +++ b/web/js/map-wmts-zurich.js @@ -2,6 +2,16 @@ * Maps for FMZ using Zurich council's WMTS tile server */ +$(function(){ + $('#map_layer_toggle').toggle(function(){ + $(this).text('Luftbild'); + fixmystreet.map.setBaseLayer(fixmystreet.map.layers[1]); + }, function(){ + $(this).text('Stadtplan'); + fixmystreet.map.setBaseLayer(fixmystreet.map.layers[0]); + }); +}); + /* * set_map_config() is called on dom ready in map-OpenLayers.js * to setup the way the map should operate. @@ -35,16 +45,16 @@ fixmystreet.map_options = { maxExtent: new OpenLayers.Bounds(676000, 241000, 690000, 255000), units: 'm', - scales: [ '250000', '125000', '64000', '32000', '16000', '8000', '4000', '2000', '1000', '500'] + scales: [ '250000', '125000', '64000', '32000', '16000', '8000', '4000', '2000', '1000' ] }; - fixmystreet.layer_options = { + var layer_options = { projection: new OpenLayers.Projection("EPSG:21781"), - name: "Luftbild", - layer: "Luftbild", + name: "Hybrid", + layer: "Hybrid", matrixSet: "nativeTileMatrixSet", requestEncoding: "REST", - url: "http://www.wmts.stadt-zuerich.ch/Luftbild/MapServer/WMTS/tile/", + url: "http://www.wmts.stadt-zuerich.ch/Hybrid/MapServer/WMTS/tile/", style: "default", matrixIds: [ { identifier: "0", matrixHeight: 2, matrixWidth: 2, scaleDenominator: 250000, supportedCRS: "urn:ogc:def:crs:EPSG::21781", tileHeight: 256, tileWidth: 256, topLeftCorner: { lat: 30814423, lon: -29386322 } }, @@ -59,6 +69,13 @@ { identifier: "9", matrixHeight: 415, matrixWidth: 414, scaleDenominator: 500, supportedCRS: "urn:ogc:def:crs:EPSG::21781", tileHeight: 256, tileWidth: 256, topLeftCorner: { lat: 30814423, lon: -29386322 } } ] }; + fixmystreet.layer_options = [ + layer_options, OpenLayers.Util.applyDefaults({ + name: "Stadtplan", + layer: "Stadtplan", + url: "http://www.wmts.stadt-zuerich.ch/Stadtplan/MapServer/WMTS/tile/" + }, layer_options) + ]; // Give main code a new bbox_strategy that translates between // lat/lon and our swiss coordinates |