Thanks Even!

To re-iterate the value of passing arguments, here's a use case:

Say I have 20 years of climate data, 2001-2020, 1 raster per year. Using gdalbuildvrt I create a .vrt with all those rasters in chronological order.

Now say I want to stat a range of years, such as:

gdal_translate ... -oo PixelFunctionArguments="startYear=2012" -oo PixelFunctionArguments="endYear=2015"

In my .vrt python pixel function I might have something like this:

   stIdx = startYear - 2001
   endIdx = endYear - 2001
   ...
   np.someMethod(ar_in[stIdx:endIdx])


This would truly make VRT's dynamic. Instead of a temporal set of rasters, it could be a mix of elevation and land type. You get the idea.

Right now, it's easy enough to have the .vrt act as a template and do substitution with desired values. Passing arguments would make it very, very clean.

Thanks!
Scott

On 1/29/24 02:54, Even Rouault via gdal-dev wrote:
Hi,

no, the values of pixel function arguments are hardcoded in the VRT. If someone wanted to implement what you mention, that should rather be done as open option (-oo) of the VRT driver

Even

Le 29/01/2024 à 08:29, Scott via gdal-dev a écrit :
With a python pixel function in a .vrt file, is it possible to pass values from the command line?

Example:
gdal_translate ... -lco PixelFunctionArguments=? or -lco -kwargs=?

Basically I want to change the 'min' and 'max' values on the command line:
<PixelFunctionArguments min="0" max="100" />

Thanks!
Scott

_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to