Skip to main content

What I try to do is to download a raster from a WMTS to use it as a background image for a report. I do not want to download the entire service, only a part to use as background. The result I get is only working on very zoomed out tile matrices, like 04, where the resolution is not useful:

 

On deeper levels the FeatureReader is downloading a lot of tiles, which takes a very long time.

The WMTS I use is a Dutch one, in epsg:28992. I wonder if I am doing something wrong, or this is never developed / tested for this coordinate system?

The point is on 147513.92, 523126.09.

The WMTS is https://service.pdok.nl/hwh/luchtfotorgb/wmts/v1_0?

The Layer is Actueel_orthoHR

Attached the 2023 workspace.

 

hi @nielsgerrits not sure if this completely is what you want, but if I add a boundsextractor after your bufferer, I can use these bbox in the ‘Tile Selection Options’:

 

Setting the resolution to 13 for example, it only gets the tile you’re interested in:

 


@becchr just beat me to the answer 😀

It looks like the spatial filter you set is completely ignored when reading WMTS.

 


hi @nielsgerrits not sure if this completely is what you want, but if I add a boundsextractor after your bufferer, I can use these bbox in the ‘Tile Selection Options’:

 

Setting the resolution to 13 for example, it only gets the tile you’re interested in:

 

Thanks Christophe, should have looked harder. I assumed the bounding box stuff was handeled by the default setting in the FeatureReader and did not look further. :-/


@becchr just beat me to the answer 😀

It looks like the spatial filter you set is completely ignored when reading WMTS.

 

This is exactly the case. Thanks for looking into it!


@becchr just beat me to the answer 😀

It looks like the spatial filter you set is completely ignored when reading WMTS.

 

This is exactly the case. Thanks for looking into it!

I agree, the Spatial filter parameter did not work for me either.

I typically end up adding a clipper from the output port of the WMTS reader, to get the raster/s intersected by a bounding box and then using a raster mosaicker to merge mutipe parts of tiles.


So just adding something here: I was trying to access a WMTS service provided by a GeoServer with FME.

It seems that there is a bug in GeoServer which can generate something wrong in the GetCapabilities. Specifically it gets the top left corner back to front with certain projection (i.e., 3857). When FME tries to intersect the bounding box with the level extent it fails to intersect. Note, this is a bug in GeroServer.

But FME’s fallback is to just request all tiles on that level…
 

<WMTS> The search envelope Min X:'1124574.053288556', Max X:'1125315.9954426512', Min Y:'7588926.522241925', Max Y:'7589533.130884883', and Coordinate System:'EPSG:3857' did not overlap with the tile matrix layer. All tiles will be returned by default. Try changing the parameters of the search envelope.

I do get the logic a bit, however, when the resolution of a service is at something like 5cm and the service is a whole country then the fallback behaviour is really not ideal. 


Reply