Bug report #8134
WMT-S doesn't draw an image if zoomed in beyond maximum tilematrix
Status: | Closed | ||
---|---|---|---|
Priority: | Normal | ||
Assignee: | Jürgen Fischer | ||
Category: | Web Services clients/WMS | ||
Affected QGIS version: | master | Regression?: | No |
Operating System: | ALL | Easy fix?: | No |
Pull Request or Patch supplied: | No | Resolution: | invalid |
Crashes QGIS or corrupts data: | No | Copied to github as #: | 16964 |
Description
We are developing a new WMTS service and have found QGIS tries to request tiles for levels lower than supported in the GC TileMatrix. I have tested this in ArcMap(!) 10.1 and it works by resampling the lowest provided tiles as you zoom in.
With one of our EPSG:3857 tilesets one we zoom in beyond a scale of 1:1690 and nothing displays on the map canvas. This is because QGIS requests tiles that do not exists. e.g
...EPSG:3857/20/516713/328293.png - return HTTP 404 where level 19 is the highest supported.
I can provide URLs to our testing site via private email if required (once testing is finished it will be freely available on http://data.linz.govt.nz).
Here's the relevant part of the GC doc:
<TileMatrixSetLink> <TileMatrixSet>EPSG:3857</TileMatrixSet> </TileMatrixSetLink> <ResourceURL format="image/png" resourceType="tile" template="http://xxxxxx/tiles/v4/layer=552,{style}/{TileMatrixSet}/{TileMatrix}/{TileCol}/{TileRow}.png"/> <ResourceURL format="application/json" resourceType="FeatureInfo" template="http://xxxxxx/wmts/1.0.0/layer/552/featureinfo/{TileMatrixSet}/{TileMatrix}/{TileCol}/{TileRow}.json"/> <ResourceURL format="text/html" resourceType="FeatureInfo" template="http://xxxxxx/wmts/1.0.0/layer/552/featureinfo/{TileMatrixSet}/{TileMatrix}/{TileCol}/{TileRow}.html"/> </Layer> <TileMatrixSet> <ows:Title>GoogleMapsCompatible</ows:Title> <ows:Abstract> The well-known 'GoogleMapsCompatible' tile matrix set defined by the OGC WMTS specification </ows:Abstract> <ows:Identifier>EPSG:3857</ows:Identifier> <ows:SupportedCRS>urn:ogc:def:crs:EPSG:6.18:3:3857</ows:SupportedCRS> <WellKnownScaleSet>urn:ogc:def:wkss:OGC:1.0:GoogleMapsCompatible</WellKnownScaleSet> <TileMatrix> <ows:Identifier>0</ows:Identifier> <ScaleDenominator>559082264.0287178</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>1</MatrixWidth> <MatrixHeight>1</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>1</ows:Identifier> <ScaleDenominator>279541132.0143589</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>2</MatrixWidth> <MatrixHeight>2</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>2</ows:Identifier> <ScaleDenominator>139770566.0071794</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>4</MatrixWidth> <MatrixHeight>4</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>3</ows:Identifier> <ScaleDenominator>69885283.00358972</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>8</MatrixWidth> <MatrixHeight>8</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>4</ows:Identifier> <ScaleDenominator>34942641.50179486</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>16</MatrixWidth> <MatrixHeight>16</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>5</ows:Identifier> <ScaleDenominator>17471320.75089743</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>32</MatrixWidth> <MatrixHeight>32</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>6</ows:Identifier> <ScaleDenominator>8735660.375448715</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>64</MatrixWidth> <MatrixHeight>64</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>7</ows:Identifier> <ScaleDenominator>4367830.187724357</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>128</MatrixWidth> <MatrixHeight>128</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>8</ows:Identifier> <ScaleDenominator>2183915.093862179</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>256</MatrixWidth> <MatrixHeight>256</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>9</ows:Identifier> <ScaleDenominator>1091957.546931089</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>512</MatrixWidth> <MatrixHeight>512</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>10</ows:Identifier> <ScaleDenominator>545978.7734655447</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>1024</MatrixWidth> <MatrixHeight>1024</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>11</ows:Identifier> <ScaleDenominator>272989.3867327723</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>2048</MatrixWidth> <MatrixHeight>2048</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>12</ows:Identifier> <ScaleDenominator>136494.6933663862</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>4096</MatrixWidth> <MatrixHeight>4096</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>13</ows:Identifier> <ScaleDenominator>68247.34668319309</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>8192</MatrixWidth> <MatrixHeight>8192</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>14</ows:Identifier> <ScaleDenominator>34123.67334159654</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>16384</MatrixWidth> <MatrixHeight>16384</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>15</ows:Identifier> <ScaleDenominator>17061.83667079827</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>32768</MatrixWidth> <MatrixHeight>32768</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>16</ows:Identifier> <ScaleDenominator>8530.918335399136</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>65536</MatrixWidth> <MatrixHeight>65536</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>17</ows:Identifier> <ScaleDenominator>4265.459167699568</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>131072</MatrixWidth> <MatrixHeight>131072</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>18</ows:Identifier> <ScaleDenominator>2132.729583849784</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>262144</MatrixWidth> <MatrixHeight>262144</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>19</ows:Identifier> <ScaleDenominator>1066.364791925</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>524288</MatrixWidth> <MatrixHeight>524288</MatrixHeight> </TileMatrix> <TileMatrix> <ows:Identifier>20</ows:Identifier> <ScaleDenominator>1066.364791925</ScaleDenominator> <TopLeftCorner>-20037508.34278925 20037508.34278925</TopLeftCorner> <TileWidth>256</TileWidth> <TileHeight>256</TileHeight> <MatrixWidth>1048576</MatrixWidth> <MatrixHeight>1048576</MatrixHeight> </TileMatrix> </TileMatrixSet>
History
#1 Updated by Jürgen Fischer over 11 years ago
But there is a TileMatrix 20 in the capabilities, but it has the same scale dominator as 19. So I guess it's undefined which TileMatrix to use at the highest scale.
#2 Updated by Jeremy Palmer over 11 years ago
- Resolution set to invalid
Ah thanks. That will be the problem. Sorry. I will contact our service devs.
#3 Updated by Jürgen Fischer over 11 years ago
- Status changed from Open to Closed