On 10 April 2013 21:35, Armin Burger <[email protected]> wrote: > Thomas > > thanks for the clarifications. > > I tried to define a grid that could fit those OGS specs with the following > parameters: > > <grid name="OGCWGS84"> > <metadata> > <title>OGCCRS84Quad</title> <WellKnownScaleSet>urn:ogc:** > def:wkss:OGC:1.0:OGCCRS84Quad<**/WellKnownScaleSet> > </metadata> > <extent>-180 -180 180 180</extent> > <srs>EPSG:4326</srs> > <units>dd</units> > <size>256 256</size> > <resolutions>1.40625000000000 0.703125000000000 0.351562500000000 > 0.175781250000000 8.78906250000000e-2 4.394531 > 25000000e-2 2.19726562500000e-2 1.09863281250000e-2 5.49316406250000e-3 > 2.74658203125000e-3 1.37329101562500e-3 6.8664 > 5507812500e-4 3.43322753906250e-4 1.71661376953125e-4 8.58306884765625e-5 > 4.29153442382812e-5 2.14576721191406e-5 1.07 > 288360595703e-5 5.36441802978516e-6</**resolutions> > </grid> > > For me the capability output looks correct, and the tile level 0 is the > whole world in 1 single tile, with upper and lower quarter left blank. I > guess that's what the specs want it to be and so it should be possible to > satisfy this strange definition if required. >
If that grid definition is the correct one for the GoogleCRS84Quad then fine. However I feel this definition is still very strange, as clients have to know that they should not request tiles with row 0 and 3 for level 2, rows 0,1,6 and 7 for level 3, rows 0,1,2,3,12,13,14,15 for level 4, etc... (i.e. these tiles are all fully over 90 degrees north or under -90 degrees south. > > > I guess that the MapCache definition of the "GoogleCRS84Quad" corresponds > to what the European INSPIRE initiative defines as "InspireCRS84Quad" in > the document > > http://inspire.jrc.ec.europa.**eu/documents/Network_Services/** > TechnicalGuidance_**ViewServices_v3.1.pdf<http://inspire.jrc.ec.europa.eu/documents/Network_Services/TechnicalGuidance_ViewServices_v3.1.pdf> > > It states: > "The level 0 of InspireCRS84Quad is the level 1 of GoogleCRS84Quad. This > level has been discarded because Level 0 of GoogleCRS84Quad allows > representing the whole world in a single 256x256 pixels where the first 64 > and last 64 lines of the tile are left blank. To avoid this situation the > level 0 of InspireCRS84Quad is composed of two tiles representing exactly > the whole world." > Yes, that is the exact definition of what mapcache is using for the "WGS84" grid. However I think the inspire phrase "The level 0 of InspireCRS84Quad is the level 1 of GoogleCRS84Quad" is not exact, as level 1 in GoogleCRS84Quad is 2x2 tiles whereas InspireCRS84Quad's level 0 is 2x1 tiles. > > They do not add the full XML description, however. > > Best regards > Armin > > > > On 04/10/2013 05:50 PM, thomas bonfort wrote: > >> Armin, >> I don't have much to add to what you have already found out. I >> personally consider the GoogleCRS84Quad grid as defined by the spec to >> be broken, and have not implemented its support as it would require some >> specific hacks in the code (as the extent for level 0 needs to be >> hardcoded for this specific grid, instead of it being derived from grid >> properties as is the case with all other grid definitions). >> >> I suppose that support for this could be added if you really need it >> badly. The impact is not negligible as all places where an extent is >> derived from a tile coordinate and vice-versa would need to be updated >> to support this illogical quirk. >> >> FWIW, I believe I had brought this up as a change request to the wmts >> working group, but this was ignored as I am not a member. >> >> best regards, >> >> thomas >> >> >> On 9 April 2013 20:57, Armin Burger <[email protected] >> <mailto:[email protected]>> wrote: >> >> Dear all >> >> I have a question regarding the GoogleCRS84Quad TileMatrixSet >> defined in MapCache. MapCache specifies this in the docs with the >> first level [0] as pixel resolution 0.70312500 deg, and an extent of >> <extent>-180 -90 180 90</extent> >> >> and returns the GoogleCRS84Quad TileMatrixSet in the Capabilities >> response like >> >> <TileMatrixSet> >> <Identifier>WGS84</Identifier> >> <Title>GoogleCRS84Quad</Title> >> <SupportedCRS>urn:ogc:def:crs:**__EPSG:6.3:4326</SupportedCRS> >> <BoundingBox crs="urn:ogc:def:crs:EPSG:6.3:**__4326"> >> >> <LowerCorner>-180.000000 -90.000000</LowerCorner> >> <UpperCorner>180.000000 90.000000</UpperCorner> >> </BoundingBox> >> >> <WellKnownScaleSet>urn:ogc:__**def:wkss:OGC:1.0:__** >> GoogleCRS84Quad</__**WellKnownScaleSet> >> <TileMatrix> >> <Identifier>0</Identifier> >> >> <ScaleDenominator>279541132.__**01435887813568115234</__** >> ScaleDenominator> >> >> <TopLeftCorner>90.000000 -180.000000</TopLeftCorner> >> <TileWidth>256</TileWidth> >> <TileHeight>256</TileHeight> >> <MatrixWidth>2</MatrixWidth> >> <MatrixHeight>1</MatrixHeight> >> </TileMatrix> >> ..... >> </TileMatrixSet> >> >> This looks clear and logical, but the OGC specs at >> http://portal.opengeospatial._**_org/files/?artifact_id=35326 >> >> >> <http://portal.opengeospatial.**org/files/?artifact_id=35326<http://portal.opengeospatial.org/files/?artifact_id=35326> >> > >> define this TileMatrixSet differently as >> >> "E.3 GoogleCRS84Quad (urn:ogc:def:wkss:OGC:1.0:__**GoogleCRS84Quad) >> >> This well-known scale set has been defined to allow quadtree >> pyramids in CRS84. Level 0 allows representing the whole world in a >> single 256x256 pixels (where the first 64 and last 64 lines of the >> tile are left blank). The next level represents the whole world in 2x2 >> tiles of 256x256 pixels and so on in powers of 2. Scale denominator >> is only accurate near the equator." >> >> The level 0 in the OGC specs uses a resolution of 1.40625000. >> >> The tile 0/0/0 in MapCache is not a single tile as in the OGC specs >> but the first out of 2 tiles for this level, correctly defined with >> MatrixWidth 2 and MatrixHeight 1 (level 1 has 4x2 tiles). For me the >> OGC specs are not logical, because the TopLeft corner would >> correspond to 180 -180 degrees which makes no sense for me, but >> somehow they are regarded as the default specs... >> >> So the XML definition of the OGC specs should probably result in >> something like >> >> <TileMatrix> >> <Identifier>0</Identifier> >> <ScaleDenominator>559082264.__**0287178</ScaleDenominator> >> >> <TopLeftCorner>180.000000 -180.000000</TopLeftCorner> >> <TileWidth>256</TileWidth> >> <TileHeight>256</TileHeight> >> <MatrixWidth>1</MatrixWidth> >> <MatrixHeight>1</MatrixHeight> >> </TileMatrix> >> >> Unfortunately the OGC doc does not provide this matrix set's full >> definition in XML to check this. >> >> >> So I'm wondering which is the correct definition? And any idea how >> to deal with this discrepancy? >> >> Thanks >> Armin >> >> >> >> >> >> >> ______________________________**___________________ >> mapserver-users mailing list >> [email protected].__**org >> >> <mailto:mapserver-users@lists.**osgeo.org<[email protected]> >> > >> >> http://lists.osgeo.org/__**mailman/listinfo/mapserver-__**users<http://lists.osgeo.org/__mailman/listinfo/mapserver-__users> >> >> <http://lists.osgeo.org/**mailman/listinfo/mapserver-**users<http://lists.osgeo.org/mailman/listinfo/mapserver-users> >> > >> >> >>
_______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users
