Devuelve el identificador de referencia espacial
SRID(stbox) → integer
SELECT SRID(stbox 'STBOX ZT(((1.0,2.0,3.0),(4.0,5.0,6.0)),[2001-01-01,2001-01-02])'); -- 0 SELECT SRID(stbox 'SRID=5676;STBOX XT(((1.0,2.0),(4.0,5.0)),[2001-01-01,2001-01-02])'); -- 5676 SELECT SRID(stbox 'GEODSTBOX T([2001-01-01,2001-01-02))'); -- ERROR: The box must have space dimension
Especificar el identificador de referencia espacial
setSRID(stbox) → stbox
SELECT setSRID(stbox 'STBOX ZT(((1.0,2.0,3.0),(4.0,5.0,6.0)), [2001-01-01,2001-01-02])', 5676); -- SRID=5676;STBOX ZT(((1,2,3),(4,5,6)),[2001-01-01,2001-01-02])
Transformar a una referencia espacial diferente
transform(stbox,to_srid integer) → stbox
transform(stbox,pipeline text,to_srid integer,is_forward bool=true) → stbox
La función transform
especifica la transformación con un SRID de destino. Se genera un error cuando el cuadro de entrada tiene un SRID desconocido (representado por 0).
La función transformPipeline
especifica la transformación con una canalización de transformación de coordenadas definida representada con el siguiente formato de cadena: urn:ogc:def:coordinateOperation:AUTHORITY::CODE
. El SRID del cuadro de entrada se ignora y el SRID del cuadro de salida se establecerá en cero a menos que se proporcione un valor a través del parámetro opcional to_srid
. Como se indica en el último parámetro, la canalización se ejecuta de forma predeterminada en dirección hacia adelante; al establecer el parámetro en falso, la canalización se ejecuta en la dirección inversa.
SELECT round(transform(stbox 'SRID=4326;STBOX XT(((2.340088, 49.400250), (6.575317, 51.553167)),[2001-01-01,2001-01-02])', 3812), 6); /* SRID=3812;STBOX XT(((502773.429981,511805.120402),(803028.908265,751590.742629)), [2001-01-01, 2001-01-02]) */
WITH test(box, pipeline) AS ( SELECT stbox 'SRID=4326;GEODSTBOX Z((-0.1275,50.846667,100),(4.3525,51.507222,100))', text 'urn:ogc:def:coordinateOperation:EPSG::16031' ) SELECT asEWKT(transformPipeline(transformPipeline(box, pipeline, 4326), pipeline, 4326, false), 6) FROM test; -- SRID=4326;GEODSTBOX Z((-0.1275,50.846667,100),(4.3525,51.507222,100))