14.16.3 Функции, создающие значения геометрии из значений WKT
Эти функции принимают в качестве аргументов представление Well-Known Text (WKT) и, необязательно, идентификатор системы пространственной привязки (SRID). Они возвращают соответствующую геометрию. Для описания формата WKT см. Формат Well-Known Text (WKT).
Функции в этом разделе обнаруживают аргументы в системах пространственной привязки (SRS) декартовой или географической систем и возвращают результаты, соответствующие SRS.
ST_GeomFromText() принимает значение WKT любого типа геометрии в качестве первого аргумента. Другие функции предоставляют функции построения, специфичные для типа, для построения значений геометрии каждого типа геометрии.
Функции, такие как ST_MPointFromText() и ST_GeomFromText(), принимающие представления значений в формате WKT MultiPoint, допускают, чтобы отдельные точки внутри значений были окружены скобками. Например, оба следующих вызова функций являются допустимыми:
ST_MPointFromText('MULTIPOINT (1 1, 2 2, 3 3)')
ST_MPointFromText('MULTIPOINT ((1 1), (2 2), (3 3))')
Функции, такие как ST_GeomFromText(), принимающие аргументы коллекций геометрии WKT, понимают как стандартный синтаксис OpenGIS 'GEOMETRYCOLLECTION EMPTY', так и нестандартный синтаксис MySQL 'GEOMETRYCOLLECTION()'. Функции, такие как ST_AsWKT(), которые производят значения WKT, производят 'GEOMETRYCOLLECTION
EMPTY' стандартный синтаксис:
mysql> SET @s1 = ST_GeomFromText('GEOMETRYCOLLECTION()');
mysql> SET @s2 = ST_GeomFromText('GEOMETRYCOLLECTION EMPTY');
mysql> SELECT ST_AsWKT(@s1), ST_AsWKT(@s2);
+--------------------------+--------------------------+
| ST_AsWKT(@s1) | ST_AsWKT(@s2) |
+--------------------------+--------------------------+
| GEOMETRYCOLLECTION EMPTY | GEOMETRYCOLLECTION EMPTY |
+--------------------------+--------------------------+
Если не указано иное, функции в этом разделе обрабатывают свои аргументы геометрии следующим образом:
Если любой аргумент геометрии является
NULLили не является синтаксически корректной геометрией, или если аргумент SRID являетсяNULL, возвращаемое значение являетсяNULL.-
По умолчанию географические координаты (широта, долгота) интерпретируются в порядке, указанном системой пространственной привязки аргументов геометрии. Может быть задан необязательный аргумент
optionsдля переопределения порядка осей по умолчанию.optionsсостоит из списка, разделенных запятыми. Единственное разрешенное значениеkey=valuekey—axis-order, с разрешенными значениямиlat-long,long-latиsrid-defined(по умолчанию).Если аргумент
optionsявляетсяNULL, возвращаемое значение являетсяNULL. Если аргументoptionsнедопустим, возникает ошибка, указывающая причину. Если аргумент SRID относится к неопределенной системе пространственной привязки (SRS), возникает ошибка.
-
Для аргументов геометрии географической SRS, если какой-либо аргумент имеет долготу или широту, выходящую за пределы диапазона, возникает ошибка:
Если значение долготы не находится в диапазоне (−180, 180], возникает ошибка.
Если значение широты не находится в диапазоне [−90, 90], возникает ошибка.
Указанные диапазоны в градусах. Если SRS использует другую единицу измерения, диапазон использует соответствующие значения в этой единице. Точные пределы диапазона незначительно отличаются из-за арифметики с плавающей точкой.
Эти функции доступны для создания геометрий из значений WKT:
-
ST_GeomCollFromText(,wkt[,srid[,options]])ST_GeometryCollectionFromText(,wkt[,srid[,options]])ST_GeomCollFromTxt(wkt[,srid[,options]])Строит значение
GeometryCollection, используя его представление WKT и SRID.Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
mysql>
SET @g = "MULTILINESTRING((10 10, 11 11), (9 9, 10 10))";mysql>SELECT ST_AsText(ST_GeomCollFromText(@g));+--------------------------------------------+ | ST_AsText(ST_GeomCollFromText(@g)) | +--------------------------------------------+ | MULTILINESTRING((10 10,11 11),(9 9,10 10)) | +--------------------------------------------+ -
ST_GeomFromText(,wkt[,srid[,options]])ST_GeometryFromText(wkt[,srid[,options]])Строит значение геометрии любого типа, используя его представление WKT и SRID.
Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
-
ST_LineFromText(,wkt[,srid[,options]])ST_LineStringFromText(wkt[,srid[,options]])Строит значение
LineString, используя его представление WKT и SRID.Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
-
ST_MLineFromText(,wkt[,srid[,options]])ST_MultiLineStringFromText(wkt[,srid[,options]])Строит значение
MultiLineString, используя его представление WKT и SRID.Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
-
ST_MPointFromText(,wkt[,srid[,options]])ST_MultiPointFromText(wkt[,srid[,options]])Строит значение
MultiPoint, используя его представление WKT и SRID.Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
-
ST_MPolyFromText(,wkt[,srid[,options]])ST_MultiPolygonFromText(wkt[,srid[,options]])Строит значение
MultiPolygon, используя его представление WKT и SRID.Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
-
ST_PointFromText(wkt[,srid[,options]])Строит значение
Point, используя его представление WKT и SRID.ST_PointFromText()обрабатывает свои аргументы, как описано во введении к этому разделу. -
ST_PolyFromText(,wkt[,srid[,options]])ST_PolygonFromText(wkt[,srid[,options]])Строит значение
Polygon, используя его представление WKT и SRID.Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.
© 2025 Oracle
Licensed under the GPLv2 License.