Transform a temporal circular buffer to another subtype
tcbufferInst(tcbuffer) → tcbufferInst
tcbufferSeq(tcbuffer) → tcbufferSeq
tcbufferSeqSet(tcbuffer) → tcbufferSeqSet
SELECT asText(tcbufferSeq(tcbuffer 'Cbuffer(Point(1 1), 0.5)@2001-01-01', 'discrete')); -- {Cbuffer(Point(1 1),0.5)@2001-01-01} SELECT asText(tcbufferSeq(tcbuffer 'Cbuffer(Point(1 1), 0.5)@2001-01-01')); -- [Cbuffer(Point(1 1),0.5)@2001-01-01] SELECT asText(tcbufferSeqSet(tcbuffer 'Cbuffer(Point(1 1), 0.5)@2001-01-01')); -- {[Cbuffer(Point(1 1),0.5)@2001-01-01]}
Transform a temporal circular buffer to another interpolation
setInterp(tcbuffer, interp) → tcbuffer
SELECT asText(setInterp(tcbuffer 'Cbuffer(Point(1 1),0.2)@2001-01-01','linear')); -- [Cbuffer(Point(1 1),0.2)@2001-01-01] SELECT asText(setInterp(tcbuffer '{[Cbuffer(Point(1 1),0.1)@2001-01-01], [Cbuffer(Point(1 1),0.2)@2001-01-02]}', 'discrete')); -- {Cbuffer(Point(1 1),0.1)@2001-01-01, Cbuffer(Point(1 1),0.2)@2001-01-02}
Round the points and the radii of the temporal circular buffer to the number of decimal places
round(tcbuffer,integer) → tcbuffer
SELECT asText(round(tcbuffer '{[Cbuffer(Point(1 1.123456789),0.123456789)@2001-01-01, Cbuffer(Point(1 1),0.5)@2001-01-02)}', 3)); /* {[Cbuffer(Point(1 1.123),0.123)@2001-01-01, Cbuffer(Point(1 1),0.5)@2001-01-02)} */