TODO Restrict to (the complement of) a set of values
atValues(tpose,values) → tpose
minusValues(tpose,values) → tpose
SELECT atValues(tpose '[Pose(Point(2 2), 0.3)@2001-01-01, Pose(Point(2 2), 0.7)@2001-01-03]', 'Pose(Point(2 2), 0.5)'); -- {[Pose(Point(2 2),0.5)@2001-01-02]} SELECT minusValues(tpose '[Pose(Point(2 2), 0.3)@2001-01-01, Pose(Point(2 2), 0.7)@2001-01-03]', 'Pose(Point(2 2), 0.5)'); /* {[Pose(Point(2 2),0.3)@2001-01-01, Pose(Point(2 2),0.5)@2001-01-02), (Pose(Point(2 2),0.5)@2001-01-02, Pose(Point(2 2),0.7)@2001-01-03]} */
TODO Restrict to (the complement of) a geometry
atGeometry(tpose,geometry) → tpose
minusGeometry(tpose,geometry) → tpose
SELECT atGeometry(tpose '[Pose(Point(2 2), 0.3)@2001-01-01, Pose(Point(2 2), 0.7)@2001-01-03]', 'Polygon((40 40,40 50,50 50,50 40,40 40))'); SELECT minusGeometry(tpose '[Pose(Point(2 2), 0.3)@2001-01-01, Pose(Point(2 2), 0.7)@2001-01-03]', 'Polygon((40 40,40 50,50 50,50 40,40 40))'); /* {(Pose(Point(2 2),0.342593)@2001-01-01 05:06:40.364673+01, Pose(Point(2 2),0.7)@2001-01-03]} */