ST_Reskew
Name
ST_Reskew — Resample a raster by adjusting only its skew (or rotation parameters). New pixel values are computed using the NearestNeighbor (english or american spelling), Bilinear, Cubic, CubicSpline or Lanczos resampling algorithm. Default is NearestNeighbor.
Synopsis
    
     raster
     
      ST_Reskew
     
     (
    
    raster
    
     rast
    
    , double precision
    
     skewxy
    
    , text
    
     algorithm=NearestNeighbor
    
    , double precision
    
     maxerr=0.125
    
    
     )
    
    ;
   
    
     raster
     
      ST_Reskew
     
     (
    
    raster
    
     rast
    
    , double precision
    
     skewx
    
    , double precision
    
     skewy
    
    , text
    
     algorithm=NearestNeighbor
    
    , double precision
    
     maxerr=0.125
    
    
     )
    
    ;
   
Description
Resample a raster by adjusting only its skew (or rotation parameters). New pixel values are computed using the NearestNeighbor (english or american spelling), Bilinear, Cubic, CubicSpline or Lanczos resampling algorithm. The default is NearestNeighbor which is the fastest but results in the worst interpolation.
   
    skewx
   
   and
   
    skewy
   
   define the new skew.
  
The extent of the new raster will encompass the extent of the provided raster.
   A maxerror percent of 0.125 if no
   
    maxerr
   
   is specified.
  
       
      | 
     |
| 
       Refer to: GDAL Warp resampling methods for more details.  | 
    
       
      | 
     |
| 
       ST_Reskew is different from ST_SetSkew in that ST_SetSkew do not resample the raster to match the raster extent. ST_SetSkew only changes the metadata (or georeference) of the raster to correct an originally mis-specified skew. ST_Reskew results in a raster having different width and height computed to fit the geographic extent of the input raster. ST_SetSkew do not modify the width, nor the height of the raster.  | 
    
Availability: 2.0.0 Requires GDAL 1.6.1+
Changed: 2.1.0 Works on rasters with no SRID
Examples
A simple example reskewing a raster from a skew of 0.0 to a skew of 0.0015.
-- the original raster non-rotated SELECT ST_Rotation(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0)); -- result 0 -- the reskewed raster raster rotation SELECT ST_Rotation(ST_Reskew(ST_AddBand(ST_MakeEmptyRaster(100, 100, 0, 0, 0.001, -0.001, 0, 0, 4269), '8BUI'::text, 1, 0), 0.0015)); -- result -0.982793723247329
See Also
ST_Resample , ST_Rescale , ST_SetSkew , ST_SetRotation , ST_SkewX , ST_SkewY , ST_Transform