Le mercredi 22 août 2012 20:13:39, Radim Blazek a écrit : > Even, > thanks for exhaustive explanation and testing. > > On Wed, Aug 22, 2012 at 2:37 PM, Even Rouault > > <even.roua...@mines-paris.org> wrote: > >> I found in GDAL ecwdataset.cpp that it is treating single row > > > >> requests in IRasterIO in a special way: > > I tried the following Python script that must be representative of how > > QGIS must do picking (I guess it does a RasterIO(, .... x, y, 1, 1, ... > > 1, 1) ) > > Yes. > > > I suppose your workaround in QGIS will be to read 1x2 pixel or something > > like that. > > Yes, I have used 2x2.
Radim, I've tested the big ECW (1.8 GB, 141970 x 141970) provided by Jukka and could indeed reproduce a noticable performance issue when simulating picking with my tiny GDAL python script. In QGIS, the performance was still OK however, a few hundreds of milliseconds for each picking. It is just when you do a lot of iterations that you begin to notice the slowness, or if the dataset is really huge. I've fixed that in http://trac.osgeo.org/gdal/ticket/4790 in trunk and 1.9 branch. So it will be in GDAL 1.9.2. Actually, as I think that the ECW driver is generally available through a plugin (and not built-in in GDAL DLL), this could be available sooner if the ECW plugin is rebuilt with the fixed sources. Best regards, Even _______________________________________________ Qgis-developer mailing list Qgis-developer@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/qgis-developer