下面给出的函数是 PostGIS 用户可能需要的函数。还有一些其他函数是 PostGIS 对象所需的支撑函数,对一般用户没有用。
PostGIS 已开始从现有命名约定过渡到以 SQL-MM 为中心的约定。因此,您所熟知和喜爱的多数函数已使用标准空间类型 (ST) 前缀重命名。以前的函数仍然可用,但本文档中没有列出,因为更新后的函数等效。本文档中未列出的非 ST_ 函数已弃用,将在未来版本中删除,因此请停止使用它们。 |
本节列出了 PostGIS 安装的用于表示空间数据的自定义 PostgreSQL 数据类型。
每个数据类型都描述了它的类型转换行为。一个 类型转换 将一种数据类型的数值转换为另一种类型。PostgreSQL 允许为自定义类型定义转换行为,以及用于转换类型值的函数。转换可以具有 自动 行为,这允许将函数参数自动转换为函数支持的类型。
一些转换具有 显式 行为,这意味着必须使用语法 CAST(myval As sometype)
或 myval::sometype
指定转换。显式转换避免了使用重载函数时可能出现的歧义转换问题,该函数不支持给定类型。例如,一个函数可以接受 box2d 或 box3d,但不能接受 geometry。由于 geometry 具有对两种框类型的自动转换,这会导致“歧义函数”错误。为了防止错误,请使用显式转换到所需的框类型。
所有数据类型都可以转换为 text
,因此无需显式指定。
geometry_dump
行集。geometry_dump
行集。geometry_dump
行集。geometry_dump
行集。valid_detail
行,说明几何图形是否有效,如果无效,则说明原因和位置。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
的别名。这些函数使用仿射变换改变几何图形的位置和形状。
SFCGAL 是一个围绕 CGAL 的 C++ 包装库,它提供高级的 2D 和 3D 空间函数。为了稳健性,几何坐标具有精确的有理数表示。
库的安装说明可以在 SFCGAL 主页上找到 (http://www.sfcgal.org)。要启用这些函数,请使用 create extension postgis_sfcgal
。
这些函数实现了一种行锁定机制来支持长事务。它们主要提供给 Web 特征服务 规范的实现者。
为了使锁定机制正常运行,必须使用可序列化 事务隔离级别。 |