Los siguientes operadores comparan el cuadro delimitador espaciotemporal de las celdas temporales en lugar de la contención en la jerarquía de celdas. tcell es un tipo temporal espacial: su cuadro delimitador es un stbox que combina la extensión espacial de las fronteras de las celdas (su envolvente de longitud/latitud en el SRID 4326), geodésica para una celda H3 o S2 y plana para una celda QUADBIN, con el período de tiempo tstzspan de la trayectoria. Los operadores de más abajo comparan ese cuadro a lo largo de los ejes espaciales y/o del eje temporal. Véase la sección de indexación para las clases de operadores que hacen que estos operadores puedan usar índices.
El operador @> comprueba la contención del cuadro delimitador espaciotemporal (la extensión espacial y el tiempo conjuntamente), no la contención en la jerarquía de celdas. Para comprobar si una celda es el ancestro de otra en una resolución dada, use cellToParent.
Devolver el cuadro delimitador espaciotemporal de una celda temporal, o ese cuadro expandido en la dimensión espacial por un valor flotante
stbox(tcell) → stbox expandSpace(tcell,float) → stbox
El cuadro es la envolvente de las fronteras de las celdas, geodésica para una celda H3 o S2 y plana para una celda QUADBIN, junto con el período de tiempo de la trayectoria, de modo que es la clave que almacenan ambas clases de operadores de índice de la sección de indexación.
SELECT round(stbox(th3index '871fa44a8ffffff@2001-01-01'), 6); /* SRID=4326;GEODSTBOX XT(((4.280027,50.79295),(4.314775,50.815648)), [2001-01-01, 2001-01-01]) */ SELECT round(expandSpace(th3index '871fa44a8ffffff@2001-01-01', 1), 6); /* SRID=4326;GEODSTBOX XT(((3.280027,49.79295),(5.314775,51.815648)), [2001-01-01, 2001-01-01]) */ SELECT round(stbox(tquadbin '48a6227affffffff@2001-01-01'), 6); /* SRID=4326;STBOX XT(((4.21875,50.736455),(4.570313,50.958427)), [2001-01-01, 2001-01-01]) */ SELECT round(expandSpace(tquadbin '48a6227affffffff@2001-01-01', 1), 6); /* SRID=4326;STBOX XT(((3.21875,49.736455),(5.570313,51.958427)), [2001-01-01, 2001-01-01]) */ SELECT round(stbox(ts2cell '47c3c@2001-01-01'), 6); /* SRID=4326;GEODSTBOX XT(((3.780069,50.590023),(4.676786,51.283168)), [2001-01-01, 2001-01-01]) */ SELECT round(expandSpace(ts2cell '47c3c@2001-01-01', 1), 6); /* SRID=4326;GEODSTBOX XT(((2.780069,49.590023),(5.676786,52.283168)), [2001-01-01, 2001-01-01]) */
Operadores topológicos
{tstzspan,stbox,tcell} {&&, <@, @>, ~=, -|-} {tstzspan,stbox,tcell} → boolean
Solapamiento, contiene, está contenido en, igual y adyacente, sobre el cuadro delimitador
SELECT th3index '871fa44a8ffffff@2001-01-01' && tstzspan '[2001-01-01, 2001-01-02]'; -- t SELECT th3index '871fa44a8ffffff@2001-01-01' ~= th3index '871fa44a8ffffff@2001-01-01'; -- t SELECT tquadbin '485623ffffffffff@2001-01-01' && tstzspan '[2001-01-01, 2001-01-02]'; -- t SELECT tquadbin '485623ffffffffff@2001-01-01' ~= tquadbin '485623ffffffffff@2001-01-01'; -- t SELECT ts2cell '47c3c@2001-01-01' && tstzspan '[2001-01-01, 2001-01-02]'; -- t SELECT ts2cell '47c3c@2001-01-01' ~= ts2cell '47c3c@2001-01-01'; -- t
Operadores de posición
{stbox,tcell} {<<, &<, >>, &>} {stbox,tcell} → boolean
{stbox,tcell} {<<|, &<|, |>>, |&>} {stbox,tcell} → boolean
{tstzspan,stbox,tcell} {<<#, &<#, #>>, #&>} {tstzspan,stbox,tcell} → boolean
Posición relativa a lo largo de los ejes espaciales (estrictamente a la izquierda, solapa por la izquierda, solapa por la derecha, estrictamente a la derecha; estrictamente debajo, solapa por debajo, solapa por encima, estrictamente encima) y a lo largo del eje temporal (estrictamente antes, solapa antes, estrictamente después, solapa después)
SELECT th3index '871fa44a8ffffff@2001-01-01' << th3index '871fa44aeffffff@2001-01-01'; -- f SELECT tquadbin '485623ffffffffff@2001-01-01' << tquadbin '48b6227abfffffff@2001-01-01'; -- f SELECT ts2cell '47c3c@2001-01-01' << ts2cell '47c4@2001-01-01'; -- f
SELECT th3index '871fa44a8ffffff@2001-01-01' <<# th3index '871fa44aeffffff@2001-01-05'; -- t SELECT th3index '871fa44a8ffffff@2001-01-01' #>> th3index '871fa44aeffffff@2001-01-05'; -- f SELECT tquadbin '485623ffffffffff@2001-01-01' <<# tquadbin '48b6227abfffffff@2001-01-05'; -- t SELECT tquadbin '485623ffffffffff@2001-01-01' #>> tquadbin '48b6227abfffffff@2001-01-05'; -- f SELECT ts2cell '47c3c@2001-01-01' <<# ts2cell '47c4@2001-01-05'; -- t SELECT ts2cell '47c3c@2001-01-01' #>> ts2cell '47c4@2001-01-05'; -- f