下面给出的功能是 PostGIS 用户可能需要的功能。 还有一些其他功能是 PostGIS 对象所需的支持功能,但一般用户用不到。
PostGIS 已经开始从现有的命名约定过渡到以 SQL-MM 为中心的约定。 因此,您所了解和喜爱的大多数函数都已使用标准空间类型 (ST) 前缀进行了重命名。 以前的功能仍然可用,但本文档中未列出更新后的功能等效的功能。 本文档中未列出的非 ST_ 函数已被弃用,并将在未来版本中删除,因此请停止使用它们。 |
本节列出了 PostGIS 安装的用于表示空间数据的自定义 PostgreSQL 数据类型。
每种数据类型都描述其类型转换行为。类型转换将一种数据类型的值转换为另一种类型。 PostgreSQL 允许定义自定义类型的转换行为,以及用于转换类型值的函数。强制转换可以具有自动 行为,允许将函数参数自动转换为函数支持的类型。
某些转换具有 显式行为,这意味着必须使用语法CAST(myval As sometype)
或 myval::sometype
指定转换。 显式转换避免了不明确的转换问题,这种情况在使用不支持给定类型的重载函数时可能会发生。 例如,函数可以接受 box2d 或 box3d,但不能接受几何图形。由于几何体会自动转换为两种盒子类型,因此这会产生“模糊函数”错误。 为了防止错误,请使用显式转换为所需的框类型。
所有数据类型都可以转换为text
,因此,无需显示指定它。
这些函数有助于定义包含几何列的表。
geometry_dump
行。
geometry_dump
行。
geometry_dump
行。
geometry_dump
行。
这些函数通过更改类型、结构或顶点来创建修改后的几何图形。
这些函数用于根据OGC SFS(Open Geospatial Consortium Simple Feature Specification,开放地理空间联盟简单要素规范)标准验证几何数据是否有效。它们还提供有关无效性质和位置的信息。此外,还有一个函数可用于从无效的几何数据中创建有效的几何数据。
valid_detail
行,说明几何图形是否有效或无效,说明原因和位置。
这些函数与在 spatial_ref_sys
表中定义的几何空间参考系统一起使用。
这些函数从各种文本或二进制格式创建几何对象。
LINESTRING
这些函数将几何对象转换为各种文本或二进制格式。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
TRUE
。
这些函数决定了几何图形之间的空间关系。
这些函数计算距离、面积和角度的测量值。 还有一些函数可以计算由测量确定的几何值。
ST_Length
的别名
ST_Perimeter
的别名。
这些函数计算两个几何图形叠加所产生的结果。 这些也称为点集理论布尔运算。 还提供了一些相关的函数。
这些函数计算几何构造,或改变几何尺寸或形状。
这些函数对形成“隐式覆盖”的多边形几何体集进行操作。 为了形成有效的覆盖范围,多边形不得重叠,并且相邻边的顶点必须完全匹配。 覆盖处理速度很快,并且可以使用窗口函数进行操作,窗口函数保留窗口分区内的覆盖拓扑,同时更改边缘。
这些函数使用仿射变换来改变几何图形的位置和形状。
这些函数为几何图形集实现聚类算法。
这些函数支持处理轨迹。 轨迹是每个坐标上具有递增度量(M 值)的线性几何。 时空数据可以使用相对时间(例如历元)作为度量值来建模。
这些函数报告和升级 PostGIS 版本。
本部分列出了自定义 PostGIS Grand Unified 自定义变量 (GUC)。 这些可以通过数据库、会话或事务进行全局设置。 最好在全局或数据库级别设置。
有关其他使用示例,请参阅 SQL SET 和SQL ALTER SYSTEM
这些函数是用于故障排除和修复几何数据的实用程序。 仅当几何数据以某种方式损坏时才需要它们,而这种情况在正常情况下永远不会发生。