<refentry id="ST_Shift_Longitude">
<refnamediv>
- <refname>ST_Shift_Longitude</refname>
+ <refname>ST_ShiftLongitude</refname>
<refpurpose>Reads every point/vertex in every component of every feature
in a geometry, and if the longitude coordinate is <0, adds 360
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
- <funcdef>geometry <function>ST_Shift_Longitude</function></funcdef>
+ <funcdef>geometry <function>ST_ShiftLongitude</function></funcdef>
<paramdef><type>geometry </type> <parameter>geomA</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>&Z_support;</para>
<para>Enhanced: 2.0.0 support for Polyhedral surfaces and TIN was introduced.</para>
+ <para>NOTE: this function was renamed from "ST_Shift_Longitude" in 2.2.0</para>
<para>&P_support;</para>
<para>&T_support;</para>
</refsection>
<title>Examples</title>
<programlisting>--3d points
-SELECT ST_AsEWKT(ST_Shift_Longitude(ST_GeomFromEWKT('SRID=4326;POINT(-118.58 38.38 10)'))) As geomA,
- ST_AsEWKT(ST_Shift_Longitude(ST_GeomFromEWKT('SRID=4326;POINT(241.42 38.38 10)'))) As geomb
+SELECT ST_AsEWKT(ST_ShiftLongitude(ST_GeomFromEWKT('SRID=4326;POINT(-118.58 38.38 10)'))) As geomA,
+ ST_AsEWKT(ST_ShiftLongitude(ST_GeomFromEWKT('SRID=4326;POINT(241.42 38.38 10)'))) As geomb
geomA geomB
---------- -----------
SRID=4326;POINT(241.42 38.38 10) SRID=4326;POINT(-118.58 38.38 10)
--regular line string
-SELECT ST_AsText(ST_Shift_Longitude(ST_GeomFromText('LINESTRING(-118.58 38.38, -118.20 38.45)')))
+SELECT ST_AsText(ST_ShiftLongitude(ST_GeomFromText('LINESTRING(-118.58 38.38, -118.20 38.45)')))
st_astext
----------
0, 0, 1, $2 * $4, $3 * $5, 0)'
LANGUAGE 'sql' IMMUTABLE STRICT;
--- Availability: 1.2.2
-CREATE OR REPLACE FUNCTION ST_Shift_Longitude(geometry)
+-- Availability: 2.2.0
+CREATE OR REPLACE FUNCTION ST_ShiftLongitude(geometry)
RETURNS geometry
AS 'MODULE_PATHNAME', 'LWGEOM_longitude_shift'
LANGUAGE 'c' IMMUTABLE STRICT;
+-- Availability: 1.2.2
+-- Deprecation in 2.2.0
+CREATE OR REPLACE FUNCTION ST_Shift_Longitude(geometry)
+ RETURNS geometry AS
+ $$ SELECT _postgis_deprecate('ST_Shift_Longitude', 'ST_ShiftLongitude', '2.2.0');
+ SELECT ST_ShiftLongitude($1);
+ $$
+ LANGUAGE 'sql' IMMUTABLE STRICT;
+
-----------------------------------------------------------------------------
-- BOX3D FUNCTIONS
-----------------------------------------------------------------------------
AS 'MODULE_PATHNAME', 'BOX2D_construct'
LANGUAGE 'c' IMMUTABLE STRICT;
-
--- Availability: 1.2.2
-CREATE OR REPLACE FUNCTION ST_Combine_BBox(box2d,geometry)
- RETURNS box2d
- AS 'MODULE_PATHNAME', 'BOX2D_combine'
- LANGUAGE 'c' IMMUTABLE;
-
-----------------------------------------------------------------------
-- ST_ESTIMATED_EXTENT( <schema name>, <table name>, <column name> )
-----------------------------------------------------------------------
-----------------------------------------------------------------------
-- FIND_EXTENT( <schema name>, <table name>, <column name> )
-----------------------------------------------------------------------
--- Availability: 1.2.2
-CREATE OR REPLACE FUNCTION ST_find_extent(text,text,text) RETURNS box2d AS
+
+-- Availability: 2.2.0
+CREATE OR REPLACE FUNCTION ST_FindExtent(text,text,text) RETURNS box2d AS
$$
DECLARE
schemaname alias for $1;
tablename alias for $2;
columnname alias for $3;
myrec RECORD;
-
BEGIN
FOR myrec IN EXECUTE 'SELECT ST_Extent("' || columnname || '") As extent FROM "' || schemaname || '"."' || tablename || '"' LOOP
return myrec.extent;
$$
LANGUAGE 'plpgsql' IMMUTABLE STRICT;
+-- Availability: 1.2.2
+-- Deprecation in 2.2.0
+CREATE OR REPLACE FUNCTION ST_find_extent(text,text,text) RETURNS box2d AS
+ $$ SELECT _postgis_deprecate('ST_Find_Extent', 'ST_FindExtent', '2.2.0');
+ SELECT ST_FindExtent($1,$2,$3);
+ $$
+ LANGUAGE 'sql' IMMUTABLE STRICT;
-----------------------------------------------------------------------
-- FIND_EXTENT( <table name>, <column name> )
-----------------------------------------------------------------------
--- Availability: 1.2.2
-CREATE OR REPLACE FUNCTION ST_find_extent(text,text) RETURNS box2d AS
+
+-- Availability: 2.2.0
+CREATE OR REPLACE FUNCTION ST_FindExtent(text,text) RETURNS box2d AS
$$
DECLARE
tablename alias for $1;
$$
LANGUAGE 'plpgsql' IMMUTABLE STRICT;
+-- Availability: 1.2.2
+-- Deprecation in 2.2.0
+CREATE OR REPLACE FUNCTION ST_find_extent(text,text) RETURNS box2d AS
+ $$ SELECT _postgis_deprecate('ST_Find_Extent', 'ST_FindExtent', '2.2.0');
+ SELECT ST_FindExtent($1,$2);
+ $$
+ LANGUAGE 'sql' IMMUTABLE STRICT;
-------------------------------------------
-- other lwgeom functions
--------------------------------------------------------------------------------
------------------------------------------------------------------------
--- Availability: 1.2.2
-CREATE OR REPLACE FUNCTION ST_Combine_BBox(box3d,geometry)
+
+-- Availability: 2.2.0
+CREATE OR REPLACE FUNCTION ST_CombineBBox(box3d,geometry)
RETURNS box3d
AS 'MODULE_PATHNAME', 'BOX3D_combine'
LANGUAGE 'c' IMMUTABLE;
+-- Availability: 1.2.2
+-- Deprecation in 2.2.0
+CREATE OR REPLACE FUNCTION ST_Combine_BBox(box3d,geometry)
+ RETURNS box3d AS
+ $$ SELECT _postgis_deprecate('ST_Combine_BBox', 'ST_CombineBbox', '2.2.0');
+ SELECT ST_CombineBbox($1,$2);
+ $$
+ LANGUAGE 'sql' IMMUTABLE;
+
+-- Availability: 2.2.0
+CREATE OR REPLACE FUNCTION ST_CombineBbox(box2d,geometry)
+ RETURNS box2d
+ AS 'MODULE_PATHNAME', 'BOX2D_combine'
+ LANGUAGE 'c' IMMUTABLE;
+
+-- Availability: 1.2.2
+-- Deprecation in 2.2.0
+CREATE OR REPLACE FUNCTION ST_Combine_BBox(box2d,geometry)
+ RETURNS box2d AS
+ $$ SELECT _postgis_deprecate('ST_Combine_BBox', 'ST_CombineBbox', '2.2.0');
+ SELECT ST_CombineBbox($1,$2);
+ $$
+ LANGUAGE 'sql' IMMUTABLE;
+
+
-- Availability: 1.2.2
CREATE AGGREGATE ST_Extent(
- sfunc = ST_combine_bbox,
+ sfunc = ST_combine_bbox, -- TODO: use ST_CombineBbox (since 2.2.0)
finalfunc = box2d,
basetype = geometry,
stype = box3d
-- Availability: 2.0.0
CREATE AGGREGATE ST_3DExtent(
- sfunc = ST_combine_bbox,
+ sfunc = ST_combine_bbox, -- TODO: use ST_CombineBbox (since 2.2.0)
basetype = geometry,
stype = box3d
);