Insert a temporal cell into another one, or update one with another
insert(tcell,tcell,connect boolean=true) → tcell update(tcell,tcell,connect boolean=true) → tcell
SELECT insert(th3index '[871fa4418ffffff@2001-01-01, 871fa4418ffffff@2001-01-02]', th3index '[871fa44a8ffffff@2001-01-03, 871fa44a8ffffff@2001-01-04]'); -- [871fa4418ffffff@2001-01-01, 871fa44a8ffffff@2001-01-03, 871fa44a8ffffff@2001-01-04] SELECT insert(tquadbin '[48a6227affffffff@2001-01-01, 48a6227affffffff@2001-01-02]', tquadbin '[485623ffffffffff@2001-01-03, 485623ffffffffff@2001-01-04]'); /* [48a6227affffffff@2001-01-01, 485623ffffffffff@2001-01-03, 485623ffffffffff@2001-01-04] */ SELECT insert(ts2cell '[47c3c@2001-01-01, 47c3c@2001-01-02]', ts2cell '[47c4@2001-01-03, 47c4@2001-01-04]'); -- [47c3c@2001-01-01, 47c4@2001-01-03, 47c4@2001-01-04]
Delete a time value from a temporal cell
deleteTime(tcell,times,connect boolean=true) → tcell
SELECT deleteTime(th3index '[871fa4418ffffff@2001-01-01, 871fa4418ffffff@2001-01-04]', tstzspan '[2001-01-02, 2001-01-03]'); -- [871fa4418ffffff@2001-01-01, 871fa4418ffffff@2001-01-04] SELECT deleteTime(tquadbin '[48a6227affffffff@2001-01-01, 48a6227affffffff@2001-01-04]', tstzspan '[2001-01-02, 2001-01-03]'); -- [48a6227affffffff@2001-01-01, 48a6227affffffff@2001-01-04] SELECT deleteTime(ts2cell '[47c3c@2001-01-01, 47c3c@2001-01-04]', tstzspan '[2001-01-02, 2001-01-03]'); -- [47c3c@2001-01-01, 47c3c@2001-01-04]
Set the values of a block of pixels of a raster band
setValues(rast raster,nband integer,x integer,y integer,newvalueset float[], noset boolean[]=NULL,keepnodata boolean=false) → raster
The raster PostGIS's ST_SetValues answers: band nband takes the values of newvalueset, an array of one row or of rows of the same length, over the block of pixels whose upper left pixel is at column x and row y, both starting at 1. A NULL value sets the pixel to the nodata value of the band, or to the least value of its type when the band states none. A pixel whose flag in noset is true is left as it is, the flags read over the block they share with the values, and so is a pixel holding the nodata value when keepnodata is true. The pixels of the block beyond the raster are left out, and a value beyond the pixel type is read into it as PostGIS reads it. A band the raster lacks, a pixel x, y outside it and an array of more than two dimensions are refused.
SELECT dumpValues(setValues(addBand(makeEmptyRaster(3, 2, 0, 2, 1, -1, 0, 0,
3857), NULL::integer, '16BSI', 0, -1), 1, 2, 1, ARRAY[[1, 2], [NULL, 4]]), 1);
-- {{0,1,2},{0,NULL,4}}