A trgeometry can be built directly from its component types, a reference geometry plus a temporal pose:
Construct a temporal rigid geometry from a reference geometry and a temporal pose
trgeometry(geometry, tpose) → trgeometry
SELECT asText(trgeometry( geometry 'Polygon((0 0,1 0,1 1,0 1,0 0))', tpose 'Pose(Point(0 0), 0.0)@2001-01-01')); -- POLYGON((0 0,1 0,1 1,0 1,0 0));Pose(POINT(0 0),0)@2001-01-01
Both arguments must share the same SRID. The reference geometry may be a polygon or a polyhedral surface; the pose may be of any temporal subtype.
Append a single instant to an existing trgeometry, growing the underlying pose path
appendInstant(trgeometry, trgeometry [, maxdist float [, maxt interval]]) → trgeometry
SELECT appendInstant( trgeometry 'Polygon((0 0,1 0,1 1,0 1,0 0));[Pose(Point(0 0), 0.0)@2001-01-01]', trgeometry 'Polygon((0 0,1 0,1 1,0 1,0 0));Pose(Point(5 0), 0.0)@2001-01-02');
Append an entire sequence to an existing trgeometry
appendSequence(trgeometry, trgeometry) → trgeometry
SELECT asText(appendSequence(trgeometry 'Polygon((0 0,1 0,1 1,0 1,0 0));
[Pose(Point(0 0), 0.0)@2001-01-01, Pose(Point(10 0), 0.0)@2001-01-02]',
trgeometry 'Polygon((0 0,1 0,1 1,0 1,0 0));
[Pose(Point(20 0), 0.0)@2001-01-03, Pose(Point(30 0), 0.0)@2001-01-04]'));
-- POLYGON((0 0,1 0,1 1,0 1,0 0));
-- {[Pose(POINT(0 0),0)@2001-01-01, Pose(POINT(10 0),0)@2001-01-02],
-- [Pose(POINT(20 0),0)@2001-01-03, Pose(POINT(30 0),0)@2001-01-04]}