12.16.7.4 Функции свойств многоугольников и многоугольных областей
Функции в этом разделе возвращают свойства значений Polygon или MultiPolygon.
-
ST_Area()иArea()являются синонимами. Более подробную информацию см. в описанииST_Area().Area()устарела; ожидается, что она будет удалена в будущей версии MySQL. ИспользуйтеST_Area()вместо нее. -
ST_Centroid()иCentroid()являются синонимами. Более подробную информацию см. в описанииST_Centroid().Centroid()устарела; ожидается, что она будет удалена в будущей версии MySQL. ИспользуйтеST_Centroid()вместо нее. -
ST_ExteriorRing()иExteriorRing()являются синонимами. Более подробную информацию см. в описанииST_ExteriorRing().ExteriorRing()устарела; ожидается, что она будет удалена в будущей версии MySQL. ИспользуйтеST_ExteriorRing()вместо нее. -
ST_InteriorRingN()иInteriorRingN()являются синонимами. Более подробную информацию см. в описанииST_InteriorRingN().InteriorRingN()устарела; ожидается, что она будет удалена в будущей версии MySQL. ИспользуйтеST_InteriorRingN()вместо нее. -
ST_NumInteriorRings()иNumInteriorRings()являются синонимами. Более подробную информацию см. в описанииST_NumInteriorRings().NumInteriorRings()устарела; ожидается, что она будет удалена в будущей версии MySQL. ИспользуйтеST_NumInteriorRings()вместо нее. -
Возвращает число с двойной точностью, указывающее площадь аргумента
PolygonилиMultiPolygon, измеренную в его системе пространственных ссылок. Для аргументов размерности 0 или 1 результат равен 0. Если аргумент является пустой геометрией, возвращаемое значение равно 0. Если аргумент являетсяNULL, возвращаемое значение равноNULL.Результат является суммой значений площади всех компонентов для геометрии-коллекции. Если геометрия-коллекция пустая, её площадь возвращается как 0.
mysql>
SET @poly ='Polygon((0 0,0 3,3 0,0 0),(1 1,1 2,2 1,1 1))';mysql>SELECT ST_Area(ST_GeomFromText(@poly));+---------------------------------+ | ST_Area(ST_GeomFromText(@poly)) | +---------------------------------+ | 4 | +---------------------------------+ mysql>SET @mpoly ='MultiPolygon(((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1)))';mysql>SELECT ST_Area(ST_GeomFromText(@mpoly));+----------------------------------+ | ST_Area(ST_GeomFromText(@mpoly)) | +----------------------------------+ | 8 | +----------------------------------+ -
Возвращает математический центр аргумента
PolygonилиMultiPolygonв качествеPoint. Результат не гарантируется, что будет наMultiPolygon. Если аргумент являетсяNULLили пустой геометрией, возвращаемое значение равноNULL.Эта функция обрабатывает геометрии-коллекции, вычисляя точку центра для компонентов наивысшей размерности в коллекции. Такие компоненты извлекаются и образуют единую
MultiPolygon,MultiLineStringилиMultiPointдля вычисления центра. Если аргумент является пустой геометрией-коллекцией, возвращаемое значение равноNULL.mysql>
SET @poly =ST_GeomFromText('POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7,5 5))');mysql>SELECT ST_GeometryType(@poly),ST_AsText(ST_Centroid(@poly));+------------------------+--------------------------------------------+ | ST_GeometryType(@poly) | ST_AsText(ST_Centroid(@poly)) | +------------------------+--------------------------------------------+ | POLYGON | POINT(4.958333333333333 4.958333333333333) | +------------------------+--------------------------------------------+ST_Centroid()иCentroid()являются синонимами. -
Возвращает внешнюю линию значений
Polygonpolyв качествеLineString. Если аргумент являетсяNULLили пустой геометрией, возвращаемое значение равноNULL.mysql>
SET @poly ='Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';mysql>SELECT ST_AsText(ST_ExteriorRing(ST_GeomFromText(@poly)));+----------------------------------------------------+ | ST_AsText(ST_ExteriorRing(ST_GeomFromText(@poly))) | +----------------------------------------------------+ | LINESTRING(0 0,0 3,3 3,3 0,0 0) | +----------------------------------------------------+ST_ExteriorRing()иExteriorRing()являются синонимами. -
Возвращает
N-ю внутреннюю линию значенийPolygonpolyв качествеLineString. Номера линий начинаются с 1. Если аргумент являетсяNULLили пустой геометрией, возвращаемое значение равноNULL.mysql>
SET @poly ='Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';mysql>SELECT ST_AsText(ST_InteriorRingN(ST_GeomFromText(@poly),1));+-------------------------------------------------------+ | ST_AsText(ST_InteriorRingN(ST_GeomFromText(@poly),1)) | +-------------------------------------------------------+ | LINESTRING(1 1,1 2,2 2,2 1,1 1) | +-------------------------------------------------------+ST_InteriorRingN()иInteriorRingN()являются синонимами. -
ST_NumInteriorRing(,poly)ST_NumInteriorRings(poly)Возвращает количество внутренних линий значений
Polygonpoly. Если аргумент являетсяNULLили пустой геометрией, возвращаемое значение равноNULL.mysql>
SET @poly ='Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';mysql>SELECT ST_NumInteriorRings(ST_GeomFromText(@poly));+---------------------------------------------+ | ST_NumInteriorRings(ST_GeomFromText(@poly)) | +---------------------------------------------+ | 1 | +---------------------------------------------+ST_NumInteriorRing(),ST_NumInteriorRings()иNumInteriorRings()являются синонимами.
© 2025 Oracle
Licensed under the GPLv2 License.