第 13 章。PostGIS 特殊函数索引

目录

13.1. PostGIS 聚合函数

以下函数是空间聚合函数,其使用方式与 SQL 聚合函数(如 sumaverage)相同。

  • CG_3DUnion - 使用 postgis_sfcgal 执行 3D 并集。
  • ST_3DExtent - 聚合函数,返回几何图形的 3D 边界框。
  • ST_3DUnion - 执行 3D 并集。
  • ST_AsFlatGeobuf - 返回一组行的 FlatGeobuf 表示。
  • ST_AsGeobuf - 返回一组行的 Geobuf 表示。
  • ST_AsMVT - 聚合函数,返回一组行的 MVT 表示。
  • ST_ClusterDBSCAN - 窗口函数,使用 DBSCAN 算法返回每个输入几何图形的聚类 ID。
  • ST_ClusterIntersecting - 聚合函数,将输入几何图形聚类为连接集。
  • ST_ClusterIntersectingWin - 窗口函数,返回每个输入几何图形的聚类 ID,将输入几何图形聚类为连接集。
  • ST_ClusterKMeans - 窗口函数,使用 K-means 算法返回每个输入几何图形的聚类 ID。
  • ST_ClusterWithin - 聚合函数,按分离距离对几何图形进行聚类。
  • ST_ClusterWithinWin - 窗口函数,返回每个输入几何图形的聚类 ID,使用分离距离进行聚类。
  • ST_Collect - 从一组几何图形创建 GeometryCollection 或 Multi* 几何图形。
  • ST_CoverageInvalidEdges - 窗口函数,查找多边形无法形成有效覆盖的位置。
  • ST_CoverageSimplify - 窗口函数,简化多边形覆盖的边缘。
  • ST_CoverageUnion - 通过删除共享边缘来计算形成覆盖的一组多边形的并集。
  • ST_Extent - 聚合函数,返回几何图形的边界框。
  • ST_MakeLine - 从点、多点或线串几何图形创建线串。
  • ST_MemUnion - 聚合函数,以内存高效但较慢的方式合并几何图形
  • ST_Polygonize - 计算由一组几何图形的线条形成的多个多边形。
  • ST_SameAlignment - 如果栅格具有相同的倾斜度、比例、空间参考和偏移量(像素可以放置在同一网格上而不会切入像素),则返回 true,否则返回 false,并提供详细说明。
  • ST_Union - 计算表示输入几何图形的点集并集的几何图形。
  • ST_Union - 返回一组栅格切片的并集,并将其合并为由 1 个或多个波段组成的单个栅格。
  • TopoElementArray_Agg - 返回一组 element_id、类型数组 (topoelements) 的 topoelementarray。

13.2. PostGIS 窗口函数

以下函数是空间窗口函数,其使用方式与 SQL 窗口函数(如 row_number()lead()lag())相同。它们后面必须跟一个 OVER() 子句。

  • ST_ClusterDBSCAN - 窗口函数,使用 DBSCAN 算法返回每个输入几何图形的聚类 ID。
  • ST_ClusterIntersectingWin - 窗口函数,返回每个输入几何图形的聚类 ID,将输入几何图形聚类为连接集。
  • ST_ClusterKMeans - 窗口函数,使用 K-means 算法返回每个输入几何图形的聚类 ID。
  • ST_ClusterWithinWin - 窗口函数,返回每个输入几何图形的聚类 ID,使用分离距离进行聚类。
  • ST_CoverageInvalidEdges - 窗口函数,查找多边形无法形成有效覆盖的位置。
  • ST_CoverageSimplify - 窗口函数,简化多边形覆盖的边缘。

13.3. PostGIS SQL-MM 兼容函数

以下给出的函数是符合 SQL/MM 3 标准的 PostGIS 函数

  • CG_3DArea - 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • CG_3DDifference - 执行 3D 差集
  • CG_3DIntersection - 执行 3D 交集
  • CG_3DUnion - 使用 postgis_sfcgal 执行 3D 并集。
  • CG_Volume - 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • ST_3DArea - 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • ST_3DDWithin - 测试两个 3D 几何图形是否在给定的 3D 距离内
  • ST_3DDifference - 执行 3D 差集
  • ST_3DDistance - 返回投影单位中两个几何图形之间的 3D 笛卡尔最小距离(基于空间参考)。
  • ST_3DIntersection - 执行 3D 交集
  • ST_3DIntersects - 测试两个几何图形是否在 3D 中空间相交 - 仅适用于点、线串、多边形、多面体表面(面积)
  • ST_3DLength - 返回线性几何图形的 3D 长度。
  • ST_3DPerimeter - 返回多边形几何图形的 3D 周长。
  • ST_3DUnion - 执行 3D 并集。
  • ST_AddEdgeModFace - 添加一条新边,并且如果这样做会分割一个面,则修改原始面并添加一个新面。
  • ST_AddEdgeNewFaces - 添加一条新边,并且如果这样做会分割一个面,则删除原始面并将其替换为两个新面。
  • ST_AddIsoEdge - 将由几何线串定义的孤立边添加到拓扑中,连接两个现有孤立节点 anode 和另一个节点,并返回新边的边 ID。
  • ST_AddIsoNode - 向拓扑中的面添加一个孤立节点,并返回新节点的 nodeid。如果面为空,则仍会创建节点。
  • ST_Area - 返回多边形几何图形的面积。
  • ST_AsBinary - 返回几何/地理图形的 OGC/ISO 熟知二进制 (WKB) 表示形式,不带 SRID 元数据。
  • ST_AsGML - 将几何图形作为 GML 版本 2 或 3 元素返回。
  • ST_AsText - 返回几何/地理图形的熟知文本 (WKT) 表示形式,不带 SRID 元数据。
  • ST_Boundary - 返回几何图形的边界。
  • ST_Buffer - 计算一个几何图形,覆盖距几何图形给定距离内的所有点。
  • ST_Centroid - 返回几何图形的几何中心。
  • ST_ChangeEdgeGeom - 更改边的形状,而不会影响拓扑结构。
  • ST_Contains - 测试 B 的每个点是否都在 A 中,并且它们的内部有一个共同的点
  • ST_ConvexHull - 计算几何图形的凸包。
  • ST_CoordDim - 返回几何图形的坐标维度。
  • ST_CreateTopoGeo - 向给定的空拓扑添加一组几何图形,并返回详细说明成功的消息。
  • ST_Crosses - 测试两个几何图形是否有一些(但不是全部)内部点相同
  • ST_CurveN - 返回 CompoundCurve 的第 N 个组件曲线几何图形。
  • ST_CurveToLine - 将包含曲线的几何图形转换为线性几何图形。
  • ST_Difference - 计算表示几何图形 A 不与几何图形 B 相交的部分的几何图形。
  • ST_Dimension - 返回几何图形的拓扑维度。
  • ST_Disjoint - 测试两个几何图形是否没有共同点
  • ST_Distance - 返回两个几何或地理值之间的距离。
  • ST_EndPoint - 返回线串或圆形线串的最后一个点。
  • ST_Envelope - 返回表示几何图形边界框的几何图形。
  • ST_Equals - 测试两个几何图形是否包含相同的点集
  • ST_ExteriorRing - 返回表示多边形外环的线串。
  • ST_GMLToSQL - 从 GML 表示形式返回指定的 ST_Geometry 值。这是 ST_GeomFromGML 的别名
  • ST_GeomCollFromText - 使用给定的 SRID 从集合 WKT 创建一个集合几何图形。如果未给出 SRID,则默认值为 0。
  • ST_GeomFromText - 从熟知文本表示形式 (WKT) 返回指定的 ST_Geometry 值。
  • ST_GeomFromWKB - 从熟知二进制几何图形表示形式 (WKB) 和可选的 SRID 创建几何图形实例。
  • ST_GeometryFromText - 从已知文本表示 (WKT) 返回指定的 ST_Geometry 值。这是 ST_GeomFromText 的别名。
  • ST_GeometryN - 返回几何图形集合的元素。
  • ST_GeometryType - 以文本形式返回几何图形的 SQL-MM 类型。
  • ST_GetFaceEdges - 返回限定面的有序边集。
  • ST_GetFaceGeometry - 返回指定拓扑中具有指定面 ID 的多边形。
  • ST_InitTopoGeo - 创建新的拓扑模式,并在 topology.topology 表中注册它。
  • ST_InteriorRingN - 返回多边形的第 N 个内环(孔)。
  • ST_Intersection - 计算表示几何图形 A 和 B 的共享部分的几何图形。
  • ST_Intersects - 测试两个几何图形是否相交(它们至少有一个共同点)
  • ST_IsClosed - 测试 LineString 的起点和终点是否重合。对于多面体表面,测试它是否闭合(体积)。
  • ST_IsEmpty - 测试几何图形是否为空。
  • ST_IsRing - 测试 LineString 是否闭合且简单。
  • ST_IsSimple - 测试几何图形是否没有自相交或自相切的点。
  • ST_IsValid - 测试几何图形在 2D 中是否格式正确。
  • ST_Length - 返回线性几何图形的 2D 长度。
  • ST_LineFromText - 使用给定的 SRID 从 WKT 表示创建几何图形。如果未提供 SRID,则默认为 0。
  • ST_LineFromWKB - 使用给定的 SRID 从 WKB 创建 LINESTRING。
  • ST_LinestringFromWKB - 使用给定的 SRID 从 WKB 创建几何图形。
  • ST_LocateAlong - 返回几何图形上与度量值匹配的点。
  • ST_LocateBetween - 返回几何图形中与度量范围匹配的部分。
  • ST_M - 返回点的 M 坐标。
  • ST_MLineFromText - 从 WKT 表示返回指定的 ST_MultiLineString 值。
  • ST_MPointFromText - 使用给定的 SRID 从 WKT 创建几何图形。如果未提供 SRID,则默认为 0。
  • ST_MPolyFromText - 使用给定的 SRID 从 WKT 创建 MultiPolygon 几何图形。如果未提供 SRID,则默认为 0。
  • ST_ModEdgeHeal - 通过删除连接它们的节点来修复两条边,修改第一条边并删除第二条边。返回已删除节点的 ID。
  • ST_ModEdgeSplit - 通过在现有边上创建一个新节点来分割边,修改原始边并添加新边。
  • ST_MoveIsoNode - 将拓扑中的孤立节点从一个点移动到另一个点。如果新点几何图形作为节点存在,则会引发错误。返回移动的描述。
  • ST_NewEdgeHeal - 通过删除连接它们的节点来修复两条边,删除两条边,并用一条方向与提供的第一条边相同的边替换它们。
  • ST_NewEdgesSplit - 通过在现有边上创建一个新节点来分割边,删除原始边并用两条新边替换它。返回连接新创建的边的新的节点的 ID。
  • ST_NumCurves - 返回 CompoundCurve 中组件曲线的数量。
  • ST_NumGeometries - 返回几何图形集合中元素的数量。
  • ST_NumInteriorRings - 返回多边形的内环(孔)的数量。
  • ST_NumPatches - 返回多面体表面上的面的数量。对于非多面体几何图形,将返回 null。
  • ST_NumPoints - 返回 LineString 或 CircularString 中的点数。
  • ST_OrderingEquals - 测试两个几何图形是否表示相同的几何图形,并且点的方向顺序相同
  • ST_Overlaps - 测试两个几何图形是否具有相同的维度并且相交,但每个几何图形都至少有一个不在另一个几何图形中的点
  • ST_PatchN - 返回多面体表面的第 N 个几何图形(面)。
  • ST_Perimeter - 返回多边形几何图形或地理图形的边界长度。
  • ST_Point - 使用 X、Y 和 SRID 值创建点。
  • ST_PointFromText - 使用给定的 SRID 从 WKT 创建点几何图形。如果未提供 SRID,则默认为未知。
  • ST_PointFromWKB - 使用给定的 SRID 从 WKB 创建几何图形。
  • ST_PointN - 返回几何图形中第一个 LineString 或圆形 LineString 中的第 N 个点。
  • ST_PointOnSurface - 计算保证位于多边形或几何图形上的点。
  • ST_Polygon - 使用指定的 SRID 从 LineString 创建多边形。
  • ST_PolygonFromText - 使用给定的 SRID 从 WKT 创建几何图形。如果未提供 SRID,则默认为 0。
  • ST_Relate - 测试两个几何图形是否具有与相交矩阵模式匹配的拓扑关系,或者计算它们的相交矩阵
  • ST_RemEdgeModFace - 删除边,如果该边分隔两个面,则删除一个面并修改另一个面以覆盖两个面的空间。
  • ST_RemEdgeNewFace - 删除边,如果删除的边分隔两个面,则删除原始面并用一个新面替换它们。
  • ST_RemoveIsoEdge - 删除孤立边并返回操作的描述。如果该边不是孤立的,则会抛出异常。
  • ST_RemoveIsoNode - 删除孤立节点并返回操作的描述。如果节点不是孤立的(是边的起点或终点),则会抛出异常。
  • ST_SRID - 返回几何图形的空间参考标识符。
  • ST_StartPoint - 返回 LineString 的第一个点。
  • ST_SymDifference - 计算表示几何图形 A 和 B 中不相交的部分的几何图形。
  • ST_Touches - 测试两个几何图形是否至少有一个共同点,但它们的内部不相交
  • ST_Transform - 返回一个新的几何图形,其坐标已转换为不同的空间参考系统。
  • ST_Union - 计算表示输入几何图形的点集并集的几何图形。
  • ST_Volume - 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • ST_WKBToSQL - 从已知二进制表示 (WKB) 返回指定的 ST_Geometry 值。这是 ST_GeomFromWKB 的别名,它不带 srid。
  • ST_WKTToSQL - 从已知文本表示 (WKT) 返回指定的 ST_Geometry 值。这是 ST_GeomFromText 的别名。
  • ST_Within - 测试 A 的每个点是否位于 B 中,并且它们的内部有一个共同点
  • ST_X - 返回点的 X 坐标。
  • ST_Y - 返回点的 Y 坐标。
  • ST_Z - 返回点的 Z 坐标。
  • ST_SRID - 返回拓扑几何图形的空间参考标识符。

13.4. PostGIS 地理支持函数

下面给出的函数和运算符是 PostGIS 函数/运算符,它们将地理数据类型对象作为输入或返回作为输出。

[Note]

带有 (T) 的函数不是本地大地测量函数,而是使用 ST_Transform 调用来往返于几何图形进行操作。因此,当跨越日期变更线、极点以及对于覆盖多个 UTM 区域的大型几何图形或几何图形对时,它们的行为可能与预期不符。基本变换 - (偏好 UTM、兰伯特方位 (北/南),并在最坏的情况下回退到墨卡托)

  • ST_Area - 返回多边形几何图形的面积。
  • ST_AsBinary - 返回几何/地理图形的 OGC/ISO 熟知二进制 (WKB) 表示形式,不带 SRID 元数据。
  • ST_AsEWKT - 返回带有 SRID 元数据的几何图形的已知文本 (WKT) 表示形式。
  • ST_AsGML - 将几何图形作为 GML 版本 2 或 3 元素返回。
  • ST_AsGeoJSON - 以 GeoJSON 格式返回几何图形或要素。
  • ST_AsKML - 将几何图形作为 KML 元素返回。
  • ST_AsSVG - 返回几何图形的 SVG 路径数据。
  • ST_AsText - 返回几何/地理图形的熟知文本 (WKT) 表示形式,不带 SRID 元数据。
  • ST_Azimuth - 返回两点之间直线的基于北方的方位角。
  • ST_Buffer - 计算一个几何图形,覆盖距几何图形给定距离内的所有点。
  • ST_Centroid - 返回几何图形的几何中心。
  • ST_ClosestPoint - 返回 g1 上最接近 g2 的 2D 点。这是从一个几何图形到另一个几何图形的最短线上的第一个点。
  • ST_CoveredBy - 测试 A 的每个点是否位于 B 中
  • ST_Covers - 测试 B 的每个点是否位于 A 中
  • ST_DWithin - 测试两个几何图形是否在给定的距离内
  • ST_Distance - 返回两个几何或地理值之间的距离。
  • ST_GeogFromText - 从已知文本表示形式或扩展 (WKT) 返回指定的地理值。
  • ST_GeogFromWKB - 从已知二进制几何表示形式 (WKB) 或扩展已知二进制 (EWKB) 创建地理实例。
  • ST_GeographyFromText - 从已知文本表示形式或扩展 (WKT) 返回指定的地理值。
  • = - 如果几何图形/地理图形 A 的坐标和坐标顺序与几何图形/地理图形 B 的坐标和坐标顺序相同,则返回 TRUE。
  • ST_Intersection - 计算表示几何图形 A 和 B 的共享部分的几何图形。
  • ST_Intersects - 测试两个几何图形是否相交(它们至少有一个共同点)
  • ST_Length - 返回线性几何图形的 2D 长度。
  • ST_LineInterpolatePoint - 返回沿线在分数位置插值的点。
  • ST_LineInterpolatePoints - 返回沿线以分数间隔插值的点。
  • ST_LineLocatePoint - 返回线上最接近点的分数位置。
  • ST_LineSubstring - 返回两条分数位置之间的线段部分。
  • ST_Perimeter - 返回多边形几何图形或地理图形的边界长度。
  • ST_Project - 返回从起始点按距离和方位角投影的点。
  • ST_Segmentize - 返回修改后的几何/地理对象,其中任何线段的长度都不超过给定距离。
  • ST_ShortestLine - 返回两个几何对象之间的 2D 最短线。
  • ST_Summary - 返回几何对象内容的文本摘要。
  • <-> - 返回 A 和 B 之间的 2D 距离。
  • && - 如果 A 的 2D 边界框与 B 的 2D 边界框相交,则返回 TRUE。

13.5. PostGIS 栅格支持函数

下面给出的函数和运算符是 PostGIS 函数/运算符,它们将 栅格 数据类型对象作为输入或输出。按字母顺序列出。

  • Box3D - 返回栅格外包框的 3D 框表示。
  • @ - 如果 A 的边界框包含在 B 的边界框内,则返回 TRUE。使用双精度边界框。
  • ~ - 如果 A 的边界框包含 B 的边界框,则返回 TRUE。使用双精度边界框。
  • = - 如果 A 的边界框与 B 的边界框相同,则返回 TRUE。使用双精度边界框。
  • && - 如果 A 的边界框与 B 的边界框相交,则返回 TRUE。
  • &< - 如果 A 的边界框位于 B 的边界框的左侧,则返回 TRUE。
  • &> - 如果 A 的边界框位于 B 的边界框的右侧,则返回 TRUE。
  • ~= - 如果 A 的边界框与 B 的边界框相同,则返回 TRUE。
  • ST_Retile - 从任意平铺的栅格覆盖返回一组配置的切片。
  • ST_AddBand - 返回一个新的栅格,其中在给定索引位置添加了具有给定初始值的给定类型的新波段。如果未指定索引,则将波段添加到末尾。
  • ST_AsBinary/ST_AsWKB - 返回栅格的 Well-Known Binary (WKB) 表示形式。
  • ST_AsGDALRaster - 返回指定 GDAL 栅格格式的栅格切片。栅格格式是编译库支持的格式之一。使用 ST_GDALDrivers() 获取库支持的格式列表。
  • ST_AsHexWKB - 返回栅格的十六进制表示的 Well-Known Binary (WKB)。
  • ST_AsJPEG - 将栅格切片的选定波段作为单个联合图像专家组 (JPEG) 图像(字节数组)返回。如果未指定波段且有 1 个或超过 3 个波段,则仅使用第一个波段。如果只有 3 个波段,则使用所有 3 个波段并映射到 RGB。
  • ST_AsPNG - 将栅格切片的选定波段作为单个可移植网络图形 (PNG) 图像(字节数组)返回。如果栅格中有 1 个、3 个或 4 个波段,并且未指定波段,则使用所有波段。如果超过 2 个或超过 4 个波段,且未指定波段,则仅使用波段 1。波段映射到 RGB 或 RGBA 空间。
  • ST_AsRaster - 将 PostGIS 几何对象转换为 PostGIS 栅格对象。
  • ST_AsTIFF - 将选定的栅格波段作为单个 TIFF 图像(字节数组)返回。如果未指定波段或任何指定的波段在栅格中不存在,则将尝试使用所有波段。
  • ST_Aspect - 返回高程栅格波段的坡向(默认为度)。可用于分析地形。
  • ST_Band - 返回现有栅格的一个或多个波段作为新栅格。可用于从现有栅格构建新栅格。
  • ST_BandFileSize - 返回存储在文件系统中的波段的文件大小。如果未指定 bandnum,则假定为 1。
  • ST_BandFileTimestamp - 返回存储在文件系统中的波段的文件时间戳。如果未指定 bandnum,则假定为 1。
  • ST_BandIsNoData - 如果波段仅填充了 nodata 值,则返回 true。
  • ST_BandMetaData - 返回特定栅格波段的基本元数据。如果未指定波段号,则假定为波段号 1。
  • ST_BandNoDataValue - 返回给定波段中表示无数据的数值。如果未指定波段号,则假定为波段号 1。
  • ST_BandPath - 返回存储在文件系统中的波段的系统文件路径。如果未指定 bandnum,则假定为 1。
  • ST_BandPixelType - 返回给定波段的像素类型。如果未指定 bandnum,则假定为 1。
  • ST_Clip - 返回由输入几何对象裁剪的栅格。如果未指定波段号,则处理所有波段。如果未指定裁剪或为 TRUE,则裁剪输出栅格。如果将 touched 设置为 TRUE,则包括接触的像素,否则仅当像素的中心在几何对象中时才包括该像素。
  • ST_ColorMap - 从源栅格和指定的波段创建一个最多包含 4 个 8BUI 波段(灰度、RGB、RGBA)的新栅格。如果未指定,则假定为波段 1。
  • ST_Contains - 如果栅格 rastB 的任何点都不位于栅格 rastA 的外部,并且 rastB 内部的至少一个点位于 rastA 的内部,则返回 true。
  • ST_ContainsProperly - 如果 rastB 与 rastA 的内部相交,但不与 rastA 的边界或外部相交,则返回 true。
  • ST_Contour - 使用 GDAL 等值线算法,从提供的栅格波段生成一组矢量等值线。
  • ST_ConvexHull - 返回栅格的凸包几何对象,包括等于 BandNoDataValue 的像素值。对于规则形状且未倾斜的栅格,这会得到与 ST_Envelope 相同的结果,因此仅对不规则形状或倾斜的栅格有用。
  • ST_Count - 返回栅格或栅格覆盖给定波段中的像素数。如果未指定波段,则默认为波段 1。如果将 exclude_nodata_value 设置为 true,则仅计数不等于 nodata 值的像素。
  • ST_CountAgg - 聚合。返回一组栅格的给定波段中的像素数。如果未指定波段,则默认为波段 1。如果将 exclude_nodata_value 设置为 true,则仅计数不等于 NODATA 值的像素。
  • ST_CoveredBy - 如果栅格 rastA 的任何点都不位于栅格 rastB 外部,则返回 true。
  • ST_Covers - 如果栅格 rastB 的任何点都不位于栅格 rastA 外部,则返回 true。
  • ST_DFullyWithin - 如果栅格 rastA 和 rastB 完全在彼此指定的距离内,则返回 true。
  • ST_DWithin - 如果栅格 rastA 和 rastB 在彼此指定的距离内,则返回 true。
  • ST_Disjoint - 如果栅格 rastA 与 rastB 在空间上不相交,则返回 true。
  • ST_DumpAsPolygons - 从给定的栅格波段返回一组 geomval (geom, val) 行。如果未指定波段号,则波段号默认为 1。
  • ST_DumpValues - 获取指定波段的值作为二维数组。
  • ST_Envelope - 返回栅格范围的多边形表示形式。
  • ST_FromGDALRaster - 从支持的 GDAL 栅格文件返回栅格。
  • ST_GeoReference - 以 GDAL 或 ESRI 格式返回地理参考元数据,如世界文件中常见的格式。默认值为 GDAL。
  • ST_Grayscale - 从源栅格和指定的表示红色、绿色和蓝色的波段创建新的一个 8BUI 波段栅格。
  • ST_HasNoBand - 如果没有具有给定波段号的波段,则返回 true。如果未指定波段号,则假定为波段号 1。
  • ST_Height - 返回栅格的高度(以像素为单位)。
  • ST_HillShade - 使用提供的方位角、高度、亮度和比例输入,返回高程栅格波段的假设照明。
  • ST_Histogram - 返回一组记录,汇总栅格或栅格覆盖数据分布的单独 bin 范围。如果未指定,则自动计算 bin 数。
  • ST_InterpolateRaster - 使用 X 和 Y 值将点定位在网格上,并将点的 Z 值用作表面高度,根据输入的 3D 点集插值网格表面。
  • ST_Intersection - 返回栅格或一组表示两个栅格共享部分或栅格矢量化和几何对象几何交点的几何像素值对。
  • ST_Intersects - 如果栅格 rastA 与栅格 rastB 在空间上相交,则返回 true。
  • ST_IsEmpty - 如果栅格为空(宽度 = 0 且高度 = 0),则返回 true。否则,返回 false。
  • ST_MakeEmptyCoverage - 使用空的栅格瓦片网格覆盖地理参考区域。
  • ST_MakeEmptyRaster - 返回一个指定维度(宽度和高度)、左上角 X 和 Y、像素大小和旋转(scalex、scaley、skewx 和 skewy)以及参考系统 (srid) 的空栅格(没有波段)。如果传入栅格,则返回一个新的栅格,其大小、对齐方式和 SRID 相同。如果省略 srid,则空间参考将设置为未知 (0)。
  • ST_MapAlgebra (回调函数版本) - 回调函数版本 - 返回一个单波段栅格,该栅格基于一个或多个输入栅格、波段索引和一个用户指定的回调函数生成。
  • ST_MapAlgebraExpr - 单栅格波段版本:创建一个新的单波段栅格,该栅格通过对输入栅格波段应用有效的 PostgreSQL 代数运算并使用提供的像素类型来生成。如果未指定波段,则假定为波段 1。
  • ST_MapAlgebraExpr - 双栅格波段版本:创建一个新的单波段栅格,该栅格通过对两个输入栅格波段应用有效的 PostgreSQL 代数运算并使用提供的像素类型来生成。如果未指定波段编号,则假定每个栅格的波段 1。生成的栅格将与第一个栅格定义的网格对齐(比例、倾斜和像素角),并且其范围由 “extenttype” 参数定义。“extenttype” 的值可以是:INTERSECTION、UNION、FIRST、SECOND。
  • ST_MapAlgebraFct - 单波段版本 - 创建一个新的单波段栅格,该栅格通过对输入栅格波段应用有效的 PostgreSQL 函数并使用提供的像素类型来生成。如果未指定波段,则假定为波段 1。
  • ST_MapAlgebraFct - 双波段版本 - 创建一个新的单波段栅格,该栅格通过对两个输入栅格波段应用有效的 PostgreSQL 函数并使用提供的像素类型来生成。如果未指定波段,则假定为波段 1。如果未指定,范围类型默认为 INTERSECTION。
  • ST_MapAlgebraFctNgb - 单波段版本:使用用户定义的 PostgreSQL 函数的地图代数最近邻算法。返回一个栅格,其值是 PLPGSQL 用户函数的结果,该函数涉及来自输入栅格波段的值的邻域。
  • ST_MapAlgebra (表达式版本) - 表达式版本 - 返回一个单波段栅格,该栅格基于一个或两个输入栅格、波段索引和一个或多个用户指定的 SQL 表达式生成。
  • ST_MemSize - 返回栅格占用的空间量(以字节为单位)。
  • ST_MetaData - 返回有关栅格对象的基本元数据,例如像素大小、旋转(倾斜)、左上角、左下角等。
  • ST_MinConvexHull - 返回栅格的凸包几何图形,不包括 NODATA 像素。
  • ST_NearestValue - 返回由列 x 和行 y 或几何点指定的给定波段像素的最近非 NODATA 值,该几何点以与栅格相同的空间参考坐标系表示。
  • ST_Neighborhood - 返回一个二维双精度数组,其中包含指定波段像素周围的非 NODATA 值,该像素由列 X 和行 Y 或几何点指定,该几何点以与栅格相同的空间参考坐标系表示。
  • ST_NotSameAlignmentReason - 返回文本,说明栅格是否对齐,如果未对齐,则说明原因。
  • ST_NumBands - 返回栅格对象中的波段数。
  • ST_Overlaps - 如果栅格 rastA 和 rastB 相交,但一个不完全包含另一个,则返回 true。
  • ST_PixelAsCentroid - 返回像素所代表的区域的质心(点几何图形)。
  • ST_PixelAsCentroids - 返回栅格波段的每个像素的质心(点几何图形),以及每个像素的值、X 和 Y 栅格坐标。点几何图形是像素所代表的区域的质心。
  • ST_PixelAsPoint - 返回像素左上角的点几何图形。
  • ST_PixelAsPoints - 返回栅格波段的每个像素的点几何图形,以及每个像素的值、X 和 Y 栅格坐标。点几何图形的坐标是像素左上角的坐标。
  • ST_PixelAsPolygon - 返回限定特定行和列的像素的多边形几何图形。
  • ST_PixelAsPolygons - 返回限定栅格波段的每个像素的多边形几何图形,以及每个像素的值、X 和 Y 栅格坐标。
  • ST_PixelHeight - 返回空间参考系统中几何单位的像素高度。
  • ST_PixelOfValue - 获取其值等于搜索值的像素的列 x、行 y 坐标。
  • ST_PixelWidth - 返回空间参考系统中几何单位的像素宽度。
  • ST_Polygon - 返回一个多边形几何图形,该几何图形由具有非无数据值的像素值像素的联合形成。如果未指定波段号,则波段号默认为 1。
  • ST_Quantile - 在样本或总体上下文中计算栅格或栅格表覆盖的四分位数。因此,可以检查一个值是否处于栅格的 25%、50%、75% 百分位数。
  • ST_RastFromHexWKB - 从 Well-Known Binary (WKB) 栅格的十六进制表示形式返回栅格值。
  • ST_RastFromWKB - 从 Well-Known Binary (WKB) 栅格返回栅格值。
  • ST_RasterToWorldCoord - 给定列和行,返回栅格的左上角作为几何 X 和 Y(经度和纬度)。列和行从 1 开始。
  • ST_RasterToWorldCoordX - 返回栅格、列和行的几何 X 坐标左上角。列和行的编号从 1 开始。
  • ST_RasterToWorldCoordY - 返回栅格、列和行的几何 Y 坐标左上角。列和行的编号从 1 开始。
  • ST_Reclass - 创建一个新栅格,该栅格由从原始栅格重新分类的波段类型组成。nband 是要更改的波段。如果未指定 nband,则假定为 1。所有其他波段将保持不变。用例:将 16BUI 波段转换为 8BUI 等,以便更简单地呈现为可查看的格式。
  • ST_Resample - 使用指定的重采样算法、新维度、任意网格角和一组从另一个栅格定义或借用的栅格地理参考属性来重采样栅格。
  • ST_Rescale - 仅通过调整其比例(或像素大小)来重采样栅格。使用 NearestNeighbor (英语或美式拼写)、Bilinear、Cubic、CubicSpline、Lanczos、Max 或 Min 重采样算法计算新的像素值。默认值为 NearestNeighbor。
  • ST_Resize - 将栅格调整为新的宽度/高度。
  • ST_Reskew - 仅通过调整其倾斜(或旋转参数)来重采样栅格。使用 NearestNeighbor (英语或美式拼写)、Bilinear、Cubic、CubicSpline 或 Lanczos 重采样算法计算新的像素值。默认值为 NearestNeighbor。
  • ST_Rotation - 返回栅格的旋转弧度值。
  • ST_Roughness - 返回一个栅格,其中包含 DEM 的计算“粗糙度”。
  • ST_SRID - 返回 spatial_ref_sys 表中定义的栅格的空间参考标识符。
  • ST_SameAlignment - 如果栅格具有相同的倾斜度、比例、空间参考和偏移量(像素可以放置在同一网格上而不会切入像素),则返回 true,否则返回 false,并提供详细说明。
  • ST_ScaleX - 返回坐标参考系统中单位像素宽度的 X 分量。
  • ST_ScaleY - 返回坐标参考系统中单位像素高度的 Y 分量。
  • ST_SetBandIndex - 更新数据库外部波段的外部波段编号。
  • ST_SetBandIsNoData - 将波段的 isnodata 标志设置为 TRUE。
  • ST_SetBandNoDataValue - 设置表示无数据的给定波段的值。如果未指定波段,则假定为波段 1。要将波段标记为没有 nodata 值,请将 nodata 值设置为 NULL。
  • ST_SetBandPath - 更新数据库外部波段的外部路径和波段编号。
  • ST_SetGeoReference - 在单个调用中设置地理参考 6 个地理参考参数。数字之间应以空格分隔。接受 GDAL 或 ESRI 格式的输入。默认为 GDAL。
  • ST_SetM - 返回一个几何图形,其 X/Y 坐标与输入几何图形相同,并且使用请求的重采样算法将栅格中的值复制到 M 维度中。
  • ST_SetRotation - 设置栅格的旋转弧度值。
  • ST_SetSRID - 将栅格的 SRID 设置为 spatial_ref_sys 表中定义的特定整数 srid。
  • ST_SetScale - 设置坐标参考系统中单位像素的 X 和 Y 大小。数字单位/像素宽度/高度。
  • ST_SetSkew - 设置地理参考 X 和 Y 倾斜(或旋转参数)。如果只传入一个,则将 X 和 Y 设置为相同的值。
  • ST_SetUpperLeft - 将栅格像素的左上角的值设置为投影的 X 和 Y 坐标。
  • ST_SetValue - 返回修改后的栅格,该栅格是通过设置给定列x、行y像素或与特定几何图形相交的像素中给定波段的值而产生的。波段编号从 1 开始,如果未指定,则假定为 1。
  • ST_SetValues - 返回修改后的栅格,该栅格是通过设置给定波段的值而产生的。
  • ST_SetZ - 返回一个几何图形,其 X/Y 坐标与输入几何图形相同,并使用请求的重采样算法将栅格中的值复制到 Z 维度。
  • ST_SkewX - 返回地理参考 X 倾斜(或旋转参数)。
  • ST_SkewY - 返回地理参考 Y 倾斜(或旋转参数)。
  • ST_Slope - 返回高程栅格波段的坡度(默认以度为单位)。可用于分析地形。
  • ST_SnapToGrid - 通过将栅格捕捉到网格来重采样栅格。使用最近邻(英文或美式拼写)、双线性、三次、三次样条或 Lanczos 重采样算法计算新的像素值。默认值为最近邻。
  • ST_Summary - 返回栅格内容文本摘要。
  • ST_SummaryStats - 返回由计数、总和、平均值、标准差、最小值、最大值组成的摘要统计信息,这些信息针对栅格或栅格覆盖率的给定栅格波段。如果未指定波段,则假定为波段 1。
  • ST_SummaryStatsAgg - 聚合。 返回由计数、总和、平均值、标准差、最小值、最大值组成的摘要统计信息,这些信息针对一组栅格的给定栅格波段。如果未指定波段,则假定为波段 1。
  • ST_TPI - 返回一个包含计算出的地形位置指数的栅格。
  • ST_TRI - 返回一个包含计算出的地形粗糙度指数的栅格。
  • ST_Tile - 返回一组栅格,这些栅格是根据输出栅格的所需尺寸分割输入栅格而产生的。
  • ST_Touches - 如果栅格 rastA 和 rastB 至少有一个共同点但它们的内部不相交,则返回 true。
  • ST_Transform - 使用指定的重采样算法将已知空间参考系统中的栅格重新投影到另一个已知空间参考系统中。选项为最近邻、双线性、三次、三次样条、Lanczos,默认为最近邻。
  • ST_Union - 返回一组栅格切片的并集,并将其合并为由 1 个或多个波段组成的单个栅格。
  • ST_UpperLeftX - 返回投影空间参考中栅格的左上角 X 坐标。
  • ST_UpperLeftY - 返回投影空间参考中栅格的左上角 Y 坐标。
  • ST_Value - 返回给定列x、行y像素或特定几何点中给定波段的值。波段编号从 1 开始,如果未指定,则假定为 1。如果 exclude_nodata_value 设置为 false,则所有像素(包括 nodata 像素)都被视为相交并返回值。如果未传入 exclude_nodata_value,则从栅格的元数据中读取它。
  • ST_ValueCount - 返回一组记录,其中包含像素波段值和栅格(或栅格覆盖率)给定波段中具有给定值集的像素数。如果未指定波段,则默认为波段 1。默认情况下,不计数 nodata 值像素。像素中的所有其他值都会输出,并且像素波段值会四舍五入到最接近的整数。
  • ST_Width - 返回栅格的宽度(以像素为单位)。
  • ST_Within - 如果栅格 rastA 的任何点都不位于栅格 rastB 的外部,并且 rastA 内部的至少一个点位于 rastB 的内部,则返回 true。
  • ST_WorldToRasterCoord - 返回左上角作为列和行,给定几何 X 和 Y(经度和纬度)或以栅格的空间参考坐标系表示的点几何图形。
  • ST_WorldToRasterCoordX - 返回点几何图形 (pt) 或以栅格的世界空间参考系统表示的 X 和 Y 世界坐标 (xw, yw) 在栅格中的列。
  • ST_WorldToRasterCoordY - 返回点几何图形 (pt) 或以栅格的世界空间参考系统表示的 X 和 Y 世界坐标 (xw, yw) 在栅格中的行。
  • UpdateRasterSRID - 更改用户指定列和表中所有栅格的 SRID。

13.6. PostGIS 几何/地理/栅格转储函数

下面给出的函数是 PostGIS 函数,这些函数将一组或单个 geometry_dumpgeomval 数据类型对象作为输入或返回输出。

  • ST_DumpAsPolygons - 从给定的栅格波段返回一组 geomval (geom, val) 行。如果未指定波段号,则波段号默认为 1。
  • ST_Intersection - 返回栅格或一组表示两个栅格共享部分或栅格矢量化和几何对象几何交点的几何像素值对。
  • ST_Dump - 返回几何图形组件的一组 geometry_dump 行。
  • ST_DumpPoints - 返回几何图形中坐标的一组 geometry_dump 行。
  • ST_DumpRings - 返回多边形的外部和内部环的一组 geometry_dump 行。
  • ST_DumpSegments - 返回几何图形中线段的一组 geometry_dump 行。

13.7. PostGIS Box 函数

下面给出的函数是 PostGIS 函数,这些函数将 PostGIS 空间类型的 box* 系列作为输入或返回输出。box 类型系列包括 box2dbox3d

  • Box2D - 返回表示几何图形 2D 范围的 BOX2D。
  • Box3D - 返回表示几何图形 3D 范围的 BOX3D。
  • Box3D - 返回栅格外包框的 3D 框表示。
  • ST_3DExtent - 聚合函数,返回几何图形的 3D 边界框。
  • ST_3DMakeBox - 创建由两个 3D 点几何图形定义的 BOX3D。
  • ST_AsMVTGeom - 将几何图形转换为 MVT 切片的坐标空间。
  • ST_AsTWKB - 以 TWKB(又名“微型知名二进制”)格式返回几何图形。
  • ST_Box2dFromGeoHash - 从 GeoHash 字符串返回 BOX2D。
  • ST_ClipByBox2D - 计算落入矩形内的几何图形部分。
  • ST_EstimatedExtent - 返回空间表的估计范围。
  • ST_Expand - 返回从另一个边界框或几何图形扩展的边界框。
  • ST_Extent - 聚合函数,返回几何图形的边界框。
  • ST_MakeBox2D - 创建由两个 2D 点几何图形定义的 BOX2D。
  • ST_RemoveIrrelevantPointsForView - 删除与呈现几何图形的特定矩形视图无关的点。
  • ST_XMax - 返回 2D 或 3D 边界框或几何图形的 X 最大值。
  • ST_XMin - 返回 2D 或 3D 边界框或几何图形的 X 最小值。
  • ST_YMax - 返回 2D 或 3D 边界框或几何图形的 Y 最大值。
  • ST_YMin - 返回 2D 或 3D 边界框或几何图形的 Y 最小值。
  • ST_ZMax - 返回 2D 或 3D 边界框或几何图形的 Z 最大值。
  • ST_ZMin - 返回 2D 或 3D 边界框或几何图形的 Z 最小值。
  • RemoveUnusedPrimitives - 删除不需要定义现有 TopoGeometry 对象的拓扑基元。
  • ValidateTopology - 返回一组 validatetopology_returntype 对象,详细说明拓扑问题。
  • ~(box2df,box2df) - 如果 2D 浮点精度边界框 (BOX2DF) 包含另一个 2D 浮点精度边界框 (BOX2DF),则返回 TRUE。
  • ~(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 包含几何图形的 2D 绑定框,则返回 TRUE。
  • ~(geometry,box2df) - 如果几何图形的 2D 绑定框包含 2D 浮点精度边界框 (GIDX),则返回 TRUE。
  • @(box2df,box2df) - 如果 2D 浮点精度边界框 (BOX2DF) 包含在另一个 2D 浮点精度边界框中,则返回 TRUE。
  • @(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 包含在几何图形的 2D 边界框中,则返回 TRUE。
  • @(geometry,box2df) - 如果几何图形的 2D 边界框包含在 2D 浮点精度边界框 (BOX2DF) 中,则返回 TRUE。
  • &&(box2df,box2df) - 如果两个 2D 浮点精度边界框 (BOX2DF) 相互交叉,则返回 TRUE。
  • &&(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 与几何图形的(缓存的)2D 边界框相交,则返回 TRUE。
  • &&(geometry,box2df) - 如果几何图形的(缓存的)2D 边界框与 2D 浮点精度边界框 (BOX2DF) 相交,则返回 TRUE。

13.8. 支持 3D 的 PostGIS 函数

下面给出的函数是不丢弃 Z 索引的 PostGIS 函数。

  • AddGeometryColumn - 将几何列添加到现有表。
  • Box3D - 返回表示几何图形 3D 范围的 BOX3D。
  • CG_3DArea - 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • CG_3DConvexHull - 计算几何图形的 3D 凸包。
  • CG_3DDifference - 执行 3D 差集
  • CG_3DIntersection - 执行 3D 交集
  • CG_3DUnion - 使用 postgis_sfcgal 执行 3D 并集。
  • CG_ApproximateMedialAxis - 计算面状几何体的近似中轴线。
  • CG_ConstrainedDelaunayTriangles - 返回给定输入几何体周围的约束德劳内三角剖分。
  • CG_Extrude - 将表面拉伸为相关的体积。
  • CG_ForceLHR - 强制左手规则方向。
  • CG_IsPlanar - 检查表面是否为平面。
  • CG_IsSolid - 测试几何体是否为实体。不执行有效性检查。
  • CG_MakeSolid - 将几何体转换为实体。不执行检查。要获得有效的实体,输入几何体必须是闭合的多面体表面或闭合的 TIN。
  • CG_Orientation - 确定表面方向。
  • CG_StraightSkeleton - 从几何体计算直线骨架。
  • CG_Tesselate - 对多边形或多面体表面执行表面镶嵌,并返回 TIN 或 TIN 集合。
  • CG_Visibility - 从多边形几何体中的点或线段计算可见性多边形。
  • CG_Volume - 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • DropGeometryColumn - 从空间表中删除几何列。
  • GeometryType - 以文本形式返回几何体的类型。
  • ST_3DArea - 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • ST_3DClosestPoint - 返回 g1 上最接近 g2 的 3D 点。这是 3D 最短线上的第一个点。
  • ST_3DConvexHull - 计算几何体的 3D 凸包。
  • ST_3DDFullyWithin - 测试两个 3D 几何体是否完全在给定的 3D 距离内。
  • ST_3DDWithin - 测试两个 3D 几何图形是否在给定的 3D 距离内
  • ST_3DDifference - 执行 3D 差集
  • ST_3DDistance - 返回投影单位中两个几何图形之间的 3D 笛卡尔最小距离(基于空间参考)。
  • ST_3DExtent - 聚合函数,返回几何图形的 3D 边界框。
  • ST_3DIntersection - 执行 3D 交集
  • ST_3DIntersects - 测试两个几何图形是否在 3D 中空间相交 - 仅适用于点、线串、多边形、多面体表面(面积)
  • ST_3DLength - 返回线性几何图形的 3D 长度。
  • ST_3DLineInterpolatePoint - 返回沿 3D 线在指定比例位置插值的点。
  • ST_3DLongestLine - 返回两个几何体之间的 3D 最长线。
  • ST_3DMaxDistance - 返回两个几何体在投影单位中基于空间参考的 3D 笛卡尔最大距离。
  • ST_3DPerimeter - 返回多边形几何图形的 3D 周长。
  • ST_3DShortestLine - 返回两个几何体之间的 3D 最短线。
  • ST_3DUnion - 执行 3D 并集。
  • ST_AddMeasure - 沿线性几何体插值度量值。
  • ST_AddPoint - 将点添加到 LineString。
  • ST_Affine - 对几何体应用 3D 仿射变换。
  • ST_ApproximateMedialAxis - 计算面状几何体的近似中轴线。
  • ST_AsBinary - 返回几何/地理图形的 OGC/ISO 熟知二进制 (WKB) 表示形式,不带 SRID 元数据。
  • ST_AsEWKB - 返回带有 SRID 元数据的几何体的扩展熟知二进制 (EWKB) 表示。
  • ST_AsEWKT - 返回带有 SRID 元数据的几何图形的已知文本 (WKT) 表示形式。
  • ST_AsGML - 将几何图形作为 GML 版本 2 或 3 元素返回。
  • ST_AsGeoJSON - 以 GeoJSON 格式返回几何图形或要素。
  • ST_AsHEXEWKB - 以十六进制 EWKB 格式(文本形式)返回几何体,使用小端 (NDR) 或大端 (XDR) 编码。
  • ST_AsKML - 将几何图形作为 KML 元素返回。
  • ST_AsX3D - 以 X3D xml 节点元素格式返回几何体:ISO-IEC-19776-1.2-X3DEncodings-XML。
  • ST_Boundary - 返回几何图形的边界。
  • ST_BoundingDiagonal - 返回几何体边界框的对角线。
  • ST_CPAWithin - 测试两个轨迹的最近接近点是否在指定的距离内。
  • ST_ChaikinSmoothing - 使用 Chaikin 算法返回几何体的平滑版本。
  • ST_ClosestPointOfApproach - 返回两个轨迹的最近接近点的度量值。
  • ST_Collect - 从一组几何图形创建 GeometryCollection 或 Multi* 几何图形。
  • ST_ConstrainedDelaunayTriangles - 返回给定输入几何体周围的约束德劳内三角剖分。
  • ST_ConvexHull - 计算几何图形的凸包。
  • ST_CoordDim - 返回几何图形的坐标维度。
  • ST_CurveN - 返回 CompoundCurve 的第 N 个组件曲线几何图形。
  • ST_CurveToLine - 将包含曲线的几何图形转换为线性几何图形。
  • ST_DelaunayTriangles - 返回几何体顶点的德劳内三角剖分。
  • ST_Difference - 计算表示几何图形 A 不与几何图形 B 相交的部分的几何图形。
  • ST_DistanceCPA - 返回两个轨迹的最近接近点之间的距离。
  • ST_Dump - 返回几何图形组件的一组 geometry_dump 行。
  • ST_DumpPoints - 返回几何图形中坐标的一组 geometry_dump 行。
  • ST_DumpRings - 返回多边形的外部和内部环的一组 geometry_dump 行。
  • ST_DumpSegments - 返回几何图形中线段的一组 geometry_dump 行。
  • ST_EndPoint - 返回线串或圆形线串的最后一个点。
  • ST_ExteriorRing - 返回表示多边形外环的线串。
  • ST_Extrude - 将表面拉伸为相关的体积。
  • ST_FlipCoordinates - 返回 X 和 Y 轴翻转的几何体版本。
  • ST_Force2D - 强制几何体进入“二维模式”。
  • ST_ForceCurve - 如果适用,将几何体向上转换为其曲线类型。
  • ST_ForceLHR - 强制左手规则方向。
  • ST_ForcePolygonCCW - 将所有外部环设置为逆时针方向,将所有内部环设置为顺时针方向。
  • ST_ForcePolygonCW - 将所有外部环设置为顺时针方向,将所有内部环设置为逆时针方向。
  • ST_ForceRHR - 强制多边形中的顶点方向遵循右手规则。
  • ST_ForceSFS - 强制几何体仅使用 SFS 1.1 几何类型。
  • ST_Force3D - 强制几何体进入 XYZ 模式。这是 ST_Force3DZ 的别名。
  • ST_Force3DZ - 强制几何体进入 XYZ 模式。
  • ST_Force4D - 强制几何体进入 XYZM 模式。
  • ST_ForceCollection - 将几何体转换为 GEOMETRYCOLLECTION。
  • ST_GeomFromEWKB - 从扩展熟知二进制表示 (EWKB) 返回指定的 ST_Geometry 值。
  • ST_GeomFromEWKT - 从扩展熟知文本表示 (EWKT) 返回指定的 ST_Geometry 值。
  • ST_GeomFromGML - 将几何体的 GML 表示作为输入,并输出 PostGIS 几何对象。
  • ST_GeomFromGeoJSON - 将几何体的 geojson 表示作为输入,并输出 PostGIS 几何对象。
  • ST_GeomFromKML - 将几何体的 KML 表示作为输入,并输出 PostGIS 几何对象。
  • ST_GeometricMedian - 返回 MultiPoint 的几何中位数。
  • ST_GeometryN - 返回几何图形集合的元素。
  • ST_GeometryType - 以文本形式返回几何图形的 SQL-MM 类型。
  • ST_HasArc - 测试几何体是否包含圆弧。
  • ST_HasM - 检查几何体是否具有 M(度量)维度。
  • ST_HasZ - 检查几何体是否具有 Z 维度。
  • ST_InteriorRingN - 返回多边形的第 N 个内环(孔)。
  • ST_InterpolatePoint - 返回最接近某点的几何体的插值度量值。
  • ST_Intersection - 计算表示几何图形 A 和 B 的共享部分的几何图形。
  • ST_IsClosed - 测试 LineString 的起点和终点是否重合。对于多面体表面,测试它是否闭合(体积)。
  • ST_IsCollection - 测试几何体是否为几何集合类型。
  • ST_IsPlanar - 检查表面是否为平面。
  • ST_IsPolygonCCW - 测试多边形的外部环是否为逆时针方向,内部环是否为顺时针方向。
  • ST_IsPolygonCW - 测试多边形的外部环是否为顺时针方向,内部环是否为逆时针方向。
  • ST_IsSimple - 测试几何图形是否没有自相交或自相切的点。
  • ST_IsSolid - 测试几何体是否为实体。不执行有效性检查。
  • ST_IsValidTrajectory - 测试几何体是否为有效的轨迹。
  • ST_LengthSpheroid - 返回球面上的经纬度几何体的 2D 或 3D 长度/周长。
  • ST_LineFromMultiPoint - 从 MultiPoint 几何体创建 LineString。
  • ST_LineInterpolatePoint - 返回沿线在分数位置插值的点。
  • ST_LineInterpolatePoints - 返回沿线以分数间隔插值的点。
  • ST_LineSubstring - 返回两条分数位置之间的线段部分。
  • ST_LineToCurve - 将线性几何体转换为曲线几何体。
  • ST_LocateBetweenElevations - 返回位于高程 (Z) 范围内的几何体部分。
  • ST_M - 返回点的 M 坐标。
  • ST_MakeLine - 从点、多点或线串几何图形创建线串。
  • ST_MakePoint - 创建 2D、3DZ 或 4D 点。
  • ST_MakePolygon - 从外壳和可选的孔列表创建多边形。
  • ST_MakeSolid - 将几何体转换为实体。不执行检查。要获得有效的实体,输入几何体必须是闭合的多面体表面或闭合的 TIN。
  • ST_MakeValid - 尝试使无效几何体有效,而不丢失顶点。
  • ST_MemSize - 返回几何体占用的内存空间量。
  • ST_MemUnion - 聚合函数,以内存高效但较慢的方式合并几何图形
  • ST_NDims - 返回几何体的坐标维度。
  • ST_NPoints - 返回几何体中的点(顶点)数。
  • ST_NRings - 返回多边形几何体中的环数。
  • ST_Node - 连接线集合。
  • ST_NumCurves - 返回 CompoundCurve 中组件曲线的数量。
  • ST_NumGeometries - 返回几何图形集合中元素的数量。
  • ST_NumPatches - 返回多面体表面上的面的数量。对于非多面体几何图形,将返回 null。
  • ST_Orientation - 确定表面方向。
  • ST_PatchN - 返回多面体表面的第 N 个几何图形(面)。
  • ST_PointFromWKB - 使用给定的 SRID 从 WKB 创建几何图形。
  • ST_PointN - 返回几何图形中第一个 LineString 或圆形 LineString 中的第 N 个点。
  • ST_PointOnSurface - 计算保证位于多边形或几何图形上的点。
  • ST_Points - 返回一个包含几何体坐标的 MultiPoint。
  • ST_Polygon - 使用指定的 SRID 从 LineString 创建多边形。
  • ST_RemovePoint - 从线串中删除一个点。
  • ST_RemoveRepeatedPoints - 返回删除重复点的几何体版本。
  • ST_Reverse - 返回顶点顺序反转的几何图形。
  • ST_Rotate - 绕原点旋转几何图形。
  • ST_RotateX - 绕 X 轴旋转几何图形。
  • ST_RotateY - 绕 Y 轴旋转几何图形。
  • ST_RotateZ - 绕 Z 轴旋转几何图形。
  • ST_Scale - 按给定的因子缩放几何图形。
  • ST_Scroll - 更改闭合 LineString 的起始点。
  • ST_SetPoint - 用给定的点替换线串的点。
  • ST_ShiftLongitude - 将几何图形的经度坐标在 -180..180 和 0..360 之间移动。
  • ST_SnapToGrid - 将输入几何图形的所有点捕捉到规则网格。
  • ST_StartPoint - 返回 LineString 的第一个点。
  • ST_StraightSkeleton - 从几何图形计算直线骨架。
  • ST_SwapOrdinates - 返回给定几何图形的版本,其中给定坐标值已交换。
  • ST_SymDifference - 计算表示几何图形 A 和 B 中不相交的部分的几何图形。
  • ST_Tesselate - 对多边形或多面体表面执行曲面细分,并以 TIN 或 TIN 集合的形式返回。
  • ST_TransScale - 按给定的偏移量和因子平移和缩放几何图形。
  • ST_Translate - 按给定的偏移量平移几何图形。
  • ST_UnaryUnion - 计算单个几何图形的组件的并集。
  • ST_Union - 计算表示输入几何图形的点集并集的几何图形。
  • ST_Volume - 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • ST_WrapX - 将几何图形围绕 X 值包裹。
  • ST_X - 返回点的 X 坐标。
  • ST_XMax - 返回 2D 或 3D 边界框或几何图形的 X 最大值。
  • ST_XMin - 返回 2D 或 3D 边界框或几何图形的 X 最小值。
  • ST_Y - 返回点的 Y 坐标。
  • ST_YMax - 返回 2D 或 3D 边界框或几何图形的 Y 最大值。
  • ST_YMin - 返回 2D 或 3D 边界框或几何图形的 Y 最小值。
  • ST_Z - 返回点的 Z 坐标。
  • ST_ZMax - 返回 2D 或 3D 边界框或几何图形的 Z 最大值。
  • ST_ZMin - 返回 2D 或 3D 边界框或几何图形的 Z 最小值。
  • ST_Zmflag - 返回一个代码,指示几何图形的 ZM 坐标维度。
  • Equals - 如果两个拓扑几何图形由相同的拓扑基元组成,则返回 true。
  • Intersects - 如果两个拓扑几何图形中的任何一对基元相交,则返回 true。
  • UpdateGeometrySRID - 更新几何列中所有要素的 SRID,以及表元数据。
  • &&& - 如果 A 的 n 维边界框与 B 的 n 维边界框相交,则返回 TRUE。
  • &&&(geometry,gidx) - 如果几何图形的(缓存)n 维边界框与 n 维浮点精度边界框 (GIDX) 相交,则返回 TRUE。
  • &&&(gidx,geometry) - 如果 n 维浮点精度边界框 (GIDX) 与几何图形的(缓存)n 维边界框相交,则返回 TRUE。
  • &&&(gidx,gidx) - 如果两个 n 维浮点精度边界框 (GIDX) 彼此相交,则返回 TRUE。

13.9. PostGIS 曲线几何图形支持函数

下面给出的函数是 PostGIS 函数,可以使用 CIRCULARSTRING、CURVEPOLYGON 和其他曲线几何图形类型。

  • AddGeometryColumn - 将几何列添加到现有表。
  • Box2D - 返回表示几何图形 2D 范围的 BOX2D。
  • Box3D - 返回表示几何图形 3D 范围的 BOX3D。
  • DropGeometryColumn - 从空间表中删除几何列。
  • GeometryType - 以文本形式返回几何体的类型。
  • PostGIS_AddBBox - 将边界框添加到几何图形。
  • PostGIS_DropBBox - 从几何图形中删除边界框缓存。
  • PostGIS_HasBBox - 如果此几何图形的边界框已缓存,则返回 TRUE;否则返回 FALSE。
  • ST_3DExtent - 聚合函数,返回几何图形的 3D 边界框。
  • ST_Affine - 对几何体应用 3D 仿射变换。
  • ST_AsBinary - 返回几何/地理图形的 OGC/ISO 熟知二进制 (WKB) 表示形式,不带 SRID 元数据。
  • ST_AsEWKB - 返回带有 SRID 元数据的几何体的扩展熟知二进制 (EWKB) 表示。
  • ST_AsEWKT - 返回带有 SRID 元数据的几何图形的已知文本 (WKT) 表示形式。
  • ST_AsHEXEWKB - 以十六进制 EWKB 格式(文本形式)返回几何体,使用小端 (NDR) 或大端 (XDR) 编码。
  • ST_AsSVG - 返回几何图形的 SVG 路径数据。
  • ST_AsText - 返回几何/地理图形的熟知文本 (WKT) 表示形式,不带 SRID 元数据。
  • ST_ClusterDBSCAN - 窗口函数,使用 DBSCAN 算法返回每个输入几何图形的聚类 ID。
  • ST_ClusterWithin - 聚合函数,按分离距离对几何图形进行聚类。
  • ST_ClusterWithinWin - 窗口函数,返回每个输入几何图形的聚类 ID,使用分离距离进行聚类。
  • ST_Collect - 从一组几何图形创建 GeometryCollection 或 Multi* 几何图形。
  • ST_CoordDim - 返回几何图形的坐标维度。
  • ST_CurveToLine - 将包含曲线的几何图形转换为线性几何图形。
  • ST_Distance - 返回两个几何或地理值之间的距离。
  • ST_Dump - 返回几何图形组件的一组 geometry_dump 行。
  • ST_DumpPoints - 返回几何图形中坐标的一组 geometry_dump 行。
  • ST_EndPoint - 返回线串或圆形线串的最后一个点。
  • ST_EstimatedExtent - 返回空间表的估计范围。
  • ST_FlipCoordinates - 返回 X 和 Y 轴翻转的几何体版本。
  • ST_Force2D - 强制几何体进入“二维模式”。
  • ST_ForceCurve - 如果适用,将几何体向上转换为其曲线类型。
  • ST_ForceSFS - 强制几何体仅使用 SFS 1.1 几何类型。
  • ST_Force3D - 强制几何体进入 XYZ 模式。这是 ST_Force3DZ 的别名。
  • ST_Force3DM - 将几何图形强制转换为 XYM 模式。
  • ST_Force3DZ - 强制几何体进入 XYZ 模式。
  • ST_Force4D - 强制几何体进入 XYZM 模式。
  • ST_ForceCollection - 将几何体转换为 GEOMETRYCOLLECTION。
  • ST_GeoHash - 返回几何图形的 GeoHash 表示形式。
  • ST_GeogFromWKB - 从已知二进制几何表示形式 (WKB) 或扩展已知二进制 (EWKB) 创建地理实例。
  • ST_GeomFromEWKB - 从扩展熟知二进制表示 (EWKB) 返回指定的 ST_Geometry 值。
  • ST_GeomFromEWKT - 从扩展熟知文本表示 (EWKT) 返回指定的 ST_Geometry 值。
  • ST_GeomFromText - 从熟知文本表示形式 (WKT) 返回指定的 ST_Geometry 值。
  • ST_GeomFromWKB - 从熟知二进制几何图形表示形式 (WKB) 和可选的 SRID 创建几何图形实例。
  • ST_GeometryN - 返回几何图形集合的元素。
  • = - 如果几何图形/地理图形 A 的坐标和坐标顺序与几何图形/地理图形 B 的坐标和坐标顺序相同,则返回 TRUE。
  • &<| - 如果 A 的边界框与 B 的边界框重叠或位于 B 的下方,则返回 TRUE。
  • ST_HasArc - 测试几何体是否包含圆弧。
  • ST_Intersects - 测试两个几何图形是否相交(它们至少有一个共同点)
  • ST_IsClosed - 测试 LineString 的起点和终点是否重合。对于多面体表面,测试它是否闭合(体积)。
  • ST_IsCollection - 测试几何体是否为几何集合类型。
  • ST_IsEmpty - 测试几何图形是否为空。
  • ST_LineToCurve - 将线性几何体转换为曲线几何体。
  • ST_MemSize - 返回几何体占用的内存空间量。
  • ST_NPoints - 返回几何体中的点(顶点)数。
  • ST_NRings - 返回多边形几何体中的环数。
  • ST_PointFromWKB - 使用给定的 SRID 从 WKB 创建几何图形。
  • ST_PointN - 返回几何图形中第一个 LineString 或圆形 LineString 中的第 N 个点。
  • ST_Points - 返回一个包含几何体坐标的 MultiPoint。
  • ST_Rotate - 绕原点旋转几何图形。
  • ST_RotateZ - 绕 Z 轴旋转几何图形。
  • ST_SRID - 返回几何图形的空间参考标识符。
  • ST_Scale - 按给定的因子缩放几何图形。
  • ST_SetSRID - 在几何图形上设置 SRID。
  • ST_StartPoint - 返回 LineString 的第一个点。
  • ST_Summary - 返回几何对象内容的文本摘要。
  • ST_SwapOrdinates - 返回给定几何图形的版本,其中给定坐标值已交换。
  • ST_TransScale - 按给定的偏移量和因子平移和缩放几何图形。
  • ST_Transform - 返回一个新的几何图形,其坐标已转换为不同的空间参考系统。
  • ST_Translate - 按给定的偏移量平移几何图形。
  • ST_XMax - 返回 2D 或 3D 边界框或几何图形的 X 最大值。
  • ST_XMin - 返回 2D 或 3D 边界框或几何图形的 X 最小值。
  • ST_YMax - 返回 2D 或 3D 边界框或几何图形的 Y 最大值。
  • ST_YMin - 返回 2D 或 3D 边界框或几何图形的 Y 最小值。
  • ST_ZMax - 返回 2D 或 3D 边界框或几何图形的 Z 最大值。
  • ST_ZMin - 返回 2D 或 3D 边界框或几何图形的 Z 最小值。
  • ST_Zmflag - 返回一个代码,指示几何图形的 ZM 坐标维度。
  • UpdateGeometrySRID - 更新几何列中所有要素的 SRID,以及表元数据。
  • ~(box2df,box2df) - 如果 2D 浮点精度边界框 (BOX2DF) 包含另一个 2D 浮点精度边界框 (BOX2DF),则返回 TRUE。
  • ~(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 包含几何图形的 2D 绑定框,则返回 TRUE。
  • ~(geometry,box2df) - 如果几何图形的 2D 绑定框包含 2D 浮点精度边界框 (GIDX),则返回 TRUE。
  • && - 如果 A 的 2D 边界框与 B 的 2D 边界框相交,则返回 TRUE。
  • &&& - 如果 A 的 n 维边界框与 B 的 n 维边界框相交,则返回 TRUE。
  • @(box2df,box2df) - 如果 2D 浮点精度边界框 (BOX2DF) 包含在另一个 2D 浮点精度边界框中,则返回 TRUE。
  • @(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 包含在几何图形的 2D 边界框中,则返回 TRUE。
  • @(geometry,box2df) - 如果几何图形的 2D 边界框包含在 2D 浮点精度边界框 (BOX2DF) 中,则返回 TRUE。
  • &&(box2df,box2df) - 如果两个 2D 浮点精度边界框 (BOX2DF) 相互交叉,则返回 TRUE。
  • &&(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 与几何图形的(缓存的)2D 边界框相交,则返回 TRUE。
  • &&(geometry,box2df) - 如果几何图形的(缓存的)2D 边界框与 2D 浮点精度边界框 (BOX2DF) 相交,则返回 TRUE。
  • &&&(geometry,gidx) - 如果几何图形的(缓存)n 维边界框与 n 维浮点精度边界框 (GIDX) 相交,则返回 TRUE。
  • &&&(gidx,geometry) - 如果 n 维浮点精度边界框 (GIDX) 与几何图形的(缓存)n 维边界框相交,则返回 TRUE。
  • &&&(gidx,gidx) - 如果两个 n 维浮点精度边界框 (GIDX) 彼此相交,则返回 TRUE。

13.10. PostGIS 多面体表面支持函数

下面给出的函数是 PostGIS 函数,可以使用 POLYHEDRALSURFACE、POLYHEDRALSURFACEM 几何图形。

  • Box2D - 返回表示几何图形 2D 范围的 BOX2D。
  • Box3D - 返回表示几何图形 3D 范围的 BOX3D。
  • CG_3DArea - 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • CG_3DConvexHull - 计算几何图形的 3D 凸包。
  • CG_3DDifference - 执行 3D 差集
  • CG_3DIntersection - 执行 3D 交集
  • CG_3DUnion - 使用 postgis_sfcgal 执行 3D 并集。
  • CG_ApproximateMedialAxis - 计算面状几何体的近似中轴线。
  • CG_Extrude - 将表面拉伸为相关的体积。
  • CG_ForceLHR - 强制左手规则方向。
  • CG_IsPlanar - 检查表面是否为平面。
  • CG_IsSolid - 测试几何体是否为实体。不执行有效性检查。
  • CG_MakeSolid - 将几何体转换为实体。不执行检查。要获得有效的实体,输入几何体必须是闭合的多面体表面或闭合的 TIN。
  • CG_StraightSkeleton - 从几何体计算直线骨架。
  • CG_Tesselate - 对多边形或多面体表面执行表面镶嵌,并返回 TIN 或 TIN 集合。
  • CG_Visibility - 从多边形几何体中的点或线段计算可见性多边形。
  • CG_Volume - 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • GeometryType - 以文本形式返回几何体的类型。
  • ST_3DArea - 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • ST_3DClosestPoint - 返回 g1 上最接近 g2 的 3D 点。这是 3D 最短线上的第一个点。
  • ST_3DConvexHull - 计算几何体的 3D 凸包。
  • ST_3DDFullyWithin - 测试两个 3D 几何体是否完全在给定的 3D 距离内。
  • ST_3DDWithin - 测试两个 3D 几何图形是否在给定的 3D 距离内
  • ST_3DDifference - 执行 3D 差集
  • ST_3DDistance - 返回投影单位中两个几何图形之间的 3D 笛卡尔最小距离(基于空间参考)。
  • ST_3DExtent - 聚合函数,返回几何图形的 3D 边界框。
  • ST_3DIntersection - 执行 3D 交集
  • ST_3DIntersects - 测试两个几何图形是否在 3D 中空间相交 - 仅适用于点、线串、多边形、多面体表面(面积)
  • ST_3DLongestLine - 返回两个几何体之间的 3D 最长线。
  • ST_3DMaxDistance - 返回两个几何体在投影单位中基于空间参考的 3D 笛卡尔最大距离。
  • ST_3DShortestLine - 返回两个几何体之间的 3D 最短线。
  • ST_3DUnion - 执行 3D 并集。
  • ST_Affine - 对几何体应用 3D 仿射变换。
  • ST_ApproximateMedialAxis - 计算面状几何体的近似中轴线。
  • ST_Area - 返回多边形几何图形的面积。
  • ST_AsBinary - 返回几何/地理图形的 OGC/ISO 熟知二进制 (WKB) 表示形式,不带 SRID 元数据。
  • ST_AsEWKB - 返回带有 SRID 元数据的几何体的扩展熟知二进制 (EWKB) 表示。
  • ST_AsEWKT - 返回带有 SRID 元数据的几何图形的已知文本 (WKT) 表示形式。
  • ST_AsGML - 将几何图形作为 GML 版本 2 或 3 元素返回。
  • ST_AsX3D - 以 X3D xml 节点元素格式返回几何体:ISO-IEC-19776-1.2-X3DEncodings-XML。
  • ST_CoordDim - 返回几何图形的坐标维度。
  • ST_Dimension - 返回几何图形的拓扑维度。
  • ST_Dump - 返回几何图形组件的一组 geometry_dump 行。
  • ST_DumpPoints - 返回几何图形中坐标的一组 geometry_dump 行。
  • ST_Expand - 返回从另一个边界框或几何图形扩展的边界框。
  • ST_Extent - 聚合函数,返回几何图形的边界框。
  • ST_Extrude - 将表面拉伸为相关的体积。
  • ST_FlipCoordinates - 返回 X 和 Y 轴翻转的几何体版本。
  • ST_Force2D - 强制几何体进入“二维模式”。
  • ST_ForceLHR - 强制左手规则方向。
  • ST_ForceRHR - 强制多边形中的顶点方向遵循右手规则。
  • ST_ForceSFS - 强制几何体仅使用 SFS 1.1 几何类型。
  • ST_Force3D - 强制几何体进入 XYZ 模式。这是 ST_Force3DZ 的别名。
  • ST_Force3DZ - 强制几何体进入 XYZ 模式。
  • ST_ForceCollection - 将几何体转换为 GEOMETRYCOLLECTION。
  • ST_GeomFromEWKB - 从扩展熟知二进制表示 (EWKB) 返回指定的 ST_Geometry 值。
  • ST_GeomFromEWKT - 从扩展熟知文本表示 (EWKT) 返回指定的 ST_Geometry 值。
  • ST_GeomFromGML - 将几何体的 GML 表示作为输入,并输出 PostGIS 几何对象。
  • ST_GeometryN - 返回几何图形集合的元素。
  • ST_GeometryType - 以文本形式返回几何图形的 SQL-MM 类型。
  • = - 如果几何图形/地理图形 A 的坐标和坐标顺序与几何图形/地理图形 B 的坐标和坐标顺序相同,则返回 TRUE。
  • &<| - 如果 A 的边界框与 B 的边界框重叠或位于 B 的下方,则返回 TRUE。
  • ~= - 如果 A 的边界框与 B 的边界框相同,则返回 TRUE。
  • ST_IsClosed - 测试 LineString 的起点和终点是否重合。对于多面体表面,测试它是否闭合(体积)。
  • ST_IsPlanar - 检查表面是否为平面。
  • ST_IsSolid - 测试几何体是否为实体。不执行有效性检查。
  • ST_MakeSolid - 将几何体转换为实体。不执行检查。要获得有效的实体,输入几何体必须是闭合的多面体表面或闭合的 TIN。
  • ST_MemSize - 返回几何体占用的内存空间量。
  • ST_NPoints - 返回几何体中的点(顶点)数。
  • ST_NumGeometries - 返回几何图形集合中元素的数量。
  • ST_NumPatches - 返回多面体表面上的面的数量。对于非多面体几何图形,将返回 null。
  • ST_PatchN - 返回多面体表面的第 N 个几何图形(面)。
  • ST_RemoveRepeatedPoints - 返回删除重复点的几何体版本。
  • ST_Reverse - 返回顶点顺序反转的几何图形。
  • ST_Rotate - 绕原点旋转几何图形。
  • ST_RotateX - 绕 X 轴旋转几何图形。
  • ST_RotateY - 绕 Y 轴旋转几何图形。
  • ST_RotateZ - 绕 Z 轴旋转几何图形。
  • ST_Scale - 按给定的因子缩放几何图形。
  • ST_ShiftLongitude - 将几何图形的经度坐标在 -180..180 和 0..360 之间移动。
  • ST_StraightSkeleton - 从几何图形计算直线骨架。
  • ST_Summary - 返回几何对象内容的文本摘要。
  • ST_SwapOrdinates - 返回给定几何图形的版本,其中给定坐标值已交换。
  • ST_Tesselate - 对多边形或多面体表面执行曲面细分,并以 TIN 或 TIN 集合的形式返回。
  • ST_Transform - 返回一个新的几何图形,其坐标已转换为不同的空间参考系统。
  • ST_Volume - 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • ~(box2df,box2df) - 如果 2D 浮点精度边界框 (BOX2DF) 包含另一个 2D 浮点精度边界框 (BOX2DF),则返回 TRUE。
  • ~(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 包含几何图形的 2D 绑定框,则返回 TRUE。
  • ~(geometry,box2df) - 如果几何图形的 2D 绑定框包含 2D 浮点精度边界框 (GIDX),则返回 TRUE。
  • && - 如果 A 的 2D 边界框与 B 的 2D 边界框相交,则返回 TRUE。
  • &&& - 如果 A 的 n 维边界框与 B 的 n 维边界框相交,则返回 TRUE。
  • @(box2df,box2df) - 如果 2D 浮点精度边界框 (BOX2DF) 包含在另一个 2D 浮点精度边界框中,则返回 TRUE。
  • @(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 包含在几何图形的 2D 边界框中,则返回 TRUE。
  • @(geometry,box2df) - 如果几何图形的 2D 边界框包含在 2D 浮点精度边界框 (BOX2DF) 中,则返回 TRUE。
  • &&(box2df,box2df) - 如果两个 2D 浮点精度边界框 (BOX2DF) 相互交叉,则返回 TRUE。
  • &&(box2df,geometry) - 如果 2D 浮点精度边界框 (BOX2DF) 与几何图形的(缓存的)2D 边界框相交,则返回 TRUE。
  • &&(geometry,box2df) - 如果几何图形的(缓存的)2D 边界框与 2D 浮点精度边界框 (BOX2DF) 相交,则返回 TRUE。
  • &&&(geometry,gidx) - 如果几何图形的(缓存)n 维边界框与 n 维浮点精度边界框 (GIDX) 相交,则返回 TRUE。
  • &&&(gidx,geometry) - 如果 n 维浮点精度边界框 (GIDX) 与几何图形的(缓存)n 维边界框相交,则返回 TRUE。
  • &&&(gidx,gidx) - 如果两个 n 维浮点精度边界框 (GIDX) 彼此相交,则返回 TRUE。

13.11. PostGIS 函数支持矩阵

下面是 PostGIS 中空间特定函数的字母列表,以及它们处理的空间类型或它们试图符合的 OGC/SQL 合规性。

  • A 表示该函数本机支持该类型或子类型。
  • A 表示它可以工作,但使用内置的强制转换为几何图形的转换强制转换,转换为“最佳 srid”空间参考,然后强制转换回。对于大面积或极点区域,结果可能不如预期,并且可能会累积浮点垃圾。
  • A 表示该函数可以使用该类型,因为自动强制转换为另一个类型,例如强制转换为 box3d,而不是直接类型支持。
  • A 表示该函数仅在 PostGIS 使用 SFCGAL 支持编译时可用。
  • geom - 基本 2D 几何图形支持 (x,y)。
  • geog - 基本 2D 地理支持 (x,y)。
  • 2.5D - 3D/4D 空间中的基本 2D 几何图形(具有 Z 或 M 坐标)。
  • PS - 多面体表面
  • T - 三角形和三角化不规则网络表面 (TIN)

函数 geom geog 2.5D 曲线 SQL MM PS T
ST_Collect        
ST_LineFromMultiPoint          
ST_MakeEnvelope            
ST_MakeLine          
ST_MakePoint          
ST_MakePointM            
ST_MakePolygon          
ST_Point          
ST_PointZ            
ST_PointM            
ST_PointZM            
ST_Polygon        
ST_TileEnvelope            
ST_HexagonGrid            
ST_Hexagon            
ST_SquareGrid            
ST_Square            
ST_Letters            
GeometryType    
ST_Boundary        
ST_BoundingDiagonal          
ST_CoordDim  
ST_Dimension      
ST_Dump    
ST_DumpPoints    
ST_DumpSegments        
ST_DumpRings          
ST_EndPoint      
ST_Envelope          
ST_ExteriorRing        
ST_GeometryN  
ST_GeometryType      
ST_HasArc        
ST_InteriorRingN        
ST_NumCurves        
ST_CurveN        
ST_IsClosed    
ST_IsCollection        
ST_IsEmpty        
ST_IsPolygonCCW          
ST_IsPolygonCW          
ST_IsRing          
ST_IsSimple        
ST_M        
ST_MemSize    
ST_NDims          
ST_NPoints      
ST_NRings        
ST_NumGeometries    
ST_NumInteriorRings          
ST_NumInteriorRing            
ST_NumPatches      
ST_NumPoints          
ST_PatchN      
ST_PointN      
ST_Points        
ST_StartPoint      
ST_Summary    
ST_X        
ST_Y        
ST_Z        
ST_Zmflag        
ST_HasZ          
ST_HasM          
ST_AddPoint          
ST_CollectionExtract            
ST_CollectionHomogenize            
ST_CurveToLine      
ST_Scroll          
ST_FlipCoordinates    
ST_Force2D      
ST_Force3D      
ST_Force3DZ      
ST_Force3DM          
ST_Force4D        
ST_ForceCollection      
ST_ForceCurve        
ST_ForcePolygonCCW          
ST_ForcePolygonCW          
ST_ForceSFS    
ST_ForceRHR        
ST_LineExtend            
ST_LineToCurve        
ST_Multi            
ST_Normalize            
ST_Project          
ST_QuantizeCoordinates            
ST_RemovePoint          
ST_RemoveRepeatedPoints        
ST_RemoveIrrelevantPointsForView            
ST_RemoveSmallParts            
ST_Reverse        
ST_Segmentize          
ST_SetPoint          
ST_ShiftLongitude      
ST_WrapX          
ST_SnapToGrid          
ST_Snap            
ST_SwapOrdinates    
ST_IsValid          
ST_IsValidDetail            
ST_IsValidReason            
ST_MakeValid          
ST_InverseTransformPipeline            
ST_SetSRID          
ST_SRID        
ST_Transform      
ST_TransformPipeline            
postgis_srs_codes              
postgis_srs              
postgis_srs_all              
postgis_srs_search            
ST_BdPolyFromText            
ST_BdMPolyFromText            
ST_GeogFromText            
ST_GeographyFromText            
ST_GeomCollFromText          
ST_GeomFromEWKT    
ST_GeomFromMARC21            
ST_GeometryFromText          
ST_GeomFromText        
ST_LineFromText          
ST_MLineFromText          
ST_MPointFromText          
ST_MPolyFromText          
ST_PointFromText          
ST_PolygonFromText          
ST_WKTToSQL          
ST_GeogFromWKB          
ST_GeomFromEWKB    
ST_GeomFromWKB        
ST_LineFromWKB          
ST_LinestringFromWKB          
ST_PointFromWKB      
ST_WKBToSQL          
ST_Box2dFromGeoHash            
ST_GeomFromGeoHash            
ST_GeomFromGML      
ST_GeomFromGeoJSON          
ST_GeomFromKML          
ST_GeomFromTWKB            
ST_GMLToSQL          
ST_LineFromEncodedPolyline            
ST_PointFromGeoHash              
ST_FromFlatGeobufToTable              
ST_FromFlatGeobuf              
ST_AsEWKT  
ST_AsText      
ST_AsBinary
ST_AsEWKB    
ST_AsHEXEWKB        
ST_AsEncodedPolyline            
ST_AsFlatGeobuf            
ST_AsGeobuf            
ST_AsGeoJSON        
ST_AsGML  
ST_AsKML        
ST_AsLatLonText            
ST_AsMARC21            
ST_AsMVTGeom            
ST_AsMVT            
ST_AsSVG        
ST_AsTWKB            
ST_AsX3D      
ST_GeoHash          
&&      
&&(geometry,box2df)        
&&(box2df,geometry)        
&&(box2df,box2df)        
&&&    
&&&(geometry,gidx)    
&&&(gidx,geometry)    
&&&(gidx,gidx)      
&<            
&<|        
&>            
<<            
<<|            
=      
>>            
@            
@(geometry,box2df)        
@(box2df,geometry)        
@(box2df,box2df)        
|&>            
|>>            
~            
~(geometry,box2df)        
~(box2df,geometry)        
~(box2df,box2df)        
~=          
<->          
|=|            
<#>            
<<->>            
ST_3DIntersects    
ST_Contains          
ST_ContainsProperly            
ST_CoveredBy          
ST_Covers          
ST_Crosses          
ST_Disjoint          
ST_Equals          
ST_Intersects    
ST_LineCrossingDirection            
ST_OrderingEquals          
ST_Overlaps          
ST_Relate          
ST_RelateMatch              
ST_Touches          
ST_Within          
ST_3DDWithin      
ST_3DDFullyWithin        
ST_DFullyWithin            
ST_DWithin          
ST_PointInsideCircle            
ST_Area      
ST_Azimuth          
ST_Angle            
ST_ClosestPoint          
ST_3DClosestPoint        
ST_Distance      
ST_3DDistance      
ST_DistanceSphere            
ST_DistanceSpheroid            
ST_FrechetDistance            
ST_HausdorffDistance            
ST_Length        
ST_Length2D            
ST_3DLength        
ST_LengthSpheroid          
ST_LongestLine            
ST_3DLongestLine        
ST_MaxDistance            
ST_3DMaxDistance        
ST_MinimumClearance            
ST_MinimumClearanceLine            
ST_Perimeter        
ST_Perimeter2D            
ST_3DPerimeter        
ST_ShortestLine          
ST_3DShortestLine        
ST_ClipByBox2D            
ST_Difference        
ST_Intersection      
ST_MemUnion          
ST_Node          
ST_Split            
ST_Subdivide            
ST_SymDifference        
ST_UnaryUnion          
ST_Union        
ST_Buffer        
ST_BuildArea            
ST_Centroid        
ST_ChaikinSmoothing          
ST_ConcaveHull            
ST_ConvexHull        
ST_DelaunayTriangles        
ST_FilterByM            
ST_GeneratePoints            
ST_GeometricMedian          
ST_LineMerge            
ST_MaximumInscribedCircle            
ST_LargestEmptyCircle            
ST_MinimumBoundingCircle            
ST_MinimumBoundingRadius            
ST_OrientedEnvelope            
ST_OffsetCurve            
ST_PointOnSurface        
ST_Polygonize            
ST_ReducePrecision            
ST_SharedPaths            
ST_Simplify            
ST_SimplifyPreserveTopology            
ST_SimplifyPolygonHull            
ST_SimplifyVW            
ST_SetEffectiveArea            
ST_TriangulatePolygon            
ST_VoronoiLines            
ST_VoronoiPolygons            
ST_CoverageInvalidEdges            
ST_CoverageSimplify            
ST_CoverageUnion            
ST_Affine    
ST_Rotate    
ST_RotateX      
ST_RotateY      
ST_RotateZ    
ST_Scale    
ST_Translate        
ST_TransScale        
ST_ClusterDBSCAN          
ST_ClusterIntersecting            
ST_ClusterIntersectingWin            
ST_ClusterKMeans            
ST_ClusterWithin          
ST_ClusterWithinWin          
Box2D      
Box3D    
ST_EstimatedExtent          
ST_Expand        
ST_Extent        
ST_3DExtent    
ST_MakeBox2D            
ST_3DMakeBox            
ST_XMax        
ST_XMin        
ST_YMax        
ST_YMin        
ST_ZMax        
ST_ZMin        
ST_LineInterpolatePoint        
ST_3DLineInterpolatePoint          
ST_LineInterpolatePoints        
ST_LineLocatePoint          
ST_LineSubstring        
ST_LocateAlong          
ST_LocateBetween          
ST_LocateBetweenElevations          
ST_InterpolatePoint          
ST_AddMeasure          
ST_IsValidTrajectory          
ST_ClosestPointOfApproach          
ST_DistanceCPA          
ST_CPAWithin          
postgis.backend              
postgis.gdal_datapath              
postgis.gdal_enabled_drivers              
postgis.enable_outdb_rasters              
postgis.gdal_vsi_options              
PostGIS_AddBBox          
PostGIS_DropBBox          
PostGIS_HasBBox          
postgis_sfcgal_version              
postgis_sfcgal_full_version              
CG_ForceLHR      
CG_IsPlanar      
CG_IsSolid      
CG_MakeSolid      
CG_Orientation          
CG_Area            
CG_3DArea    
CG_Volume    
ST_ForceLHR      
ST_IsPlanar      
ST_IsSolid      
ST_MakeSolid      
ST_Orientation          
ST_3DArea    
ST_Volume    
CG_Intersection            
CG_Intersects          
CG_3DIntersects          
CG_Difference          
ST_3DDifference    
CG_3DDifference    
CG_Distance          
CG_3DDistance          
ST_3DConvexHull      
CG_3DConvexHull      
ST_3DIntersection    
CG_3DIntersection    
CG_Union            
ST_3DUnion    
CG_3DUnion    
ST_AlphaShape            
CG_AlphaShape            
CG_ApproxConvexPartition            
ST_ApproximateMedialAxis      
CG_ApproximateMedialAxis      
ST_ConstrainedDelaunayTriangles          
CG_ConstrainedDelaunayTriangles          
ST_Extrude      
CG_Extrude      
CG_ExtrudeStraightSkeleton            
CG_GreeneApproxConvexPartition            
ST_MinkowskiSum            
CG_MinkowskiSum            
ST_OptimalAlphaShape            
CG_OptimalAlphaShape            
CG_OptimalConvexPartition            
CG_StraightSkeleton      
ST_StraightSkeleton      
ST_Tesselate      
CG_Tesselate      
CG_Triangulate            
CG_Visibility      
CG_YMonotonePartition            
getfaceedges_returntype              
TopoGeometry              
validatetopology_returntype              
TopoElement              
TopoElementArray              
AddTopoGeometryColumn              
RenameTopoGeometryColumn              
DropTopology              
RenameTopology              
DropTopoGeometryColumn              
Populate_Topology_Layer              
TopologySummary              
ValidateTopology            
ValidateTopologyRelation              
FindTopology              
FindLayer              
CreateTopology              
CopyTopology              
ST_InitTopoGeo            
ST_CreateTopoGeo          
TopoGeo_AddPoint            
TopoGeo_AddLineString            
TopoGeo_AddPolygon            
TopoGeo_LoadGeometry            
ST_AddIsoNode          
ST_AddIsoEdge          
ST_AddEdgeNewFaces          
ST_AddEdgeModFace          
ST_RemEdgeNewFace            
ST_RemEdgeModFace            
ST_ChangeEdgeGeom          
ST_ModEdgeSplit          
ST_ModEdgeHeal            
ST_NewEdgeHeal            
ST_MoveIsoNode          
ST_NewEdgesSplit          
ST_RemoveIsoNode            
ST_RemoveIsoEdge            
GetEdgeByPoint            
GetFaceByPoint            
GetFaceContainingPoint            
GetNodeByPoint            
GetTopologyID              
GetTopologySRID              
GetTopologyName              
ST_GetFaceEdges            
ST_GetFaceGeometry          
GetRingEdges              
GetNodeEdges              
Polygonize              
AddNode            
AddEdge            
AddFace            
ST_Simplify            
RemoveUnusedPrimitives            
CreateTopoGeom            
toTopoGeom            
TopoElementArray_Agg              
TopoElement            
clearTopoGeom            
TopoGeom_addElement            
TopoGeom_remElement            
TopoGeom_addTopoGeom            
toTopoGeom              
GetTopoGeomElementArray              
GetTopoGeomElements              
ST_SRID          
AsGML            
AsTopoJSON            
Equals          
Intersects          
geomval              
addbandarg              
rastbandarg              
raster              
reclassarg              
summarystats              
unionarg              
AddRasterConstraints              
DropRasterConstraints              
AddOverviewConstraints              
DropOverviewConstraints              
PostGIS_GDAL_Version              
PostGIS_Raster_Lib_Build_Date              
PostGIS_Raster_Lib_Version              
ST_GDALDrivers              
ST_Contour              
ST_InterpolateRaster            
UpdateRasterSRID              
ST_CreateOverview              
ST_AddBand              
ST_AsRaster            
ST_Band              
ST_MakeEmptyCoverage              
ST_MakeEmptyRaster              
ST_Tile              
ST_Retile            
ST_FromGDALRaster              
ST_GeoReference              
ST_Height              
ST_IsEmpty              
ST_MemSize              
ST_MetaData              
ST_NumBands              
ST_PixelHeight              
ST_PixelWidth              
ST_ScaleX              
ST_ScaleY              
ST_RasterToWorldCoord              
ST_RasterToWorldCoordX              
ST_RasterToWorldCoordY              
ST_Rotation              
ST_SkewX              
ST_SkewY              
ST_SRID              
ST_Summary              
ST_UpperLeftX              
ST_UpperLeftY              
ST_Width              
ST_WorldToRasterCoord            
ST_WorldToRasterCoordX            
ST_WorldToRasterCoordY            
ST_BandMetaData              
ST_BandNoDataValue              
ST_BandIsNoData              
ST_BandPath              
ST_BandFileSize              
ST_BandFileTimestamp              
ST_BandPixelType              
ST_MinPossibleValue              
ST_HasNoBand              
ST_PixelAsPolygon            
ST_PixelAsPolygons              
ST_PixelAsPoint            
ST_PixelAsPoints              
ST_PixelAsCentroid            
ST_PixelAsCentroids              
ST_Value            
ST_NearestValue            
ST_SetZ            
ST_SetM            
ST_Neighborhood            
ST_SetValue            
ST_SetValues              
ST_DumpValues              
ST_PixelOfValue              
ST_SetGeoReference              
ST_SetRotation              
ST_SetScale              
ST_SetSkew              
ST_SetSRID              
ST_SetUpperLeft              
ST_Resample              
ST_Rescale              
ST_Reskew              
ST_SnapToGrid              
ST_Resize              
ST_Transform              
ST_SetBandNoDataValue              
ST_SetBandIsNoData              
ST_SetBandPath              
ST_SetBandIndex              
ST_Count              
ST_CountAgg              
ST_Histogram              
ST_Quantile              
ST_SummaryStats              
ST_SummaryStatsAgg              
ST_ValueCount              
ST_RastFromWKB              
ST_RastFromHexWKB              
ST_AsBinary/ST_AsWKB              
ST_AsHexWKB              
ST_AsGDALRaster              
ST_AsJPEG              
ST_AsPNG              
ST_AsTIFF              
ST_Clip            
ST_ColorMap              
ST_Grayscale              
ST_Intersection            
ST_MapAlgebra (回调函数版本)              
ST_MapAlgebra (表达式版本)              
ST_MapAlgebraExpr              
ST_MapAlgebraExpr              
ST_MapAlgebraFct              
ST_MapAlgebraFct              
ST_MapAlgebraFctNgb              
ST_Reclass              
ST_Union              
ST_Distinct4ma              
ST_InvDistWeight4ma              
ST_Max4ma              
ST_Mean4ma              
ST_Min4ma              
ST_MinDist4ma              
ST_Range4ma              
ST_StdDev4ma              
ST_Sum4ma              
ST_Aspect              
ST_HillShade              
ST_Roughness              
ST_Slope              
ST_TPI              
ST_TRI              
Box3D            
ST_ConvexHull            
ST_DumpAsPolygons              
ST_Envelope            
ST_MinConvexHull            
ST_Polygon            
&&            
&<              
&>              
=              
@            
~=              
~            
ST_Contains              
ST_ContainsProperly              
ST_Covers              
ST_CoveredBy              
ST_Disjoint              
ST_Intersects            
ST_Overlaps              
ST_Touches              
ST_SameAlignment              
ST_NotSameAlignmentReason              
ST_Within              
ST_DWithin              
ST_DFullyWithin              
stdaddr              
rules table              
lex table              
gaz table              
debug_standardize_address              
parse_address              
standardize_address              
Drop_Indexes_Generate_Script              
Drop_Nation_Tables_Generate_Script              
Drop_State_Tables_Generate_Script              
Geocode            
Geocode_Intersection            
Get_Geocode_Setting              
Get_Tract            
Install_Missing_Indexes              
Loader_Generate_Census_Script              
Loader_Generate_Script              
Loader_Generate_Nation_Script              
Missing_Indexes_Generate_Script              
Normalize_Address              
Pagc_Normalize_Address              
Pprint_Addy              
Reverse_Geocode            
Topology_Load_Tiger              
Set_Geocode_Setting              

13.12. 新、增强或更改的 PostGIS 函数

13.12.1. PostGIS 3.5 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 3.5 中的新函数

  • CG_3DArea - 可用性: 3.5.0 计算 3D 表面几何图形的面积。对于实体,将返回 0。
  • CG_3DConvexHull - 可用性: 3.5.0 计算几何体的 3D 凸包。
  • CG_3DDifference - 可用性: 3.5.0 执行 3D 差异运算
  • CG_3DDistance - 可用性: 3.5.0 计算两个几何体之间的最小 3D 距离
  • CG_3DIntersection - 可用性: 3.5.0 执行 3D 交集运算
  • CG_3DIntersects - 可用性: 3.5.0 测试两个 3D 几何图形是否相交
  • CG_3DUnion - 可用性: 3.5.0 使用 postgis_sfcgal 执行 3D 并集运算。
  • CG_AlphaShape - 可用性: 3.5.0 - 需要 SFCGAL >= 1.4.1。计算包含几何体的 Alpha 形状
  • CG_ApproxConvexPartition - 可用性: 3.5.0 - 需要 SFCGAL >= 1.5.0。计算多边形几何图形的近似凸划分
  • CG_ApproximateMedialAxis - 可用性: 3.5.0 计算面积几何图形的近似中轴线。
  • CG_Area - 可用性: 3.5.0 计算几何图形的面积
  • CG_Difference - 可用性: 3.5.0 计算两个几何体之间的几何差异
  • CG_Distance - 可用性: 3.5.0 计算两个几何体之间的最小距离
  • CG_Extrude - 可用性: 3.5.0 将曲面拉伸为相关的体积
  • CG_ExtrudeStraightSkeleton - 可用性: 3.5.0 - 需要 SFCGAL >= 1.5.0。直线骨架拉伸
  • CG_ForceLHR - 可用性: 3.5.0 强制 LHR 方向
  • CG_GreeneApproxConvexPartition - 可用性: 3.5.0 - 需要 SFCGAL >= 1.5.0。计算多边形几何图形的近似凸划分
  • CG_Intersection - 可用性: 3.5.0 计算两个几何图形的交集
  • CG_Intersects - 可用性: 3.5.0 测试两个几何图形是否相交(它们至少有一个公共点)
  • CG_IsPlanar - 可用性: 3.5.0 检查表面是否为平面
  • CG_IsSolid - 可用性: 3.5.0 测试几何图形是否为实体。不执行有效性检查。
  • CG_MakeSolid - 可用性: 3.5.0 将几何体转换为实体。不执行任何检查。要获得有效的实体,输入几何体必须是闭合的多面体表面或闭合的 TIN。
  • CG_MinkowskiSum - 可用性: 3.5.0 执行闵可夫斯基和
  • CG_OptimalAlphaShape - 可用性: 3.5.0 - 需要 SFCGAL >= 1.4.1。使用“最佳”alpha 值计算包围几何体的 Alpha 形状。
  • CG_OptimalConvexPartition - 可用性: 3.5.0 - 需要 SFCGAL >= 1.5.0。计算多边形几何体的最佳凸划分
  • CG_Orientation - 可用性: 3.5.0 确定表面方向
  • CG_StraightSkeleton - 可用性: 3.5.0 从几何体计算直骨架
  • CG_Tesselate - 可用性: 3.5.0 执行多边形或多面体表面的曲面细分,并返回为 TIN 或 TIN 集合
  • CG_Triangulate - 可用性: 3.5.0 三角化多边形几何体
  • CG_Union - 可用性: 3.5.0 计算两个几何体的并集
  • CG_Visibility - 可用性: 3.5.0 - 需要 SFCGAL >= 1.5.0。从多边形几何体中的点或线段计算可见性多边形
  • CG_Volume - 可用性: 3.5.0 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何体,则返回 0。
  • CG_YMonotonePartition - 可用性: 3.5.0 - 需要 SFCGAL >= 1.5.0。计算多边形几何体的 y 单调划分
  • ST_HasM - 可用性: 3.5.0 检查几何体是否具有 M(度量)维度。
  • ST_HasZ - 可用性: 3.5.0 检查几何体是否具有 Z 维度。
  • ST_RemoveIrrelevantPointsForView - 可用性: 3.5.0 删除对于渲染几何体的特定矩形视图不相关的点。
  • ST_RemoveSmallParts - 可用性: 3.5.0 删除几何体的小部分(多边形环或线串)。
  • TopoGeo_LoadGeometry - 可用性: 3.5.0 将几何体加载到现有拓扑中,根据需要进行捕捉和分割。

PostGIS 3.5 中增强的功能

  • ST_Clip - 增强: 3.5.0 - 添加了 touched 参数。返回由输入几何体裁剪的栅格。如果未指定波段号,则处理所有波段。如果未指定 crop 或为 TRUE,则裁剪输出栅格。如果 touched 设置为 TRUE,则包括接触的像素,否则仅当像素的中心在几何体中时才包括。

PostGIS 3.5 中更改的功能

  • ST_AsGeoJSON - 更改: 3.5.0 允许指定包含要素 ID 的列。以 GeoJSON 格式返回几何体或要素。
  • ST_DFullyWithin - 更改: 3.5.0:该函数背后的逻辑现在使用缓冲区的包含测试,而不是 ST_MaxDistance 算法。结果将与以前的版本不同,但应该更符合用户的期望。测试几何体是否完全在另一个几何体的距离内

13.12.2. PostGIS 3.4 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 3.4 中新增的函数

  • PostGIS_GEOS_Compiled_Version - 可用性: 3.4.0 返回构建 PostGIS 所用的 GEOS 库的版本号。
  • PostGIS_PROJ_Compiled_Version - 可用性: 3.5.0 返回构建 PostGIS 所用的 PROJ 库的版本号。
  • RenameTopoGeometryColumn - 可用性: 3.4.0 重命名拓扑几何列
  • RenameTopology - 可用性: 3.4.0 重命名拓扑
  • ST_ClusterIntersectingWin - 可用性: 3.4.0 窗口函数,为每个输入几何体返回一个集群 ID,将输入几何体聚类为连接集。
  • ST_ClusterWithinWin - 可用性: 3.4.0 窗口函数,为每个输入几何体返回一个集群 ID,使用分离距离进行聚类。
  • ST_CoverageInvalidEdges - 可用性: 3.4.0 窗口函数,查找多边形无法形成有效覆盖的位置。
  • ST_CoverageSimplify - 可用性: 3.4.0 窗口函数,简化多边形覆盖的边缘。
  • ST_CoverageUnion - 可用性: 3.4.0 - 需要 GEOS >= 3.8.0 通过删除共享边缘来计算形成覆盖的一组多边形的并集。
  • ST_InverseTransformPipeline - 可用性: 3.4.0 返回一个新的几何体,其坐标使用定义的坐标变换管道的反向变换到不同的空间参考系统。
  • ST_LargestEmptyCircle - 可用性: 3.4.0。计算不与几何体重叠的最大圆。
  • ST_LineExtend - 可用性: 3.4.0 返回向前和向后延伸指定距离的线。
  • ST_TransformPipeline - 可用性: 3.4.0 返回一个新的几何体,其坐标使用定义的坐标变换管道变换到不同的空间参考系统。
  • TopoElement - 可用性: 3.4.0 将拓扑几何转换为拓扑元素。
  • debug_standardize_address - 可用性: 3.4.0 返回一个 json 格式的文本,列出解析标记和标准化
  • postgis_srs - 可用性: 3.4.0 返回请求的权威机构和 srid 的元数据记录。
  • postgis_srs_all - 可用性: 3.4.0 返回基础 Proj 数据库中每个空间参考系统的元数据记录。
  • postgis_srs_codes - 可用性: 3.4.0 返回与给定权威机构关联的 SRS 代码列表。
  • postgis_srs_search - 可用性: 3.4.0 返回投影坐标系统的元数据记录,这些系统的使用区域完全包含 bounds 参数。

PostGIS 3.4 中增强的功能

  • PostGIS_Full_Version - 增强: 3.4.0 现在包括额外的 PROJ 配置 NETWORK_ENABLED、URL_ENDPOINT 和 proj.db 位置的 DATABASE_PATH。报告完整的 PostGIS 版本和构建配置信息。
  • PostGIS_PROJ_Version - 增强: 3.4.0 现在包括 NETWORK_ENABLED、URL_ENDPOINT 和 proj.db 位置的 DATABASE_PATH。返回 PROJ4 库的版本号。
  • ST_AsSVG - 增强: 3.4.0 以支持所有曲线类型。返回几何体的 SVG 路径数据。
  • ST_ClosestPoint - 增强: 3.4.0 - 支持地理。返回 g1 上最接近 g2 的 2D 点。这是从一个几何体到另一个几何体的最短线段的第一个点。
  • ST_LineSubstring - 增强: 3.4.0 - 引入了对地理的支持。返回两分段位置之间的线段部分。
  • ST_Project - 增强: 3.4.0 允许几何参数和省略方位角的两点形式。返回从起点按距离和方位(方位角)投影的点。
  • ST_Resample - 增强: 3.4.0 添加了 max 和 min 重采样选项。使用指定的重采样算法、新维度、任意网格角和一组栅格地理配准属性(定义或从另一个栅格借用)对栅格进行重采样。
  • ST_Rescale - 增强: 3.4.0 添加了 max 和 min 重采样选项。仅通过调整其比例(或像素大小)来重采样栅格。使用 NearestNeighbor(英语或美国拼写)、Bilinear、Cubic、CubicSpline、Lanczos、Max 或 Min 重采样算法计算新的像素值。默认为 NearestNeighbor。
  • ST_ShortestLine - 增强: 3.4.0 - 支持地理。返回两个几何体之间最短的 2D 线段

PostGIS 3.4 中更改的功能

  • PostGIS_Extensions_Upgrade - 更改: 3.4.0 添加了 target_version 参数。将 PostGIS 扩展程序(例如,postgis_raster、postgis_topology、postgis_sfcgal)打包和升级到给定或最新版本。

13.12.3. PostGIS 3.3 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 3.3 中新增的函数

  • RemoveUnusedPrimitives - 可用性: 3.3.0 删除定义现有 TopoGeometry 对象不需要的拓扑基元。
  • ST_3DConvexHull - 可用性: 3.3.0 计算几何体的 3D 凸包。
  • ST_3DUnion - 可用性: 3.3.0 添加了聚合变体。执行 3D 并集。
  • ST_AsMARC21 - 可用性: 3.3.0 以带有地理数据字段 (034) 的 MARC21/XML 记录形式返回几何体。
  • ST_GeomFromMARC21 - 可用性: 3.3.0,需要 libxml2 2.6+。将 MARC21/XML 地理数据作为输入,并返回 PostGIS 几何对象。
  • ST_Letters - 可用性: 3.3.0 返回以几何体渲染的输入字母,默认起始位置位于原点,默认文本高度为 100。
  • ST_OptimalAlphaShape - 可用性: 3.3.0 - 需要 SFCGAL >= 1.4.1。使用“最佳”alpha 值计算包围几何体的 Alpha 形状。
  • ST_SimplifyPolygonHull - 可用性: 3.3.0。计算多边形几何体的简化拓扑保留外部或内部凸包。
  • ST_TriangulatePolygon - 可用性: 3.3.0。计算多边形的约束 Delaunay 三角剖分
  • postgis_sfcgal_full_version - 可用性: 3.3.0 返回正在使用的 SFCGAL 的完整版本,包括 CGAL 和 Boost 版本

PostGIS 3.3 中增强的功能

  • ST_ConcaveHull - 增强:3.3.0,为 GEOS 3.11+ 启用 GEOS 原生实现。计算包含所有输入几何顶点的一个可能为凹的几何图形。
  • ST_LineMerge - 增强:3.3.0,接受一个 directed 参数。返回通过缝合 MultiLineString 形成的线。

PostGIS 3.3 中更改的函数

  • PostGIS_Extensions_Upgrade - 更改:3.3.0,支持从任何 PostGIS 版本升级。并非在所有系统上都能工作。打包并将 PostGIS 扩展(例如 postgis_raster、postgis_topology、postgis_sfcgal)升级到给定或最新版本。

13.12.4. PostGIS 3.2 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 3.2 中新增的函数

  • FindLayer - 可用性:3.2.0,通过不同方式返回一个 topology.layer 记录。
  • FindTopology - 可用性:3.2.0,通过不同方式返回一个 topology 记录。
  • GetFaceContainingPoint - 可用性:3.2.0,查找包含一个点的面。
  • ST_AsFlatGeobuf - 可用性:3.2.0,返回一组行的 FlatGeobuf 表示。
  • ST_Contour - 可用性:3.2.0,使用 GDAL 等高线算法,从提供的栅格波段生成一组矢量等高线。
  • ST_DumpSegments - 可用性:3.2.0,为几何图形中的线段返回一组 geometry_dump 行。
  • ST_FromFlatGeobuf - 可用性:3.2.0,读取 FlatGeobuf 数据。
  • ST_FromFlatGeobufToTable - 可用性:3.2.0,根据 FlatGeobuf 数据的结构创建一个表。
  • ST_InterpolateRaster - 可用性:3.2.0,根据一组输入的 3D 点插值网格表面,使用 X 和 Y 值在网格上定位点,并使用点的 Z 值作为表面高程。
  • ST_SRID - 可用性:3.2.0,返回一个拓扑几何图形的空间参考标识符。
  • ST_Scroll - 可用性:3.2.0,更改闭合 LineString 的起点。
  • ST_SetM - 可用性:3.2.0,返回一个与输入几何图形具有相同 X/Y 坐标的几何图形,并将栅格中的值使用请求的重采样算法复制到 M 维度中。
  • ST_SetZ - 可用性:3.2.0,返回一个与输入几何图形具有相同 X/Y 坐标的几何图形,并将栅格中的值使用请求的重采样算法复制到 Z 维度中。
  • TopoGeom_addTopoGeom - 可用性:3.2,将一个 TopoGeometry 的元素添加到另一个 TopoGeometry 的定义中。
  • ValidateTopologyRelation - 可用性:3.2.0,返回有关无效拓扑关系记录的信息。
  • postgis.gdal_vsi_options - 可用性:3.2.0,一个字符串配置,用于设置处理外部数据库栅格时使用的选项。

PostGIS 3.2 中增强的函数

  • GetFaceByPoint - 增强:3.2.0,更高效的实现和更清晰的约定,停止使用无效的拓扑。查找与给定点相交的面。
  • ST_ClusterKMeans - 增强:3.2.0,支持 max_radius 窗口函数,该函数使用 K 均值算法为每个输入几何图形返回一个聚类 ID。
  • ST_MakeValid - 增强:3.2.0,添加了算法选项 'linework' 和 'structure',这需要 GEOS >= 3.10.0。尝试在不丢失顶点的情况下使无效的几何图形有效。
  • ST_PixelAsCentroid - 增强:3.2.0,现在在 C 中实现,速度更快。返回由像素表示的区域的质心(点几何图形)。
  • ST_PixelAsCentroids - 增强:3.2.0,现在在 C 中实现,速度更快。返回栅格波段的每个像素的质心(点几何图形)以及值、每个像素的 X 和 Y 栅格坐标。点几何图形是由像素表示的区域的质心。
  • ST_Point - 增强:3.2.0,添加了 srid 作为额外的可选参数。较旧的安装需要与 ST_SetSRID 结合使用才能标记几何图形上的 srid。使用 X、Y 和 SRID 值创建一个点。
  • ST_PointM - 增强:3.2.0,添加了 srid 作为额外的可选参数。较旧的安装需要与 ST_SetSRID 结合使用才能标记几何图形上的 srid。使用 X、Y、M 和 SRID 值创建一个点。
  • ST_PointZ - 增强:3.2.0,添加了 srid 作为额外的可选参数。较旧的安装需要与 ST_SetSRID 结合使用才能标记几何图形上的 srid。使用 X、Y、Z 和 SRID 值创建一个点。
  • ST_PointZM - 增强:3.2.0,添加了 srid 作为额外的可选参数。较旧的安装需要与 ST_SetSRID 结合使用才能标记几何图形上的 srid。使用 X、Y、Z、M 和 SRID 值创建一个点。
  • ST_RemovePoint - 增强:3.2.0,从线串中删除一个点。
  • ST_RemoveRepeatedPoints - 增强:3.2.0,返回删除重复点的几何图形版本。
  • ST_StartPoint - 增强:3.2.0,为所有几何图形返回一个点。如果输入不是 LineString,则之前的行为返回 NULL。返回 LineString 的第一个点。
  • ST_Value - 增强:3.2.0,添加了 resample 可选参数。返回给定列 x、行 y 像素或特定几何点中给定波段的值。波段编号从 1 开始,如果未指定则假定为 1。如果 exclude_nodata_value 设置为 false,则所有像素(包括 nodata 像素)都被视为相交并返回值。如果未传入 exclude_nodata_value,则从栅格的元数据中读取它。
  • TopoGeo_AddLineString - 增强:3.2.0,添加了对返回签名标识符的支持。使用容差并可能拆分现有边/面,将线串添加到现有拓扑中。

PostGIS 3.2 中更改的函数

  • ST_Boundary - 更改:3.2.0,支持 TIN,不使用 geos,不对曲线进行线性化。返回几何图形的边界。
  • ValidateTopology - 更改:3.2.0,添加了可选的 bbox 参数,执行面标记和边链接检查。返回一组 validatetopology_returntype 对象,详细说明拓扑的问题。

13.12.5. PostGIS 3.1 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 3.1 中新增的函数

  • ST_Hexagon - 可用性:3.1.0,使用提供的边大小和六边形网格空间内的单元坐标返回单个六边形。
  • ST_HexagonGrid - 可用性:3.1.0,返回一组六边形和单元索引,这些六边形和单元索引完全覆盖几何参数的边界。
  • ST_MaximumInscribedCircle - 可用性:3.1.0。计算几何图形内包含的最大圆。
  • ST_ReducePrecision - 可用性:3.1.0。返回一个有效的几何图形,其中点四舍五入到网格容差。
  • ST_Square - 可用性:3.1.0,使用提供的边大小和正方形网格空间内的单元坐标返回单个正方形。
  • ST_SquareGrid - 可用性:3.1.0,返回一组正方形网格和单元索引,这些正方形网格和单元索引完全覆盖几何参数的边界。

PostGIS 3.1 中增强的函数

  • ST_AsEWKT - 增强:3.1.0,支持可选的精度参数。返回带有 SRID 元数据的几何图形的 Well-Known Text (WKT) 表示形式。
  • ST_ClusterKMeans - 增强:3.1.0,支持 3D 几何图形和权重。窗口函数使用 K 均值算法为每个输入几何图形返回一个聚类 ID。
  • ST_Difference - 增强:3.1.0,接受 gridSize 参数。计算表示几何图形 A 中不与几何图形 B 相交的部分的几何图形。
  • ST_Intersection - 增强:3.1.0,接受 gridSize 参数。计算表示几何图形 A 和 B 的共享部分的几何图形。
  • ST_MakeValid - 增强:3.1.0,添加了删除具有 NaN 值的坐标。尝试在不丢失顶点的情况下使无效的几何图形有效。
  • ST_Subdivide - 增强:3.1.0,接受 gridSize 参数。计算几何图形的直线细分。
  • ST_SymDifference - 增强:3.1.0,接受 gridSize 参数。计算表示几何图形 A 和 B 中不相交部分的几何图形。
  • ST_TileEnvelope - 增强:3.1.0,添加了 margin 参数。使用 XYZ 切片系统在 Web Mercator (SRID:3857) 中创建一个矩形多边形。
  • ST_UnaryUnion - 增强:3.1.0,接受 gridSize 参数。计算单个几何图形的组件的并集。
  • ST_Union - 增强:3.1.0,接受 gridSize 参数。计算表示输入几何图形的点集并集的几何图形。

PostGIS 3.1 中更改的函数

  • ST_Count - 更改:3.1.0 - 删除了 ST_Count(rastertable, rastercolumn, ...) 变体。请改用。返回栅格或栅格覆盖率的给定波段中的像素数。如果未指定波段,则默认为波段 1。如果 exclude_nodata_value 设置为 true,则只会计算不等于 nodata 值的像素。
  • ST_Force3D - 更改:3.1.0。添加了对提供非零 Z 值的支持。强制几何图形进入 XYZ 模式。这是 ST_Force3DZ 的别名。
  • ST_Force3DM - 更改:3.1.0。添加了对提供非零 M 值的支持。强制几何图形进入 XYM 模式。
  • ST_Force3DZ - 更改:3.1.0。添加了对提供非零 Z 值的支持。强制几何图形进入 XYZ 模式。
  • ST_Force4D - 更改:3.1.0。添加了对提供非零 Z 和 M 值的支持。强制几何图形进入 XYZM 模式。
  • ST_Histogram - 更改:3.1.0,删除了 ST_Histogram(table_name, column_name) 变体。返回一组记录,总结栅格或栅格覆盖数据分布的单独 bin 范围。如果未指定,则自动计算 bin 的数量。
  • ST_Quantile - 更改:3.1.0,删除了 ST_Quantile(table_name, column_name) 变体。在样本或总体上下文中计算栅格或栅格表覆盖率的分位数。因此,可以检查某个值是否在栅格的 25%、50%、75% 百分位处。
  • ST_SummaryStats - 更改:3.1.0,删除了 ST_SummaryStats(rastertable, rastercolumn, ...) 变体。请改用。返回摘要统计信息,包括栅格或栅格覆盖率的给定栅格波段的计数、总和、平均值、标准差、最小值、最大值。如果未指定波段,则假定为波段 1。

13.12.6. PostGIS 3.0 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 3.0 中新增的函数

PostGIS 3.0 中增强的功能

  • ST_AsMVT - 增强:3.0 - 添加了对要素 ID 的支持。 聚合函数,返回一组行的 MVT 表示。
  • ST_Contains - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试 B 的每个点是否位于 A 中,并且它们的内部有公共点。
  • ST_ContainsProperly - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试 B 的每个点是否位于 A 的内部。
  • ST_CoveredBy - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试 A 的每个点是否位于 B 中。
  • ST_Covers - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试 B 的每个点是否位于 A 中。
  • ST_Crosses - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试两个几何图形是否有一些(但不是全部)公共内部点。
  • ST_CurveToLine - 增强:3.0.0 实现了每个线性化弧的最小线段数,以防止拓扑崩溃。 将包含曲线的几何图形转换为线性几何图形。
  • ST_Disjoint - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试两个几何图形是否没有公共点。
  • ST_Equals - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试两个几何图形是否包含相同的点集。
  • ST_GeneratePoints - 增强:3.0.0,添加了种子参数。生成一个包含在 Polygon 或 MultiPolygon 中的随机点的多点。
  • ST_GeomFromGeoJSON - 增强:3.0.0 如果未另行指定,则解析的几何图形默认为 SRID=4326。 以 geojson 格式的几何图形表示作为输入,并输出一个 PostGIS 几何对象。
  • ST_LocateBetween - 增强:3.0.0 - 添加了对 POLYGON、TIN、TRIANGLE 的支持。 返回与测量范围匹配的几何图形部分。
  • ST_LocateBetweenElevations - 增强:3.0.0 - 添加了对 POLYGON、TIN、TRIANGLE 的支持。 返回位于高程 (Z) 范围内的几何图形部分。
  • ST_Overlaps - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试两个几何图形是否具有相同的维度并相交,但每个几何图形至少有一个点不在另一个几何图形中。
  • ST_Relate - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试两个几何图形是否具有与交集矩阵模式匹配的拓扑关系,或者计算它们的交集矩阵。
  • ST_Segmentize - 增强:3.0.0 分割几何图形现在生成等长的子段。 返回修改后的几何图形/地理图形,其中没有线段长度超过给定的距离。
  • ST_Touches - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试两个几何图形是否至少有一个公共点,但它们的内部不相交。
  • ST_Within - 增强:3.0.0 启用对 GEOMETRYCOLLECTION 的支持。 测试 A 的每个点是否位于 B 中,并且它们的内部有公共点。

PostGIS 3.0 中更改的功能

  • PostGIS_Extensions_Upgrade - 更改:3.0.0 重新打包松散的扩展并支持 postgis_raster。 将 PostGIS 扩展(例如 postgis_raster、postgis_topology、postgis_sfcgal)打包和升级到给定的或最新版本。
  • ST_3DDistance - 更改:3.0.0 - SFCGAL 版本已删除。 返回投影单位中两个几何图形之间的 3D 笛卡尔最小距离(基于空间参考)。
  • ST_3DIntersects - 更改:3.0.0 SFCGAL 后端已删除,GEOS 后端支持 TIN。 测试两个几何图形是否在 3D 空间中相交 - 仅适用于点、线串、多边形、多面体表面(面积)。
  • ST_Area - 更改:3.0.0 - 不再依赖 SFCGAL。 返回多边形几何图形的面积。
  • ST_AsGeoJSON - 更改:3.0.0 支持将记录作为输入。 以 GeoJSON 格式返回几何图形或要素。
  • ST_AsGeoJSON - 更改:3.0.0 如果不是 EPSG:4326,则输出 SRID。 以 GeoJSON 格式返回几何图形或要素。
  • ST_AsKML - 更改:3.0.0 - 删除了“版本化”变体签名。 以 KML 元素的形式返回几何图形。
  • ST_Distance - 更改:3.0.0 - 不再依赖 SFCGAL。 返回两个几何图形或地理图形值之间的距离。
  • ST_Intersection - 更改:3.0.0 不依赖于 SFCGAL。 计算表示几何图形 A 和 B 的共享部分的几何图形。
  • ST_Intersects - 更改:3.0.0 SFCGAL 版本已删除,并添加了对 2D TIN 的原生支持。 测试两个几何图形是否相交(它们至少有一个公共点)。
  • ST_Union - 更改:3.0.0 不依赖于 SFCGAL。 计算表示输入几何图形的点集联合的几何图形。

13.12.7. PostGIS 2.5 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 2.5 中新增的函数

  • ST_QuantizeCoordinates - 可用性:2.5.0 将坐标的最低有效位设置为零。
  • PostGIS_Extensions_Upgrade - 可用性:2.5.0 将 PostGIS 扩展(例如 postgis_raster、postgis_topology、postgis_sfcgal)打包和升级到给定或最新版本。
  • ST_Angle - 可用性:2.5.0 返回由 3 个或 4 个点定义的两个向量或两条线之间的角度。
  • ST_AsHexWKB - 可用性:2.5.0 以十六进制表示形式返回栅格的 Well-Known Binary (WKB)。
  • ST_BandFileSize - 可用性:2.5.0 返回存储在文件系统中的波段的文件大小。 如果未指定 bandnum,则假定为 1。
  • ST_BandFileTimestamp - 可用性:2.5.0 返回存储在文件系统中的波段的文件时间戳。 如果未指定 bandnum,则假定为 1。
  • ST_ChaikinSmoothing - 可用性:2.5.0 使用 Chaikin 算法返回几何图形的平滑版本。
  • ST_FilterByM - 可用性:2.5.0 根据顶点的 M 值删除顶点。
  • ST_Grayscale - 可用性:2.5.0 从源栅格和指定代表红色、绿色和蓝色的波段创建一个新的 one-8BUI 波段栅格。
  • ST_LineInterpolatePoints - 可用性:2.5.0 返回沿线以分数间隔插值的点。
  • ST_OrientedEnvelope - 可用性:2.5.0。 返回包含几何图形的最小面积矩形。
  • ST_RastFromHexWKB - 可用性:2.5.0 从 Well-Known Binary (WKB) 栅格的十六进制表示形式返回栅格值。
  • ST_RastFromWKB - 可用性:2.5.0 从 Well-Known Binary (WKB) 栅格返回栅格值。
  • ST_SetBandIndex - 可用性:2.5.0 更新 out-db 波段的外部波段号。
  • ST_SetBandPath - 可用性:2.5.0 更新 out-db 波段的外部路径和波段号。

PostGIS 2.5 中增强的功能

  • ST_GeometricMedian - 增强:2.5.0 添加了对将 M 作为点权重的支持。 返回 MultiPoint 的几何中位数。
  • ST_AsBinary/ST_AsWKB - 增强:2.5.0 添加了 ST_AsWKB。 返回栅格的 Well-Known Binary (WKB) 表示形式。
  • ST_AsMVT - 增强:2.5.0 - 添加了对并行查询的支持。 聚合函数,返回一组行的 MVT 表示。
  • ST_AsText - 增强:2.5 - 引入了可选参数精度。 返回没有 SRID 元数据的几何图形/地理图形的 Well-Known Text (WKT) 表示形式。
  • ST_BandMetaData - 增强:2.5.0 包括 outdbbandnum、文件大小和 outdb 栅格的文件时间戳。 返回特定栅格波段的基本元数据。 如果未指定,则假定波段号为 1。
  • ST_Buffer - 增强:2.5.0 - 增强了 ST_Buffer 几何图形支持,以允许 side=both|left|right 的侧面缓冲规范。 计算覆盖几何图形给定距离内所有点的几何图形。
  • ST_GeomFromGeoJSON - 增强:2.5.0 现在可以接受 json 和 jsonb 作为输入。 以 geojson 格式的几何图形表示作为输入,并输出一个 PostGIS 几何对象。
  • ST_Intersects - 增强:2.5.0 支持 GEOMETRYCOLLECTION。 测试两个几何图形是否相交(它们至少有一个公共点)。
  • ST_OffsetCurve - 增强:2.5 - 添加了对 GEOMETRYCOLLECTION 和 MULTILINESTRING 的支持。 返回与输入线给定距离和侧面的偏移线。
  • ST_Scale - 增强功能:2.5.0 引入了支持相对于局部原点(origin 参数)进行缩放的功能。按给定的因子缩放几何图形。
  • ST_Split - 增强功能:2.5.0 引入了支持使用多线分割多边形的功能。返回通过另一个几何图形分割几何图形而创建的几何图形集合。
  • ST_Subdivide - 增强功能:2.5.0 重用多边形分割上的现有顶点,顶点计数从 8 降至 5。计算几何图形的直线细分。

PostGIS 2.5 中更改的函数

  • ST_GDALDrivers - 已更改:2.5.0 - 添加 can_read 和 can_write 列。返回 PostGIS 通过 GDAL 支持的栅格格式列表。只有 can_write=True 的格式才能被 ST_AsGDALRaster 使用

13.12.8. PostGIS 2.4 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 2.4 中的新函数

  • ST_ForcePolygonCCW - 可用性:2.4.0 将所有外环定向为逆时针方向,将所有内环定向为顺时针方向。
  • ST_ForcePolygonCW - 可用性:2.4.0 将所有外环定向为顺时针方向,将所有内环定向为逆时针方向。
  • ST_IsPolygonCCW - 可用性:2.4.0 测试多边形是否具有逆时针方向的外环和顺时针方向的内环。
  • ST_IsPolygonCW - 可用性:2.4.0 测试多边形是否具有顺时针方向的外环和逆时针方向的内环。
  • ST_AsGeobuf - 可用性:2.4.0 返回一组行的 Geobuf 表示形式。
  • ST_AsMVT - 可用性:2.4.0 聚合函数,返回一组行的 MVT 表示形式。
  • ST_AsMVTGeom - 可用性:2.4.0 将几何图形转换为 MVT 切片的坐标空间。
  • ST_Centroid - 可用性:2.4.0 引入了对地理的支持。返回几何图形的几何中心。
  • ST_FrechetDistance - 可用性:2.4.0 - 需要 GEOS >= 3.7.0 返回两个几何图形之间的弗雷歇距离。
  • ST_MakeEmptyCoverage - 可用性:2.4.0 用空的栅格切片网格覆盖地理参考区域。

PostGIS 2.4 中增强的函数

  • Loader_Generate_Nation_Script - 增强功能:2.4.1 修复了邮政编码 5 表格区域 (zcta5) 加载步骤,并且在启用时,zcta5 数据作为名为 zcta5_all 的单个表加载,作为国家脚本加载的一部分。为指定的平台生成一个 shell 脚本,该脚本加载县和州查找表。
  • Normalize_Address - 增强功能:2.4.0 norm_addy 对象包括附加字段 zip4 和 address_alphanumeric。给定一个文本街道地址,返回一个复合的 norm_addy 类型,该类型具有标准化的道路后缀、前缀和类型,街道、街道名称等被分解为单独的字段。此函数仅适用于 tiger_geocoder 打包的查找数据(不需要 tiger 人口普查数据)。
  • Pagc_Normalize_Address - 增强功能:2.4.0 norm_addy 对象包括附加字段 zip4 和 address_alphanumeric。给定一个文本街道地址,返回一个复合的 norm_addy 类型,该类型具有标准化的道路后缀、前缀和类型,街道、街道名称等被分解为单独的字段。此函数仅适用于 tiger_geocoder 打包的查找数据(不需要 tiger 人口普查数据)。需要 address_standardizer 扩展。
  • Reverse_Geocode - 增强功能:2.4.1 如果加载了可选的 zcta5 数据集,即使未加载特定的州数据,reverse_geocode 函数也可以解析为州和邮政编码。有关加载 zcta5 数据的详细信息,请参阅。获取已知空间参考系统中的几何点,并返回包含理论上可能的地址数组和交叉街道数组的记录。如果 include_strnum_range = true,则在交叉街道中包括街道范围。
  • ST_AsTWKB - 增强功能:2.4.0 内存和速度改进。以 TWKB 格式(又名“Tiny Well-Known Binary”)返回几何图形。
  • ST_Covers - 增强功能:2.4.0 添加了对地理类型的多边形中的多边形和多边形中的线的支持。测试 B 的每个点是否位于 A 中
  • ST_CurveToLine - 增强功能:2.4.0 添加了对最大偏差和最大角度公差以及对称输出的支持。将包含曲线的几何图形转换为线性几何图形。
  • ST_Project - 增强功能:2.4.0 允许负距离和非规范化方位角。返回从起始点按距离和方位(方位角)投影的点。
  • ST_Reverse - 增强功能:2.4.0 引入了对曲线的支持。返回顶点顺序反转的几何图形。

PostGIS 2.4 中更改的函数

  • = - 已更改:2.4.0,在早期版本中,这是边界框相等,而不是几何相等。如果您需要边界框相等,请改用。如果几何/地理 A 的坐标和坐标顺序与几何/地理 B 的坐标和坐标顺序相同,则返回 TRUE。
  • ST_Node - 已更改:2.4.0 此函数在内部使用 GEOSNode 而不是 GEOSUnaryUnion。这可能会导致生成的线串的顺序和方向与 PostGIS < 2.4 不同。对线集合进行节点化。

13.12.9. PostGIS 2.3 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 2.3 中的新函数

  • ST_GeometricMedian - 可用性:2.3.0 返回 MultiPoint 的几何中位数。
  • &&&(geometry,gidx) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果几何图形的(缓存的)n 维边界框与 n 维浮点精度边界框 (GIDX) 相交,则返回 TRUE。
  • &&&(gidx,geometry) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果 n 维浮点精度边界框 (GIDX) 与几何图形的(缓存的)n 维边界框相交,则返回 TRUE。
  • &&&(gidx,gidx) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果两个 n 维浮点精度边界框 (GIDX) 相互相交,则返回 TRUE。
  • &&(box2df,box2df) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果两个 2D 浮点精度边界框 (BOX2DF) 相互相交,则返回 TRUE。
  • &&(box2df,geometry) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果 2D 浮点精度边界框 (BOX2DF) 与几何图形的(缓存的)2D 边界框相交,则返回 TRUE。
  • &&(geometry,box2df) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果几何图形的(缓存的)2D 边界框与 2D 浮点精度边界框 (BOX2DF) 相交,则返回 TRUE。
  • @(box2df,box2df) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果 2D 浮点精度边界框 (BOX2DF) 包含在另一个 2D 浮点精度边界框中,则返回 TRUE。
  • @(box2df,geometry) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果 2D 浮点精度边界框 (BOX2DF) 包含在几何图形的 2D 边界框中,则返回 TRUE。
  • @(geometry,box2df) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果几何图形的 2D 边界框包含在 2D 浮点精度边界框 (BOX2DF) 中,则返回 TRUE。
  • Populate_Topology_Layer - 可用性:2.3.0 通过从拓扑表读取元数据,将缺失的条目添加到 topology.layer 表中。
  • ST_ClusterDBSCAN - 可用性:2.3.0 窗口函数,使用 DBSCAN 算法为每个输入几何图形返回一个聚类 ID。
  • ST_ClusterKMeans - 可用性:2.3.0 窗口函数,使用 K-means 算法为每个输入几何图形返回一个聚类 ID。
  • ST_GeneratePoints - 可用性:2.3.0 生成一个包含在多边形或多多边形中的随机点的多点。
  • ST_MakeLine - 可用性:2.3.0 - 引入了对 MultiPoint 输入元素的支持。从点、多点或线串几何图形创建线串。
  • ST_MinimumBoundingRadius - 可用性 - 2.3.0 返回包含几何图形的最小圆的中心点和半径。
  • ST_MinimumClearance - 可用性:2.3.0 返回几何图形的最小间隙,这是衡量几何图形稳健性的一种方法。
  • ST_MinimumClearanceLine - 可用性:2.3.0 - 需要 GEOS >= 3.6.0 返回跨越几何图形最小间隙的两点线串。
  • ST_Normalize - 可用性:2.3.0 以其规范形式返回几何图形。
  • ST_Points - 可用性:2.3.0 返回一个包含几何图形坐标的多点。
  • ST_VoronoiLines - 可用性:2.3.0 返回几何图形顶点沃罗诺伊图的边界。
  • ST_VoronoiPolygons - 可用性:2.3.0 返回几何图形顶点沃罗诺伊图的单元格。
  • ST_WrapX - 可用性:2.3.0 需要 GEOS 将几何图形围绕 X 值包裹。
  • TopoGeom_addElement - 可用性:2.3 将元素添加到 TopoGeometry 的定义中。
  • TopoGeom_remElement - 可用性:2.3 从 TopoGeometry 的定义中删除元素。
  • ~(box2df,box2df) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果 2D 浮点精度边界框 (BOX2DF) 包含另一个 2D 浮点精度边界框 (BOX2DF),则返回 TRUE。
  • ~(box2df,geometry) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果 2D 浮点精度边界框 (BOX2DF) 包含几何图形的 2D 边界框,则返回 TRUE。
  • ~(geometry,box2df) - 可用性:2.3.0 引入了对块范围索引 (BRIN) 的支持。需要 PostgreSQL 9.5+。如果几何图形的 2D 边界框包含 2D 浮点精度边界框 (GIDX),则返回 TRUE。

PostGIS 2.3 中增强的函数

  • ST_Contains - 增强功能:2.3.0 扩展 PIP 短路的增强功能,以支持具有少量点的多点。早期版本仅支持多边形中的点。测试 B 的每个点是否位于 A 中,并且它们的内部具有共同的点
  • ST_Covers - 增强功能:2.3.0 将几何图形的 PIP 短路的增强功能扩展为支持具有少量点的多点。早期版本仅支持多边形中的点。测试 B 的每个点是否位于 A 中
  • ST_Expand - 增强功能: 2.3.0 版本增加了对在不同维度上以不同量扩展边界框的支持。返回从另一个边界框或几何图形扩展的边界框。
  • ST_Intersects - 增强功能: 2.3.0 版本增强了 PIP 短路功能,以支持具有少量点的 MultiPoints。之前的版本仅支持点在多边形内。测试两个几何图形是否相交(它们至少有一个共同的点)。
  • ST_Segmentize - 增强功能: 2.3.0 版本中,分段地理数据现在生成等长子段。返回修改后的几何/地理数据,其中任何线段的长度都不超过给定距离。
  • ST_Transform - 增强功能: 2.3.0 版本引入了对直接使用 PROJ.4 文本的支持。返回一个新的几何图形,其坐标已转换为不同的空间参考系统。
  • ST_Within - 增强功能: 2.3.0 版本增强了几何图形的 PIP 短路功能,以支持具有少量点的 MultiPoints。之前的版本仅支持点在多边形内。测试 A 的每个点是否都在 B 中,并且它们的内部有一个共同的点。

PostGIS 2.3 中更改的函数

  • ST_PointN - 已更改: 2.3.0 版本:可以使用负索引(-1 为最后一个点)。返回几何图形中第一个 LineString 或圆形 LineString 中的第 N 个点。

13.12.10. PostGIS 2.2 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 2.2 中的新函数

  • <<->> - 可用性: 2.2.0 -- KNN 仅适用于 PostgreSQL 9.1+。返回 A 和 B 几何图形或边界框之间的 n 维距离。
  • ST_3DDifference - 可用性: 2.2.0 执行 3D 差集运算。
  • ST_3DUnion - 可用性: 2.2.0 执行 3D 并集运算。
  • ST_ApproximateMedialAxis - 可用性: 2.2.0 计算面积几何图形的近似中轴。
  • ST_AsEncodedPolyline - 可用性: 2.2.0 从 LineString 几何图形返回编码的折线。
  • ST_AsTWKB - 可用性: 2.2.0 将几何图形作为 TWKB 返回,又名“Tiny Well-Known Binary”。
  • ST_BoundingDiagonal - 可用性: 2.2.0 返回几何图形边界框的对角线。
  • ST_CPAWithin - 可用性: 2.2.0 测试两个轨迹的最近接近点是否在指定距离内。
  • ST_ClipByBox2D - 可用性: 2.2.0 计算几何图形落在矩形内的部分。
  • ST_ClosestPointOfApproach - 可用性: 2.2.0 返回两个轨迹最近接近点的度量。
  • ST_ClusterIntersecting - 可用性: 2.2.0 聚合函数,将输入的几何图形聚类为连接的集合。
  • ST_ClusterWithin - 可用性: 2.2.0 聚合函数,按分离距离对几何图形进行聚类。
  • ST_CountAgg - 可用性: 2.2.0 聚合函数。返回一组栅格的给定波段中的像素数。如果未指定波段,则默认为波段 1。如果 exclude_nodata_value 设置为 true,则仅计算不等于 NODATA 值的像素。
  • ST_CreateOverview - 可用性: 2.2.0 创建给定栅格覆盖的缩减分辨率版本。
  • ST_DistanceCPA - 可用性: 2.2.0 返回两个轨迹的最近接近点之间的距离。
  • ST_ForceCurve - 可用性: 2.2.0 如果适用,将几何图形向上转换为其曲线类型。
  • ST_IsPlanar - 可用性: 2.2.0:此功能已在 2.1.0 中记录,但在 2.1 版本中意外遗漏。检查表面是否为平面。
  • ST_IsSolid - 可用性: 2.2.0 测试几何图形是否为实体。不执行有效性检查。
  • ST_IsValidTrajectory - 可用性: 2.2.0 测试几何图形是否为有效的轨迹。
  • ST_LineFromEncodedPolyline - 可用性: 2.2.0 从编码的折线创建 LineString。
  • ST_MakeSolid - 可用性: 2.2.0 将几何图形转换为实体。不执行检查。要获得有效的实体,输入几何图形必须是闭合的多面体表面或闭合的 TIN。
  • ST_MapAlgebra(回调函数版本) - 可用性: 2.2.0:添加掩码的能力。回调函数版本 - 返回一个单波段栅格,给定一个或多个输入栅格、波段索引和一个用户指定的回调函数。
  • ST_MemSize - 可用性: 2.2.0 返回栅格占用的空间量(以字节为单位)。
  • ST_RemoveRepeatedPoints - 可用性: 2.2.0 返回删除了重复点的几何图形版本。
  • ST_Retile - 可用性: 2.2.0 从任意平铺的栅格覆盖返回一组配置的图块。
  • ST_SetEffectiveArea - 可用性: 2.2.0 使用 Visvalingam-Whyatt 算法设置每个顶点的有效面积。
  • ST_SimplifyVW - 可用性: 2.2.0 使用 Visvalingam-Whyatt 算法返回几何图形的简化表示。
  • ST_Subdivide - 可用性: 2.2.0 计算几何图形的直线细分。
  • ST_SummaryStatsAgg - 可用性: 2.2.0 聚合函数。返回由计数、总和、平均值、标准差、最小值、最大值组成的汇总统计信息,用于一组栅格的给定栅格波段。如果未指定波段,则假定为波段 1。
  • ST_SwapOrdinates - 可用性: 2.2.0 返回给定几何图形的版本,其中给定的纵坐标值已交换。
  • ST_Volume - 可用性: 2.2.0 计算 3D 实体的体积。如果应用于表面(即使是闭合的)几何图形,将返回 0。
  • parse_address - 可用性: 2.2.0 提取单行地址并将其分解为各个部分。
  • postgis.enable_outdb_rasters - 可用性: 2.2.0 一个布尔配置选项,用于启用对数据库外栅格波段的访问。
  • postgis.gdal_datapath - 可用性: 2.2.0 一个配置选项,用于分配 GDAL 的 GDAL_DATA 选项的值。如果未设置,则使用环境设置的 GDAL_DATA 变量。
  • postgis.gdal_enabled_drivers - 可用性: 2.2.0 一个配置选项,用于设置 PostGIS 环境中启用的 GDAL 驱动程序。影响 GDAL 配置变量 GDAL_SKIP。
  • standardize_address - 可用性: 2.2.0 使用 lex、gaz 和规则表返回输入地址的 stdaddr 格式。
  • |=| - 可用性: 2.2.0。仅支持索引,仅适用于 PostgreSQL 9.5+。返回 A 和 B 轨迹在它们最近的接近点之间的距离。

PostGIS 2.2 中增强的函数

  • <-> - 增强功能: 2.2.0 -- 适用于 PostgreSQL 9.5+ 的几何图形和地理数据的真正的 KNN(“K 最近邻”)行为。请注意,对于地理数据,KNN 基于球体而不是椭球体。对于 PostgreSQL 9.4 及更低版本,地理数据支持是新的,但仅支持质心框。返回 A 和 B 之间的 2D 距离。
  • AsTopoJSON - 增强功能: 2.2.1 增加了对点输入的支持。返回拓扑几何图形的 TopoJSON 表示形式。
  • ST_Area - 增强功能: 2.2.0 - 使用 GeographicLib 在椭球体上执行测量,以提高准确性和鲁棒性。需要 PROJ >= 4.9.0 才能利用新功能。返回多边形几何图形的面积。
  • ST_AsX3D - 增强功能: 2.2.0:支持 GeoCoordinates 和轴(x/y,long/lat)翻转。请查看选项了解详细信息。以 X3D xml 节点元素格式返回几何图形:ISO-IEC-19776-1.2-X3DEncodings-XML
  • ST_Azimuth - 增强功能: 2.2.0 使用 GeographicLib 在椭球体上执行测量,以提高准确性和鲁棒性。需要 PROJ >= 4.9.0 才能利用新功能。返回两个点之间直线的北向方位角。
  • ST_Distance - 增强功能: 2.2.0 - 使用 GeographicLib 在椭球体上执行测量,以提高准确性和鲁棒性。需要 PROJ >= 4.9.0 才能利用新功能。返回两个几何图形或地理数据值之间的距离。
  • ST_Scale - 增强功能: 2.2.0 引入了对缩放所有维度(因子参数)的支持。按给定的因子缩放几何图形。
  • ST_Split - 增强功能: 2.2.0 引入了通过多线、多点或(多)多边形边界分割线段的支持。返回通过另一个几何图形分割几何图形而创建的几何图形集合。
  • ST_Summary - 增强功能: 2.2.0 增加了对 TIN 和曲线的支持。返回几何图形内容的文本摘要。

PostGIS 2.2 中更改的函数

  • <-> - 已更改: 2.2.0 -- 对于 PostgreSQL 9.5 用户,旧的混合语法可能会较慢,因此如果您仅在 PostGIS 2.2+ 9.5+ 上运行代码,则需要删除该 hack。请参见下面的示例。返回 A 和 B 之间的 2D 距离。
  • Get_Geocode_Setting - 已更改: 2.2.0:默认设置现在保存在名为 geocode_settings_default 的表中。使用的自定义设置位于 geocode_settings 中,并且仅包含用户已设置的设置。返回存储在 tiger.geocode_settings 表中的特定设置的值。
  • ST_3DClosestPoint - 已更改: 2.2.0 - 如果输入 2 个 2D 几何图形,则返回 2D 点(而不是假设缺失 Z 为 0 的旧行为)。对于 2D 和 3D 情况,缺失 Z 不再假定为 0。返回 g1 上最接近 g2 的 3D 点。这是 3D 最短线的第一点。
  • ST_3DDistance - 变更: 2.2.0 - 在 2D 和 3D 的情况下,不再假设缺失 Z 值为 0。返回两个几何体之间基于空间参考的投影单位的 3D 笛卡尔最小距离。
  • ST_3DLongestLine - 变更: 2.2.0 - 如果输入两个 2D 几何体,则返回一个 2D 点(而不是旧行为假设缺失 Z 值为 0)。在 2D 和 3D 的情况下,不再假设缺失 Z 值为 0。返回两个几何体之间的 3D 最长线。
  • ST_3DMaxDistance - 变更: 2.2.0 - 在 2D 和 3D 的情况下,不再假设缺失 Z 值为 0。返回两个几何体之间基于空间参考的投影单位的 3D 笛卡尔最大距离。
  • ST_3DShortestLine - 变更: 2.2.0 - 如果输入两个 2D 几何体,则返回一个 2D 点(而不是旧行为假设缺失 Z 值为 0)。在 2D 和 3D 的情况下,不再假设缺失 Z 值为 0。返回两个几何体之间的 3D 最短线。
  • ST_DistanceSphere - 变更: 2.2.0 - 在之前的版本中,它被称为 ST_Distance_Sphere。使用球面地球模型返回两个经纬度几何体之间的最小距离(以米为单位)。
  • ST_DistanceSpheroid - 变更: 2.2.0 - 在之前的版本中,它被称为 ST_Distance_Spheroid。使用椭球地球模型返回两个经纬度几何体之间的最小距离。
  • ST_Equals - 变更: 2.2.0 - 即使对于无效的几何体,如果它们在二进制上相等,也返回 true。测试两个几何体是否包含相同的点集。
  • ST_LengthSpheroid - 变更: 2.2.0 - 在之前的版本中,它被称为 ST_Length_Spheroid,并且具有别名 ST_3DLength_Spheroid。返回椭球体上经纬度几何体的 2D 或 3D 长度/周长。
  • ST_MemSize - 变更: 2.2.0 - 名称更改为 ST_MemSize 以遵循命名约定。返回几何体占用的内存空间量。
  • ST_PointInsideCircle - 变更: 2.2.0 - 在之前的版本中,它被称为 ST_Point_Inside_Circle。测试点几何体是否在由中心和半径定义的圆内。
  • ValidateTopology - 变更: 2.2.0 - id1 和 id2 的值被交换,以便 '边穿过节点' 与错误描述保持一致。返回一组 validatetopology_returntype 对象,详细说明拓扑问题。

13.12.11. PostGIS 2.1 中新增或增强的功能

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 2.1 中的新功能

  • = - 可用性: 2.1.0 - 如果 A 的边界框与 B 的边界框相同,则返回 TRUE。使用双精度边界框。
  • AsTopoJSON - 可用性: 2.1.0 - 返回拓扑几何体的 TopoJSON 表示形式。
  • Drop_Nation_Tables_Generate_Script - 可用性: 2.1.0 - 生成一个脚本,该脚本删除指定模式中所有以 county_all、state_all 或州代码后跟 county 或 state 开头的表。
  • Get_Geocode_Setting - 可用性: 2.1.0 - 返回存储在 tiger.geocode_settings 表中的特定设置的值。
  • Loader_Generate_Nation_Script - 可用性: 2.1.0 - 为指定的平台生成一个 shell 脚本,该脚本加载县和州查找表。
  • Pagc_Normalize_Address - 可用性: 2.1.0 - 给定一个文本街道地址,返回一个复合的 norm_addy 类型,该类型具有标准化的道路后缀、前缀和类型,以及街道、街道名称等,这些都被分成单独的字段。此函数仅适用于 tiger_geocoder 打包的查找数据(无需虎普查数据)。需要 address_standardizer 扩展。
  • ST_3DArea - 可用性: 2.1.0 - 计算 3D 表面几何体的面积。对于实体,将返回 0。
  • ST_3DIntersection - 可用性: 2.1.0 - 执行 3D 相交。
  • ST_Box2dFromGeoHash - 可用性: 2.1.0 - 从 GeoHash 字符串返回一个 BOX2D。
  • ST_ColorMap - 可用性: 2.1.0 - 从源栅格和指定的波段创建一个最多四个 8BUI 波段(灰度、RGB、RGBA)的新栅格。如果未指定,则假定为波段 1。
  • ST_Contains - 可用性: 2.1.0 - 如果栅格 rastB 的任何点都不位于栅格 rastA 的外部,并且 rastB 的内部至少有一个点位于 rastA 的内部,则返回 true。
  • ST_ContainsProperly - 可用性: 2.1.0 - 如果 rastB 与 rastA 的内部相交,但不与 rastA 的边界或外部相交,则返回 true。
  • ST_CoveredBy - 可用性: 2.1.0 - 如果栅格 rastA 的任何点都不位于栅格 rastB 的外部,则返回 true。
  • ST_Covers - 可用性: 2.1.0 - 如果栅格 rastB 的任何点都不位于栅格 rastA 的外部,则返回 true。
  • ST_DFullyWithin - 可用性: 2.1.0 - 如果栅格 rastA 和 rastB 完全在彼此指定的距离内,则返回 true。
  • ST_DWithin - 可用性: 2.1.0 - 如果栅格 rastA 和 rastB 在彼此指定的距离内,则返回 true。
  • ST_DelaunayTriangles - 可用性: 2.1.0 - 返回几何体顶点的 Delaunay 三角剖分。
  • ST_Disjoint - 可用性: 2.1.0 - 如果栅格 rastA 与 rastB 在空间上不相交,则返回 true。
  • ST_DumpValues - 可用性: 2.1.0 - 获取指定波段的值作为二维数组。
  • ST_Extrude - 可用性: 2.1.0 - 将曲面挤压成相关的体积。
  • ST_ForceLHR - 可用性: 2.1.0 - 强制 LHR 方向。
  • ST_FromGDALRaster - 可用性: 2.1.0 - 从支持的 GDAL 栅格文件返回栅格。
  • ST_GeomFromGeoHash - 可用性: 2.1.0 - 从 GeoHash 字符串返回几何体。
  • ST_InvDistWeight4ma - 可用性: 2.1.0 - 栅格处理函数,根据像素的邻域插值像素的值。
  • ST_MapAlgebra (回调函数版本) - 可用性: 2.1.0 - 回调函数版本 - 给定一个或多个输入栅格、波段索引和一个用户指定的回调函数,返回一个单波段栅格。
  • ST_MapAlgebra (表达式版本) - 可用性: 2.1.0 - 表达式版本 - 给定一个或两个输入栅格、波段索引和一个或多个用户指定的 SQL 表达式,返回一个单波段栅格。
  • ST_MinConvexHull - 可用性: 2.1.0 - 返回栅格的凸包几何体,不包括 NODATA 像素。
  • ST_MinDist4ma - 可用性: 2.1.0 - 栅格处理函数,返回感兴趣像素与具有值的相邻像素之间的最小距离(以像素为单位)。
  • ST_MinkowskiSum - 可用性: 2.1.0 - 执行 Minkowski 和。
  • ST_NearestValue - 可用性: 2.1.0 - 返回由 columnx 和 rowy 或以与栅格相同的空间参考坐标系表示的几何点指定的给定波段的像素的最近非 NODATA 值。
  • ST_Neighborhood - 可用性: 2.1.0 - 返回一个二维双精度数组,其中包含由 columnX 和 rowY 或以与栅格相同的空间参考坐标系表示的几何点指定的给定波段的像素周围的非 NODATA 值。
  • ST_NotSameAlignmentReason - 可用性: 2.1.0 - 返回文本,说明栅格是否对齐,如果未对齐,则说明原因。
  • ST_Orientation - 可用性: 2.1.0 - 确定表面方向。
  • ST_Overlaps - 可用性: 2.1.0 - 如果栅格 rastA 和 rastB 相交,但一个不完全包含另一个,则返回 true。
  • ST_PixelAsCentroid - 可用性: 2.1.0 - 返回像素所代表区域的质心(点几何体)。
  • ST_PixelAsCentroids - 可用性: 2.1.0 - 返回栅格波段中每个像素的质心(点几何体),以及每个像素的值、X 和 Y 栅格坐标。点几何体是像素所代表区域的质心。
  • ST_PixelAsPoint - 可用性: 2.1.0 - 返回像素左上角的点几何体。
  • ST_PixelAsPoints - 可用性: 2.1.0 - 返回栅格波段中每个像素的点几何体,以及每个像素的值、X 和 Y 栅格坐标。点几何体的坐标是像素的左上角。
  • ST_PixelOfValue - 可用性: 2.1.0 - 获取值等于搜索值的像素的 columnx、rowy 坐标。
  • ST_PointFromGeoHash - 可用性: 2.1.0 - 从 GeoHash 字符串返回一个点。
  • ST_RasterToWorldCoord - 可用性: 2.1.0 - 给定列和行,返回栅格的左上角作为几何 X 和 Y(经度和纬度)。列和行从 1 开始。
  • ST_Resize - 可用性: 2.1.0 需要 GDAL 1.6.1+ 将栅格调整为新的宽度/高度
  • ST_Roughness - 可用性: 2.1.0 返回一个栅格,其中包含 DEM 计算出的“粗糙度”。
  • ST_SetValues - 可用性: 2.1.0 返回修改后的栅格,该栅格是通过设置给定波段的值而生成的。
  • ST_Simplify - 可用性: 2.1.0 使用 Douglas-Peucker 算法返回给定拓扑几何体的“简化”几何版本。
  • ST_StraightSkeleton - 可用性: 2.1.0 从几何体计算直线骨架。
  • ST_Summary - 可用性: 2.1.0 返回栅格内容的文本摘要。
  • ST_TPI - 可用性: 2.1.0 返回一个栅格,其中包含计算出的地形位置指数。
  • ST_TRI - 可用性: 2.1.0 返回一个栅格,其中包含计算出的地形粗糙度指数。
  • ST_Tesselate - 可用性: 2.1.0 执行多边形或多面体的表面镶嵌,并返回为 TIN 或 TIN 集合。
  • ST_Tile - 可用性: 2.1.0 返回一组栅格,这些栅格是根据输出栅格所需的尺寸分割输入栅格而生成的。
  • ST_Touches - 可用性: 2.1.0 如果栅格 rastA 和 rastB 至少有一个公共点,但它们的内部不相交,则返回 true。
  • ST_Union - 可用性: 2.1.0 引入了 ST_Union(rast, unionarg) 变体。返回一组栅格图块的并集,组合成一个由 1 个或多个波段组成的单个栅格。
  • ST_Within - 可用性: 2.1.0 如果栅格 rastA 的任何点都不在栅格 rastB 的外部,并且 rastA 内部的至少一个点位于 rastB 的内部,则返回 true。
  • ST_WorldToRasterCoord - 可用性: 2.1.0 返回左上角,作为给定几何 X 和 Y(经度和纬度)的列和行,或以栅格的空间参考坐标系表示的点几何体。
  • Set_Geocode_Setting - 可用性: 2.1.0 设置一个影响地理编码器函数行为的设置。
  • UpdateRasterSRID - 可用性: 2.1.0 更改用户指定的列和表中的所有栅格的 SRID。
  • clearTopoGeom - 可用性: 2.1 清除拓扑几何体的内容。
  • postgis.backend - 可用性: 2.1.0 用于服务 GEOS 和 SFCGAL 重叠的函数的后端。选项:geos 或 sfcgal。默认为 geos。
  • postgis_sfcgal_version - 可用性: 2.1.0 返回正在使用的 SFCGAL 的版本

PostGIS 2.1 中增强的功能

  • ST_AddBand - 增强功能: 2.1.0 添加了对 addbandarg 的支持。返回一个栅格,其中添加了给定类型的新的波段,并在给定的索引位置添加了给定的初始值。如果未指定索引,则将波段添加到末尾。
  • ST_AddBand - 增强功能: 2.1.0 添加了对新 out-db 波段的支持。返回一个栅格,其中添加了给定类型的新的波段,并在给定的索引位置添加了给定的初始值。如果未指定索引,则将波段添加到末尾。
  • ST_AsBinary/ST_AsWKB - 增强功能: 2.1.0 添加了 outasin 返回栅格的众所周知的二进制 (WKB) 表示形式。
  • ST_AsGML - 增强功能: 2.1.0 引入了对 GML 3 的 id 支持。以 GML 版本 2 或 3 元素的形式返回几何体。
  • ST_Aspect - 增强功能: 2.1.0 使用 ST_MapAlgebra() 并添加了可选的 interpolate_nodata 函数参数,返回高程栅格波段的坡向(默认以度为单位)。适用于分析地形。
  • ST_Boundary - 增强功能: 2.1.0 引入了对三角形的支持,返回几何体的边界。
  • ST_Clip - 增强功能: 2.1.0 在 C 中重写,返回由输入几何体裁剪的栅格。如果未指定波段号,则处理所有波段。如果未指定裁剪或为 TRUE,则裁剪输出栅格。如果 touched 设置为 TRUE,则包括接触到的像素,否则仅当像素的中心位于几何体中时才包括。
  • ST_DWithin - 增强功能: 2.1.0 提高了地理的运算速度。有关详细信息,请参阅使地理运算更快。测试两个几何体是否在给定距离内。
  • ST_DWithin - 增强功能: 2.1.0 引入了对弯曲几何体的支持。测试两个几何体是否在给定距离内。
  • ST_Distance - 增强功能: 2.1.0 提高了地理的运算速度。有关详细信息,请参阅使地理运算更快。返回两个几何体或地理值之间的距离。
  • ST_Distance - 增强功能: 2.1.0 - 引入了对弯曲几何体的支持。返回两个几何体或地理值之间的距离。
  • ST_Distinct4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中唯一像素值的数量。
  • ST_DumpPoints - 增强功能: 2.1.0 速度更快。重新实现为原生 C 代码。返回几何体中坐标的一组 geometry_dump 行。
  • ST_HillShade - 增强功能: 2.1.0 使用 ST_MapAlgebra() 并添加了可选的 interpolate_nodata 函数参数,使用提供的方位角、高度、亮度和比例输入返回高程栅格波段的假设照明。
  • ST_MakeValid - 增强功能: 2.1.0,添加了对 GEOMETRYCOLLECTION 和 MULTIPOINT 的支持。尝试使无效几何体有效而不丢失顶点。
  • ST_Max4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中的最大像素值。
  • ST_Mean4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中的平均像素值。
  • ST_Min4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中的最小像素值。
  • ST_PixelAsPolygons - 增强功能: 2.1.0 添加了可选参数 exclude_nodata_value。返回绑定栅格波段的每个像素的多边形几何图形,以及每个像素的值、X 和 Y 栅格坐标。
  • ST_Polygon - 增强功能: 2.1.0 提高了速度(完全基于 C),并确保返回的多边形有效。返回一个多边形几何图形,该多边形由具有非无数据值的像素值的像素的并集形成。如果未指定波段号,则波段号默认为 1。
  • ST_Range4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中像素值的范围。
  • ST_SameAlignment - 增强功能: 2.1.0 添加了 Aggegrate 变体,如果栅格具有相同的倾斜、比例、空间参考和偏移量(像素可以放置在同一网格上而不会切入像素),则返回 true;如果栅格不具有相同的倾斜、比例、空间参考和偏移量,则返回 false,并提供详细说明问题的通知。
  • ST_Segmentize - 增强功能: 2.1.0 引入了对地理的支持。返回修改后的几何体/地理,其线段的长度不超过给定距离。
  • ST_SetGeoReference - 增强功能: 2.1.0 添加了 ST_SetGeoReference(raster, double precision, ...) 变体,通过单个调用设置地理参考 6 个地理参考参数。数字应以空格分隔。接受 GDAL 或 ESRI 格式的输入。默认为 GDAL。
  • ST_SetValue - 增强功能: 2.1.0 ST_SetValue() 的几何变体现在支持任何几何类型,而不仅仅是点。几何变体是 ST_SetValues() 的 geomval[] 变体的包装器,返回修改后的栅格,该栅格是通过设置给定列 x、行 y 像素或与特定几何体相交的像素中的给定波段的值而生成的。波段号从 1 开始,如果未指定,则假定为 1。
  • ST_Slope - 增强功能: 2.1.0 使用 ST_MapAlgebra() 并添加了可选的 units、scale、interpolate_nodata 函数参数,返回高程栅格波段的坡度(默认以度为单位)。适用于分析地形。
  • ST_StdDev4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中像素值的标准偏差。
  • ST_Sum4ma - 增强功能: 2.1.0 添加了变体 2 栅格处理函数,该函数计算邻域中所有像素值的总和。
  • ST_Summary - 增强功能: 2.1.0 S 标志表示是否具有已知的空间参考系统,返回几何体内容的文本摘要。
  • ST_Transform - 增强功能: 2.1.0 添加了 ST_Transform(rast, alignto) 变体,使用指定的重采样算法将已知空间参考系统中的栅格重新投影到另一个已知空间参考系统。选项为 NearestNeighbor、Bilinear、Cubic、CubicSpline、Lanczos,默认为 NearestNeighbor。
  • ST_Union - 增强功能: 2.1.0 提高了速度(完全基于 C)。返回一组栅格图块的并集,组合成一个由 1 个或多个波段组成的单个栅格。
  • ST_Union - 增强功能: 2.1.0 ST_Union(rast)(变体 1)合并所有输入栅格的所有波段。PostGIS 的早期版本假定为第一个波段。返回一组栅格图块的并集,组合成一个由 1 个或多个波段组成的单个栅格。
  • ST_Union - 增强功能: 2.1.0 ST_Union(rast, uniontype)(变体 4)合并所有输入栅格的所有波段。返回一组栅格图块的并集,组合成一个由 1 个或多个波段组成的单个栅格。
  • toTopoGeom - 增强功能: 2.1.0 添加了采用现有拓扑几何体的版本。将简单的几何图形转换为拓扑几何图形。

PostGIS 2.1 中更改的功能

  • ST_Aspect - 变更:2.1.0。在之前的版本中,返回值以弧度为单位。现在,默认情况下返回值以度为单位。返回高程栅格波段的坡向(默认以度为单位)。对于分析地形非常有用。
  • ST_EstimatedExtent - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Estimated_Extent。返回空间表的估计范围。
  • ST_Force2D - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Force_2D。将几何图形强制转换为“二维模式”。
  • ST_Force3D - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Force_3D。将几何图形强制转换为 XYZ 模式。这是 ST_Force3DZ 的别名。
  • ST_Force3DM - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Force_3DM。将几何图形强制转换为 XYM 模式。
  • ST_Force3DZ - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Force_3DZ。将几何图形强制转换为 XYZ 模式。
  • ST_Force4D - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Force_4D。将几何图形强制转换为 XYZM 模式。
  • ST_ForceCollection - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Force_Collection。将几何图形转换为 GEOMETRYCOLLECTION。
  • ST_HillShade - 变更:2.1.0。在之前的版本中,方位角和高度以弧度表示。现在,方位角和高度以度表示。使用提供的方位角、高度、亮度和比例输入返回高程栅格波段的假设照明。
  • ST_LineInterpolatePoint - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Line_Interpolate_Point。返回沿线在指定分数位置插值的点。
  • ST_LineLocatePoint - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Line_Locate_Point。返回线上最接近点的分数位置。
  • ST_LineSubstring - 变更:2.1.0。在 2.0.x 版本中,此函数名为 ST_Line_Substring。返回线上两个分数位置之间的部分。
  • ST_PixelAsCentroids - 变更:2.1.1。更改了 exclude_nodata_value 的行为。返回栅格波段每个像素的质心(点几何图形)以及值、每个像素的 X 和 Y 栅格坐标。点几何图形是由像素表示的区域的质心。
  • ST_PixelAsPoints - 变更:2.1.1。更改了 exclude_nodata_value 的行为。返回栅格波段每个像素的点几何图形以及值、每个像素的 X 和 Y 栅格坐标。点几何图形的坐标是像素的左上角。
  • ST_PixelAsPolygons - 变更:2.1.1。更改了 exclude_nodata_value 的行为。返回栅格波段每个像素的边界多边形几何图形以及值、每个像素的 X 和 Y 栅格坐标。
  • ST_Polygon - 变更:2.1.0。在之前的版本中,有时会返回多边形,现在改为始终返回多重多边形。返回由像素值不为无数据值的像素的并集形成的多重多边形几何图形。如果未指定波段号,则波段号默认为 1。
  • ST_RasterToWorldCoordX - 变更:2.1.0。在之前的版本中,此函数名为 ST_Raster2WorldCoordX。返回栅格、列和行的左上角几何 X 坐标。列和行的编号从 1 开始。
  • ST_RasterToWorldCoordY - 变更:2.1.0。在之前的版本中,此函数名为 ST_Raster2WorldCoordY。返回栅格、列和行的左上角几何 Y 坐标。列和行的编号从 1 开始。
  • ST_Rescale - 变更:2.1.0。适用于没有 SRID 的栅格。仅通过调整其比例(或像素大小)来重采样栅格。使用 NearestNeighbor(英文或美式拼写)、Bilinear、Cubic、CubicSpline、Lanczos、Max 或 Min 重采样算法计算新的像素值。默认为 NearestNeighbor。
  • ST_Reskew - 变更:2.1.0。适用于没有 SRID 的栅格。仅通过调整其倾斜度(或旋转参数)来重采样栅格。使用 NearestNeighbor(英文或美式拼写)、Bilinear、Cubic、CubicSpline 或 Lanczos 重采样算法计算新的像素值。默认为 NearestNeighbor。
  • ST_Segmentize - 变更:2.1.0。由于引入了地理支持,使用 ST_Segmentize('LINESTRING(1 2, 3 4)', 0.5) 会导致函数不明确的错误。输入需要正确键入为几何图形或地理图形。使用 ST_GeomFromText、ST_GeogFromText 或转换为所需类型(例如,ST_Segmentize('LINESTRING(1 2, 3 4)'::geometry, 0.5))。返回修改后的几何/地理图形,其任何线段都不长于给定距离。
  • ST_Slope - 变更:2.1.0。在之前的版本中,返回值以弧度为单位。现在,默认情况下返回值以度为单位。返回高程栅格波段的坡度(默认以度为单位)。对于分析地形非常有用。
  • ST_SnapToGrid - 变更:2.1.0。适用于没有 SRID 的栅格。通过将其捕捉到网格来重采样栅格。使用 NearestNeighbor(英文或美式拼写)、Bilinear、Cubic、CubicSpline 或 Lanczos 重采样算法计算新的像素值。默认为 NearestNeighbor。
  • ST_WorldToRasterCoordX - 变更:2.1.0。在之前的版本中,此函数名为 ST_World2RasterCoordX。返回栅格中点几何图形 (pt) 或以栅格世界空间参考系统表示的 X 和 Y 世界坐标 (xw, yw) 的列。
  • ST_WorldToRasterCoordY - 变更:2.1.0。在之前的版本中,此函数名为 ST_World2RasterCoordY。返回栅格中点几何图形 (pt) 或以栅格世界空间参考系统表示的 X 和 Y 世界坐标 (xw, yw) 的行。

13.12.12. PostGIS 2.0 中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 2.0 中新增的函数

  • && - 可用性:2.0.0。如果 A 的边界框与 B 的边界框相交,则返回 TRUE。
  • &&& - 可用性:2.0.0。如果 A 的 n 维边界框与 B 的 n 维边界框相交,则返回 TRUE。
  • <#> - 可用性:2.0.0。-- KNN 仅适用于 PostgreSQL 9.1+。返回 A 和 B 边界框之间的 2D 距离。
  • <-> - 可用性:2.0.0。-- 弱 KNN 根据几何质心距离而不是真实距离提供最近邻。点精确结果,所有其他类型的结果都不精确。适用于 PostgreSQL 9.1+。返回 A 和 B 之间的 2D 距离。
  • @ - 可用性:2.0.0。引入了栅格 @ 栅格,栅格 @ 几何图形。如果 A 的边界框被 B 的边界框包含,则返回 TRUE。使用双精度边界框。
  • @ - 可用性:2.0.5。引入了几何图形 @ 栅格。如果 A 的边界框被 B 的边界框包含,则返回 TRUE。使用双精度边界框。
  • AddEdge - 可用性:2.0.0。将线串边添加到指定拓扑架构的边表,并将相关的起点和终点添加到点节点表,使用指定的线串几何图形,并返回新边(或现有边)的边 ID。
  • AddFace - 可用性:2.0.0。向拓扑注册面图元并获取其标识符。
  • AddNode - 可用性:2.0.0。将点节点添加到指定拓扑架构中的节点表,并返回新节点的 nodeid。如果该点已作为节点存在,则返回现有的 nodeid。
  • AddOverviewConstraints - 可用性:2.0.0。将栅格列标记为另一个栅格列的概览。
  • AddRasterConstraints - 可用性:2.0.0。将栅格约束添加到已加载的栅格表的特定列,该约束限制空间参考、缩放、块大小、对齐方式、波段、波段类型以及用于指示栅格列是否按规则分块的标志。必须加载表格数据才能推断约束。如果完成约束设置,则返回 true,否则会发出通知。
  • AsGML - 可用性:2.0.0。返回拓扑几何图形的 GML 表示形式。
  • CopyTopology - 可用性:2.0.0。将拓扑(节点、边、面、图层和 TopoGeometries)复制到新的架构中。
  • DropOverviewConstraints - 可用性:2.0.0。取消标记栅格列,使其不再是另一个栅格列的概览。
  • DropRasterConstraints - 可用性:2.0.0。删除引用栅格表列的 PostGIS 栅格约束。如果需要重新加载数据或更新栅格列数据,则很有用。
  • Drop_Indexes_Generate_Script - 可用性:2.0.0。生成一个脚本,该脚本删除 tiger 架构和用户指定的架构上的所有非主键和非唯一索引。如果未指定架构,则默认架构为 tiger_data。
  • Drop_State_Tables_Generate_Script - 可用性:2.0.0。生成一个脚本,该脚本删除指定架构中所有以状态缩写为前缀的表。如果未指定架构,则默认架构为 tiger_data。
  • Geocode_Intersection - 可用性:2.0.0。接受两条相交的街道以及州、城市、邮政编码,并在第一条相交街道上输出一组可能的交汇点位置,还包括以 NAD 83 经纬度为单位的点位置的 geomout,每个位置的规范化地址 (addy) 以及评级。评级越低,匹配的可能性越大。结果首先按最低评级排序。可以选择传入最大结果数,默认为 10。使用 Tiger 数据(边、面、地址)、PostgreSQL 模糊字符串匹配(soundex、levenshtein)。
  • GetEdgeByPoint - 可用性:2.0.0。查找与给定点相交的边的边 ID。
  • GetFaceByPoint - 可用性:2.0.0。查找与给定点相交的面。
  • GetNodeByPoint - 可用性:2.0.0。查找点位置节点的 nodeid。
  • GetNodeEdges - 可用性:2.0。返回与给定节点相关联的有序边集。
  • GetRingEdges - 可用性:2.0.0。返回通过在给定的边侧行走遇到的有符号边标识符的有序集合。
  • GetTopoGeomElements - 可用性:2.0.0。返回一组包含给定 TopoGeometry(图元元素)的拓扑 element_id、element_type 的 topoelement 对象。
  • GetTopologySRID - 可用性:2.0.0。返回 topology.topology 表中给定拓扑名称的拓扑的 SRID。
  • Get_Tract - 可用性: 2.0.0 返回几何图形所在的普查区或普查区表的字段。默认返回普查区的短名称。
  • Install_Missing_Indexes - 可用性: 2.0.0 查找所有在地理编码器连接和过滤条件中使用的键列,并且缺少这些列的索引的表,然后会添加这些索引。
  • Loader_Generate_Census_Script - 可用性: 2.0.0 为指定平台的指定州生成一个 shell 脚本,该脚本将下载 Tiger 人口普查州普查区、bg 和 tabblocks 数据表,将其暂存并加载到 tiger_data 模式中。每个州脚本都作为单独的记录返回。
  • Loader_Generate_Script - 可用性: 2.0.0 支持 Tiger 2010 结构化数据并加载普查区 (tract)、区块组 (bg) 和区块 (tabblocks) 表。为指定平台的指定州生成一个 shell 脚本,该脚本将下载 Tiger 数据,将其暂存并加载到 tiger_data 模式中。每个州脚本都作为单独的记录返回。最新版本支持 Tiger 2010 结构性变更,并且还会加载普查区、区块组和区块表。
  • Missing_Indexes_Generate_Script - 可用性: 2.0.0 查找所有在地理编码器连接中使用的键列,并且缺少这些列的索引的表,然后将输出用于定义这些表的索引的 SQL DDL。
  • Polygonize - 可用性: 2.0.0 查找并注册拓扑边定义的所有面。
  • Reverse_Geocode - 可用性: 2.0.0 接收已知空间参考系中的几何点,并返回一个记录,其中包含理论上可能的地址数组和交叉街道数组。如果 include_strnum_range = true,则会在交叉街道中包含街道范围。
  • ST_3DClosestPoint - 可用性: 2.0.0 返回 g1 上最接近 g2 的 3D 点。这是 3D 最短线的第一个点。
  • ST_3DDFullyWithin - 可用性: 2.0.0 测试两个 3D 几何图形是否完全在给定的 3D 距离内
  • ST_3DDWithin - 可用性: 2.0.0 测试两个 3D 几何图形是否在给定的 3D 距离内
  • ST_3DDistance - 可用性: 2.0.0 返回投影单位中两个几何图形之间基于空间参考系的 3D 笛卡尔最小距离。
  • ST_3DIntersects - 可用性: 2.0.0 测试两个几何图形是否在 3D 中空间相交 - 仅适用于点、线串、多边形、多面体表面(区域)
  • ST_3DLongestLine - 可用性: 2.0.0 返回两个几何图形之间的 3D 最长线
  • ST_3DMaxDistance - 可用性: 2.0.0 返回投影单位中两个几何图形之间基于空间参考系的 3D 笛卡尔最大距离。
  • ST_3DShortestLine - 可用性: 2.0.0 返回两个几何图形之间的 3D 最短线
  • ST_AddEdgeModFace - 可用性: 2.0 添加新边,如果这样做会分割面,则修改原始面并添加新面。
  • ST_AddEdgeNewFaces - 可用性: 2.0 添加新边,如果这样做会分割面,则删除原始面,并用两个新面替换它。
  • ST_AsGDALRaster - 可用性: 2.0.0 - 需要 GDAL >= 1.6.0。以指定的 GDAL 光栅格式返回光栅图块。光栅格式是您的编译库支持的格式之一。使用 ST_GDALDrivers() 获取您的库支持的格式列表。
  • ST_AsJPEG - 可用性: 2.0.0 - 需要 GDAL >= 1.6.0。将所选光栅图块的波段作为单个联合图像专家组 (JPEG) 图像(字节数组)返回。如果未指定波段,且有 1 个或 3 个以上的波段,则仅使用第一个波段。如果只有 3 个波段,则使用所有 3 个波段并映射到 RGB。
  • ST_AsLatLonText - 可用性: 2.0 返回给定点的度、分、秒表示形式。
  • ST_AsPNG - 可用性: 2.0.0 - 需要 GDAL >= 1.6.0。将所选光栅图块的波段作为单个可移植网络图形 (PNG) 图像(字节数组)返回。如果光栅中有 1、3 或 4 个波段,且未指定波段,则使用所有波段。如果有 2 个或多于 4 个波段,且未指定波段,则仅使用波段 1。波段会映射到 RGB 或 RGBA 空间。
  • ST_AsRaster - 可用性: 2.0.0 - 需要 GDAL >= 1.6.0。将 PostGIS 几何图形转换为 PostGIS 光栅。
  • ST_AsTIFF - 可用性: 2.0.0 - 需要 GDAL >= 1.6.0。将所选光栅波段作为单个 TIFF 图像(字节数组)返回。如果未指定波段,或者在光栅中不存在任何指定的波段,则会尝试使用所有波段。
  • ST_AsX3D - 可用性: 2.0.0: ISO-IEC-19776-1.2-X3DEncodings-XML 以 X3D xml 节点元素格式返回几何图形:ISO-IEC-19776-1.2-X3DEncodings-XML
  • ST_Aspect - 可用性: 2.0.0 返回高程光栅波段的坡向(默认以度为单位)。可用于分析地形。
  • ST_Band - 可用性: 2.0.0 将现有光栅的一个或多个波段作为新光栅返回。可用于从现有光栅构建新光栅。
  • ST_BandIsNoData - 可用性: 2.0.0 如果波段仅填充了 nodata 值,则返回 true。
  • ST_Clip - 可用性: 2.0.0 返回由输入几何图形裁剪的光栅。如果未指定波段号,则会处理所有波段。如果未指定或为 TRUE,则会裁剪输出光栅。如果 touched 设置为 TRUE,则会包含接触的像素,否则,仅当像素中心位于几何图形中时才会包含该像素。
  • ST_CollectionHomogenize - 可用性: 2.0.0 返回几何图形集合的最简单表示形式。
  • ST_ConcaveHull - 可用性: 2.0.0 计算可能包含所有输入几何图形顶点的凹几何图形
  • ST_Count - 可用性: 2.0.0 返回光栅或光栅覆盖给定波段中的像素数。如果未指定波段,则默认为波段 1。如果 exclude_nodata_value 设置为 true,则只会计算不等于 nodata 值的像素。
  • ST_CreateTopoGeo - 可用性: 2.0 将几何图形集合添加到给定的空拓扑,并返回详细说明成功的消息。
  • ST_Distinct4ma - 可用性: 2.0.0 光栅处理函数,用于计算邻域中唯一像素值的数量。
  • ST_FlipCoordinates - 可用性: 2.0.0 返回 X 轴和 Y 轴翻转的几何图形版本。
  • ST_GDALDrivers - 可用性: 2.0.0 - 需要 GDAL >= 1.6.0。返回 PostGIS 通过 GDAL 支持的光栅格式列表。只有 can_write=True 的格式才能由 ST_AsGDALRaster 使用
  • ST_GeomFromGeoJSON - 可用性: 2.0.0 需要 - JSON-C >= 0.9 将几何图形的 geojson 表示形式作为输入,并输出 PostGIS 几何图形对象
  • ST_GetFaceEdges - 可用性: 2.0 返回限定面的有序边集。
  • ST_HasNoBand - 可用性: 2.0.0 如果没有具有给定波段号的波段,则返回 true。如果未指定波段号,则假定波段号为 1。
  • ST_HillShade - 可用性: 2.0.0 使用提供的方位角、高度、亮度和比例输入,返回高程光栅波段的假设照明。
  • ST_Histogram - 可用性: 2.0.0 返回一组记录,总结光栅或光栅覆盖数据分布的单独 bin 范围。如果未指定,则会自动计算 bin 的数量。
  • ST_InterpolatePoint - 可用性: 2.0.0 返回最接近点的几何图形的插值度量。
  • ST_IsEmpty - 可用性: 2.0.0 如果光栅为空(宽度 = 0 且高度 = 0),则返回 true。否则,返回 false。
  • ST_IsValidDetail - 可用性: 2.0.0 返回一个 valid_detail 行,说明几何图形是否有效,如果无效,则说明原因和位置。
  • ST_IsValidReason - 可用性: 2.0 版本,采用标志。返回文本,说明几何图形是否有效,或无效的原因。
  • ST_MakeLine - 可用性: 2.0.0 - 引入了对 LineString 输入元素的支持 从点、多点或线串几何图形创建线串。
  • ST_MakeValid - 可用性: 2.0.0 尝试使无效几何图形在不丢失顶点的情况下有效。
  • ST_MapAlgebraExpr - 可用性: 2.0.0 1 个光栅波段版本:通过对输入光栅波段和提供的像素类型应用有效的 PostgreSQL 代数运算来创建新的单波段光栅。如果未指定波段,则假定为波段 1。
  • ST_MapAlgebraExpr - 可用性: 2.0.0 2 个光栅波段版本:通过对两个输入光栅波段和提供的像素类型应用有效的 PostgreSQL 代数运算来创建新的单波段光栅。如果未指定波段号,则假定每个光栅的波段 1。结果光栅将与第一个光栅定义的网格(比例、倾斜和像素角)对齐,并且其范围由“extenttype”参数定义。“extenttype”的值可以是:INTERSECTION、UNION、FIRST、SECOND。
  • ST_MapAlgebraFct - 可用性: 2.0.0 1 波段版本 - 通过对输入光栅波段和提供的像素类型应用有效的 PostgreSQL 函数来创建新的单波段光栅。如果未指定波段,则假定为波段 1。
  • ST_MapAlgebraFct - 可用性: 2.0.0 2 波段版本 - 通过对 2 个输入光栅波段和提供的像素类型应用有效的 PostgreSQL 函数来创建新的单波段光栅。如果未指定波段,则假定为波段 1。如果未指定,则范围类型默认为 INTERSECTION。
  • ST_MapAlgebraFctNgb - 可用性: 2.0.0 1 波段版本:使用用户定义的 PostgreSQL 函数进行 Map Algebra 最近邻。返回一个光栅,其值是来自输入光栅波段的值邻域的 PLPGSQL 用户函数的结果。
  • ST_Max4ma - 可用性: 2.0.0 光栅处理函数,用于计算邻域中的最大像素值。
  • ST_Mean4ma - 可用性: 2.0.0 光栅处理函数,用于计算邻域中的平均像素值。
  • ST_Min4ma - 可用性: 2.0.0 光栅处理函数,用于计算邻域中的最小像素值。
  • ST_ModEdgeHeal - 可用性: 2.0。 通过删除连接它们的节点来修复两条边,修改第一条边并删除第二条边。返回已删除的节点的 ID。
  • ST_MoveIsoNode - 可用性: 2.0.0。 将拓扑中的孤立节点从一个点移动到另一个点。如果新的点几何图形作为节点存在,则会抛出错误。返回移动的描述。
  • ST_NewEdgeHeal - 可用性: 2.0。 通过删除连接它们的节点来修复两条边,删除两条边,并用方向与提供的第一条边相同的边替换它们。
  • ST_Node - 可用性: 2.0.0。 将一系列线段进行节点化。
  • ST_NumPatches - 可用性: 2.0.0。 返回多面体曲面上的面数。 对于非多面体几何图形将返回 null。
  • ST_OffsetCurve - 可用性: 2.0。 返回距输入线给定距离和侧面的偏移线。
  • ST_PatchN - 可用性: 2.0.0。 返回多面体曲面的第 N 个几何图形(面)。
  • ST_Perimeter - 可用性 2.0.0:引入了对地理的支持。 返回多边形几何图形或地理的边界长度。
  • ST_PixelAsPolygon - 可用性: 2.0.0。 返回限定特定行和列的像素的几何多边形。
  • ST_PixelAsPolygons - 可用性: 2.0.0。 返回限定栅格波段的每个像素的几何多边形,以及每个像素的值、X 和 Y 栅格坐标。
  • ST_Project - 可用性: 2.0.0。 返回从起始点按距离和方位角(方位)投影的点。
  • ST_Quantile - 可用性: 2.0.0。 在样本或总体环境中计算栅格或栅格表格覆盖率的分位数。因此,可以检查某个值是否位于栅格的 25%、50%、75% 百分位数。
  • ST_Range4ma - 可用性: 2.0.0。 栅格处理函数,用于计算邻域中像素值的范围。
  • ST_Reclass - 可用性: 2.0.0。 创建一个由原始波段类型重新分类的新栅格。 nband 是要更改的波段。如果未指定 nband,则假定为 1。所有其他波段将保持不变。用例:将 16BUI 波段转换为 8BUI,以便更简单地渲染为可查看的格式。
  • ST_RelateMatch - 可用性: 2.0.0。 测试 DE-9IM 相交矩阵是否与相交矩阵模式匹配。
  • ST_RemEdgeModFace - 可用性: 2.0。 删除一条边,如果该边分隔两个面,则删除一个面并修改另一个面以覆盖两个面的空间。
  • ST_RemEdgeNewFace - 可用性: 2.0。 删除一条边,如果删除的边分隔两个面,则删除原始面并用新面替换它们。
  • ST_Resample - 可用性: 2.0.0。 需要 GDAL 1.6.1+。使用指定的重采样算法、新维度、任意网格角以及从另一个栅格定义或借用的一组栅格地理参考属性对栅格进行重采样。
  • ST_Rescale - 可用性: 2.0.0。 需要 GDAL 1.6.1+。仅通过调整其比例(或像素大小)来重采样栅格。使用 NearestNeighbor(英语或美式拼写)、Bilinear、Cubic、CubicSpline、Lanczos、Max 或 Min 重采样算法计算新的像素值。默认值为 NearestNeighbor。
  • ST_Reskew - 可用性: 2.0.0。 需要 GDAL 1.6.1+。仅通过调整其倾斜度(或旋转参数)来重采样栅格。使用 NearestNeighbor(英语或美式拼写)、Bilinear、Cubic、CubicSpline 或 Lanczos 重采样算法计算新的像素值。默认值为 NearestNeighbor。
  • ST_SameAlignment - 可用性: 2.0.0。 如果栅格具有相同的倾斜度、比例、空间参考和偏移量(像素可以在不切割像素的情况下放置在同一网格上),则返回 true,否则返回 false,并详细说明问题。
  • ST_SetBandIsNoData - 可用性: 2.0.0。 将波段的 isnodata 标志设置为 TRUE。
  • ST_SharedPaths - 可用性: 2.0.0。 返回一个集合,其中包含两个输入线串/多线串共享的路径。
  • ST_Slope - 可用性: 2.0.0。 返回高程栅格波段的坡度(默认以度为单位)。 用于分析地形。
  • ST_Snap - 可用性: 2.0.0。 将输入几何图形的线段和顶点捕捉到参考几何图形的顶点。
  • ST_SnapToGrid - 可用性: 2.0.0。 需要 GDAL 1.6.1+。通过将其捕捉到网格来重采样栅格。使用 NearestNeighbor(英语或美式拼写)、Bilinear、Cubic、CubicSpline 或 Lanczos 重采样算法计算新的像素值。默认值为 NearestNeighbor。
  • ST_Split - 可用性: 2.0.0。需要 GEOS。返回通过另一个几何图形拆分一个几何图形而创建的几何图形集合。
  • ST_StdDev4ma - 可用性: 2.0.0。 栅格处理函数,用于计算邻域中像素值的标准偏差。
  • ST_Sum4ma - 可用性: 2.0.0。 栅格处理函数,用于计算邻域中所有像素值的总和。
  • ST_SummaryStats - 可用性: 2.0.0。 返回 summarystats,其中包含栅格或栅格覆盖率的给定栅格波段的计数、总和、平均值、标准偏差、最小值、最大值。如果未指定波段,则假定为波段 1。
  • ST_Transform - 可用性: 2.0.0。 需要 GDAL 1.6.1+。使用指定的重采样算法将已知空间参考系统中的栅格重新投影到另一个已知空间参考系统中。选项为 NearestNeighbor、Bilinear、Cubic、CubicSpline、Lanczos,默认为 NearestNeighbor。
  • ST_UnaryUnion - 可用性: 2.0.0。 计算单个几何图形的组成部分的联合。
  • ST_Union - 可用性: 2.0.0。 返回一组栅格切片的联合,形成一个由 1 个或多个波段组成的单个栅格。
  • ST_ValueCount - 可用性: 2.0.0。 返回一组记录,其中包含像素波段值和栅格(或栅格覆盖率)给定波段中具有给定值集的像素数计数。如果未指定波段,则默认使用波段 1。默认情况下,不计算 nodata 值像素。并且输出像素中的所有其他值,并且像素波段值四舍五入到最接近的整数。
  • TopoElementArray_Agg - 可用性: 2.0.0。 返回一组 element_id、type 数组(拓扑元素)的 topoelementarray。
  • TopoGeo_AddLineString - 可用性: 2.0.0。 使用容差并将现有边/面进行分割,将线串添加到现有拓扑中。
  • TopoGeo_AddPoint - 可用性: 2.0.0。 使用容差并可能分割现有边,将点添加到现有拓扑中。
  • TopoGeo_AddPolygon - 可用性: 2.0.0。 使用容差并可能分割现有边/面,将多边形添加到现有拓扑中。返回面标识符。
  • TopologySummary - 可用性: 2.0.0。 采用拓扑名称,并提供拓扑中对象类型的小计。
  • Topology_Load_Tiger - 可用性: 2.0.0。 将虎数据定义的区域加载到 PostGIS 拓扑中,并将虎数据转换为拓扑的空间参考,并捕捉到拓扑的精度容差。
  • toTopoGeom - 可用性: 2.0。 将简单几何图形转换为拓扑几何图形。
  • ~ - 可用性: 2.0.0。 如果 A 的边界框包含 B 的边界框,则返回 TRUE。使用双精度边界框。
  • ~= - 可用性: 2.0.0。 如果 A 的边界框与 B 的边界框相同,则返回 TRUE。

PostGIS 2.0 中增强的功能

  • && - 增强: 2.0.0 引入了对多面体曲面的支持。如果 A 的 2D 边界框与 B 的 2D 边界框相交,则返回 TRUE。
  • AddGeometryColumn - 增强: 2.0.0 引入了 use_typmod 参数。默认创建 typmod 几何列,而不是基于约束的几何列。将几何列添加到现有表中。
  • Box2D - 增强: 2.0.0 引入了对多面体曲面、三角形和 TIN 的支持。返回表示几何图形 2D 范围的 BOX2D。
  • Box3D - 增强: 2.0.0 引入了对多面体曲面、三角形和 TIN 的支持。返回表示几何图形 3D 范围的 BOX3D。
  • CreateTopology - 增强: 2.0 添加了接受 hasZ 的签名。创建新的拓扑架构并将其注册到 topology.topology 表中。
  • Geocode - 增强: 2.0.0 支持 Tiger 2010 结构化数据,并修改了一些逻辑以提高地理编码的速度和准确性,并将点从中心线偏移到街道地址所在的侧面。新参数 max_results 对于指定最佳结果的数量或仅返回最佳结果非常有用。以字符串(或其他规范化地址)的形式输入地址,并输出一组可能的位置,其中包括 NAD 83 经纬度中的点几何图形、每个点的规范化地址以及评分。评分越低,匹配的可能性越大。结果首先按最低评分排序。可以选择传入最大结果数,默认为 10,以及 restrict_region(默认为 NULL)
  • GeometryType - 增强: 2.0.0 引入了对多面体曲面、三角形和 TIN 的支持。以文本形式返回几何图形的类型。
  • Populate_Geometry_Columns - 增强功能:2.0.0 引入了可选参数 `use_typmod`,允许控制列的创建方式,使用类型修饰符还是检查约束。确保几何列使用类型修饰符定义,或具有适当的空间约束。
  • ST_3DExtent - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。聚合函数,返回几何体的 3D 边界框。
  • ST_Affine - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。对几何体应用 3D 仿射变换。
  • ST_Area - 增强功能:2.0.0 - 引入了对 2D 多面体表面的支持。返回多边形几何体的面积。
  • ST_AsBinary - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。返回不带 SRID 元数据的几何体/地理位置的 OGC/ISO 熟知二进制 (WKB) 表示。
  • ST_AsBinary - 增强功能:2.0.0 引入了对更高坐标维度的支持。返回不带 SRID 元数据的几何体/地理位置的 OGC/ISO 熟知二进制 (WKB) 表示。
  • ST_AsBinary - 增强功能:2.0.0 引入了指定地理位置字节顺序的支持。返回不带 SRID 元数据的几何体/地理位置的 OGC/ISO 熟知二进制 (WKB) 表示。
  • ST_AsEWKB - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。返回带有 SRID 元数据的几何体的扩展熟知二进制 (EWKB) 表示。
  • ST_AsEWKT - 增强功能:2.0.0 引入了对地理位置、多面体表面、三角形和不规则三角网 (TIN) 的支持。返回带有 SRID 元数据的几何体的熟知文本 (WKT) 表示。
  • ST_AsGML - 增强功能:2.0.0 引入了前缀支持。引入了 GML3 的选项 4,允许对线条使用 LineString 而不是 Curve 标签。引入了对多面体表面和 TIN 的 GML3 支持。引入了输出边界框的选项 32。将几何体作为 GML 版本 2 或 3 元素返回。
  • ST_AsKML - 增强功能:2.0.0 - 添加前缀命名空间,使用默认参数和命名参数。将几何体作为 KML 元素返回。
  • ST_Azimuth - 增强功能:2.0.0 引入了对地理位置的支持。返回两点之间连线的基于北方的方位角。
  • ST_Dimension - 增强功能:2.0.0 引入了对多面体表面和 TIN 的支持。如果给定空几何体,则不再抛出异常。返回几何体的拓扑维度。
  • ST_Dump - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。为几何体的组成部分返回一组 geometry_dump 行。
  • ST_DumpPoints - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。为几何体中的坐标返回一组 geometry_dump 行。
  • ST_Expand - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。返回从另一个边界框或几何体扩展的边界框。
  • ST_Extent - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。聚合函数,返回几何体的边界框。
  • ST_Force2D - 增强功能:2.0.0 引入了对多面体表面的支持。将几何体强制转换为“2 维模式”。
  • ST_Force3D - 增强功能:2.0.0 引入了对多面体表面的支持。将几何体强制转换为 XYZ 模式。这是 ST_Force3DZ 的别名。
  • ST_Force3DZ - 增强功能:2.0.0 引入了对多面体表面的支持。将几何体强制转换为 XYZ 模式。
  • ST_ForceCollection - 增强功能:2.0.0 引入了对多面体表面的支持。将几何体转换为 GEOMETRYCOLLECTION。
  • ST_ForceRHR - 增强功能:2.0.0 引入了对多面体表面的支持。强制多边形中顶点的方向遵循右手定则。
  • ST_GMLToSQL - 增强功能:2.0.0 引入了对多面体表面和 TIN 的支持。从 GML 表示返回指定的 ST_Geometry 值。这是 ST_GeomFromGML 的别名。
  • ST_GMLToSQL - 增强功能:2.0.0 添加了默认 srid 可选参数。从 GML 表示返回指定的 ST_Geometry 值。这是 ST_GeomFromGML 的别名。
  • ST_GeomFromEWKB - 增强功能:2.0.0 引入了对多面体表面和 TIN 的支持。从扩展熟知二进制表示 (EWKB) 返回指定的 ST_Geometry 值。
  • ST_GeomFromEWKT - 增强功能:2.0.0 引入了对多面体表面和 TIN 的支持。从扩展熟知文本表示 (EWKT) 返回指定的 ST_Geometry 值。
  • ST_GeomFromGML - 增强功能:2.0.0 引入了对多面体表面和 TIN 的支持。将几何体的 GML 表示作为输入,并输出 PostGIS 几何对象
  • ST_GeomFromGML - 增强功能:2.0.0 添加了默认 srid 可选参数。将几何体的 GML 表示作为输入,并输出 PostGIS 几何对象
  • ST_GeometryN - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。返回几何体集合的元素。
  • ST_GeometryType - 增强功能:2.0.0 引入了对多面体表面的支持。将几何体的 SQL-MM 类型作为文本返回。
  • ST_IsClosed - 增强功能:2.0.0 引入了对多面体表面的支持。测试 LineString 的起点和终点是否重合。对于多面体表面,测试它是否闭合(体积)。
  • ST_MakeEnvelope - 增强功能:2.0:引入了在不指定 SRID 的情况下指定包络的能力。从最小和最大坐标创建矩形多边形。
  • ST_MakeValid - 增强功能:2.0.1,速度改进。尝试在不丢失顶点的情况下使无效几何体有效。
  • ST_NPoints - 增强功能:2.0.0 引入了对多面体表面的支持。返回几何体中的点(顶点)数。
  • ST_NumGeometries - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。返回几何体集合中的元素数。
  • ST_Relate - 增强功能:2.0.0 - 添加了指定边界节点规则的支持。测试两个几何体是否具有与相交矩阵模式匹配的拓扑关系,或计算它们的相交矩阵
  • ST_Rotate - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。围绕原点旋转几何体。
  • ST_Rotate - 增强功能:2.0.0 添加了用于指定旋转原点的其他参数。围绕原点旋转几何体。
  • ST_RotateX - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。绕 X 轴旋转几何体。
  • ST_RotateY - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。绕 Y 轴旋转几何体。
  • ST_RotateZ - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。绕 Z 轴旋转几何体。
  • ST_Scale - 增强功能:2.0.0 引入了对多面体表面、三角形和不规则三角网 (TIN) 的支持。按给定的因子缩放几何体。
  • ST_ShiftLongitude - 增强功能:2.0.0 引入了对多面体表面和 TIN 的支持。将几何体的经度坐标在 -180..180 和 0..360 之间移动。
  • ST_Summary - 增强功能:2.0.0 添加了对地理位置的支持。返回几何体内容的文本摘要。
  • ST_Transform - 增强功能:2.0.0 引入了对多面体表面的支持。返回一个新几何体,其坐标已转换为不同的空间参考系统。
  • ST_Value - 增强功能:2.0.0 添加了可选参数 `exclude_nodata_value`。返回给定列x、行y像素或特定几何点中给定波段的值。波段编号从 1 开始,如果未指定,则假定为 1。如果 `exclude_nodata_value` 设置为 false,则所有像素(包括 nodata 像素)都被认为相交并返回值。如果未传入 `exclude_nodata_value`,则从栅格的元数据中读取。
  • ValidateTopology - 增强功能:2.0.0 更高效的边缘交叉检测和修复了先前版本中存在的误报。返回一组 validatetopology_returntype 对象,详细说明拓扑问题。

PostGIS 2.0 中更改的函数

  • AddGeometryColumn - 已更改:2.0.0 此函数不再更新 geometry_columns,因为 geometry_columns 是从系统目录读取的视图。默认情况下,它也不会创建约束,而是使用 PostgreSQL 的内置类型修饰符行为。例如,现在使用此函数构建 wgs84 POINT 列等效于:ALTER TABLE some_table ADD COLUMN geom geometry(Point,4326); 向现有表添加几何列。
  • AddGeometryColumn - 已更改:2.0.0 如果需要约束的旧行为,请使用默认值 use_typmod,但将其设置为 false。向现有表添加几何列。
  • AddGeometryColumn - 已更改:2.0.0 视图不能再在 geometry_columns 中手动注册,但是,针对几何类型修饰符表几何体构建并在不使用包装函数的情况下使用的视图将正确地自行注册,因为它们继承了其父表列的类型修饰符行为。使用输出其他几何体的几何函数的视图需要转换为类型修饰符几何体,以便这些视图几何列在 geometry_columns 中正确注册。请参阅。向现有表添加几何列。
  • Box3D - 更改:2.0.0 在 2.0 之前的版本中,使用的是 box2d 而不是 box3d。由于 box2d 是一种已弃用的类型,因此将其更改为 box3d。返回栅格外包框的 3D 表示。
  • DropGeometryColumn - 更改:2.0.0 此函数是为了向后兼容而提供的。既然 geometry_columns 现在是针对系统目录的视图,您可以使用 ALTER TABLE 像删除其他表列一样删除几何列。从空间表中移除几何列。
  • DropGeometryTable - 更改:2.0.0 此函数是为了向后兼容而提供的。既然 geometry_columns 现在是针对系统目录的视图,您可以使用 DROP TABLE 像删除其他表一样删除包含几何列的表。删除一个表及其在 geometry_columns 中的所有引用。
  • Populate_Geometry_Columns - 更改:2.0.0 默认情况下,现在使用类型修饰符而不是检查约束来约束几何类型。您仍然可以使用新的 use_typmod 并将其设置为 false 来使用检查约束行为。确保使用类型修饰符定义几何列或具有适当的空间约束。
  • ST_3DExtent - 更改:2.0.0 在之前的版本中,它被称为 ST_Extent3D。聚合函数,返回几何体的 3D 边界框。
  • ST_3DLength - 更改:2.0.0 在之前的版本中,它被称为 ST_Length3D。返回线性几何体的 3D 长度。
  • ST_3DMakeBox - 更改:2.0.0 在之前的版本中,它被称为 ST_MakeBox3D。创建由两个 3D 点几何体定义的 BOX3D。
  • ST_3DPerimeter - 更改:2.0.0 在之前的版本中,它被称为 ST_Perimeter3D。返回多边形几何体的 3D 周长。
  • ST_AsBinary - 更改:2.0.0 此函数的输入不能是未知类型 -- 必须是几何类型。诸如 ST_AsBinary('POINT(1 2)') 之类的构造不再有效,您将收到一个 n st_asbinary(unknown) is not unique 错误。类似的代码需要更改为 ST_AsBinary('POINT(1 2)'::geometry);。如果不可能这样做,则安装 legacy.sql。返回不带 SRID 元数据的几何体/地理的 OGC/ISO Well-Known Binary (WKB) 表示形式。
  • ST_AsGML - 更改:2.0.0 使用默认命名参数。将几何体作为 GML 版本 2 或 3 元素返回。
  • ST_AsGeoJSON - 更改:2.0.0 支持默认参数和命名参数。以 GeoJSON 格式返回几何体或要素。
  • ST_AsSVG - 更改:2.0.0 使用默认参数并支持命名参数。返回几何体的 SVG 路径数据。
  • ST_EndPoint - 更改:2.0.0 不再适用于单个几何体 MultiLineString。在旧版本的 PostGIS 中,单个线 MultiLineString 可以使用此函数并返回终点。在 2.0.0 中,它像任何其他 MultiLineString 一样返回 NULL。旧的行为是一个未记录的功能,但假设他们的数据存储为 LINESTRING 的用户可能会在 2.0.0 中遇到这些返回 NULL 的情况。返回 LineString 或 CircularLineString 的最后一个点。
  • ST_GDALDrivers - 更改:2.0.6, 2.1.3 - 默认情况下不启用任何驱动程序,除非设置了 GUC 或环境变量 gdal_enabled_drivers。返回 PostGIS 通过 GDAL 支持的栅格格式列表。只有那些 can_write=True 的格式才能被 ST_AsGDALRaster 使用。
  • ST_GeomFromText - 更改:2.0.0 在之前的 PostGIS 版本中,允许使用 ST_GeomFromText('GEOMETRYCOLLECTION(EMPTY)')。为了更好地符合 SQL/MM 标准,PostGIS 2.0.0 中不再允许这样做。现在应该将其写为 ST_GeomFromText('GEOMETRYCOLLECTION EMPTY')。从 Well-Known Text 表示 (WKT) 返回指定的 ST_Geometry 值。
  • ST_GeometryN - 更改:2.0.0 之前的版本对于单个几何体将返回 NULL。此行为已更改为对于 ST_GeometryN(..,1) 的情况返回几何体。返回几何体集合的元素。
  • ST_IsEmpty - 更改:2.0.0 在之前的 PostGIS 版本中,允许使用 ST_GeomFromText('GEOMETRYCOLLECTION(EMPTY)')。为了更好地符合 SQL/MM 标准,PostGIS 2.0.0 中不再允许这样做。测试几何体是否为空。
  • ST_Length - 更改:2.0.0 破坏性更改 -- 在之前的版本中,将其应用于地理类型的 MULTI/POLYGON 将为您提供 POLYGON/MULTIPOLYGON 的周长。在 2.0.0 中,此行为已更改为返回 0 以符合几何体的行为。如果您想要多边形的周长,请使用 ST_Perimeter。返回线性几何体的 2D 长度。
  • ST_LocateAlong - 更改:2.0.0 在之前的版本中,它被称为 ST_Locate_Along_Measure。返回几何体上与度量值匹配的点。
  • ST_LocateBetween - 更改:2.0.0 - 在之前的版本中,它被称为 ST_Locate_Between_Measures。返回几何体上与度量范围匹配的部分。
  • ST_ModEdgeSplit - 更改:2.0 - 在之前的版本中,它的名称错误为 ST_ModEdgesSplit。通过沿现有边创建新节点来拆分边,修改原始边并添加新边。
  • ST_NumGeometries - 更改:2.0.0 在之前的版本中,如果几何体不是集合/MULTI 类型,则会返回 NULL。2.0.0+ 现在为单个几何体(例如 POLYGON、LINESTRING、POINT)返回 1。返回几何体集合中元素的数量。
  • ST_NumInteriorRings - 更改:2.0.0 - 在之前的版本中,它允许传递一个 MULTIPOLYGON,返回第一个 POLYGON 的内部环的数量。返回多边形的内部环(孔)的数量。
  • ST_PointN - 更改:2.0.0 不再适用于单个几何体 multilinestring。在旧版本的 PostGIS 中,单个线 multilinestring 可以正常使用此函数并返回起始点。在 2.0.0 中,它像任何其他 multilinestring 一样返回 NULL。返回几何体中第一个 LineString 或圆形 LineString 的第 N 个点。
  • ST_ScaleX - 更改:2.0.0。在 WKTRaster 版本中,它被称为 ST_PixelSizeX。以坐标参考系统的单位返回像素宽度的 X 分量。
  • ST_ScaleY - 更改:2.0.0。在 WKTRaster 版本中,它被称为 ST_PixelSizeY。以坐标参考系统的单位返回像素高度的 Y 分量。
  • ST_SetScale - 更改:2.0.0 在 WKTRaster 版本中,它被称为 ST_SetPixelSize。此行为在 2.0.0 中发生了更改。设置坐标参考系统中像素的 X 和 Y 大小。单位/像素宽度/高度的数字。
  • ST_StartPoint - 更改:2.0.0 不再适用于单个几何体 MultiLineString。在旧版本的 PostGIS 中,单个线 MultiLineString 可以正常使用此函数并返回起始点。在 2.0.0 中,它像任何其他 MultiLineString 一样返回 NULL。旧的行为是一个未记录的功能,但假设他们的数据存储为 LINESTRING 的用户可能会在 2.0.0 中遇到这些返回 NULL 的情况。返回 LineString 的第一个点。

13.12.13. PostGIS 1.5 中新增或增强的功能

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 1.5 中的新功能

  • && - 可用性:1.5.0 引入了对地理的支持。如果 A 的 2D 边界框与 B 的 2D 边界框相交,则返回 TRUE。
  • PostGIS_LibXML_Version - 可用性:1.5 返回 libxml2 库的版本号。
  • ST_AddMeasure - 可用性:1.5.0 沿线性几何体插值度量值。
  • ST_AsBinary - 可用性:1.5.0 引入了对地理的支持。返回不带 SRID 元数据的几何体/地理的 OGC/ISO Well-Known Binary (WKB) 表示形式。
  • ST_AsGML - 可用性:1.5.0 引入了对地理的支持。将几何体作为 GML 版本 2 或 3 元素返回。
  • ST_AsGeoJSON - 可用性:1.5.0 引入了对地理的支持。以 GeoJSON 格式返回几何体或要素。
  • ST_AsText - 可用性:1.5 - 引入了对地理的支持。返回不带 SRID 元数据的几何体/地理的 Well-Known Text (WKT) 表示形式。
  • ST_Buffer - 可用性:1.5 - 增强了 ST_Buffer 以支持不同的端盖和连接类型。例如,这些可用于将道路线串转换为具有平边或方边而不是圆边的多边形道路。添加了地理的薄包装器。计算覆盖几何体给定距离内所有点的几何体。
  • ST_ClosestPoint - 可用性:1.5.0 返回 g1 上最接近 g2 的 2D 点。这是从一个几何体到另一个几何体的最短线的第一点。
  • ST_CollectionExtract - 可用性:1.5.0 给定一个几何体集合,返回一个仅包含指定类型元素的 Multi-geometry。
  • ST_Covers - 可用性:1.5 - 引入了对地理的支持。测试 B 的每个点是否位于 A 中。
  • ST_DFullyWithin - 可用性:1.5.0 测试几何体是否完全在另一个几何体的距离内。
  • ST_DWithin - 可用性:1.5.0 引入了对地理的支持。测试两个几何体是否在给定距离内。
  • ST_Distance - 可用性:1.5.0 在 1.5 中引入了对地理的支持。改进了平面速度,以更好地处理大型或多个顶点几何体。返回两个几何体或地理值之间的距离。
  • ST_DistanceSphere - 可用性:1.5 - 引入了对点以外的其他几何类型的支持。之前的版本仅适用于点。使用球形地球模型返回两个经/纬度几何体之间的最小距离(以米为单位)。
  • ST_DistanceSpheroid - 可用性:1.5 - 引入了对点以外的其他几何类型的支持。之前的版本仅适用于点。使用球体地球模型返回两个经/纬度几何体之间的最小距离。
  • ST_DumpPoints - 可用性:1.5.0 返回几何体中坐标的一组 geometry_dump 行。
  • ST_Envelope - 可用性:1.5.0 行为已更改为输出双精度而不是 float4。返回表示几何体的边界框的几何体。
  • ST_Expand - 可用性:1.5.0 行为已更改为输出双精度而不是 float4 坐标。返回从另一个边界框或几何体扩展的边界框。
  • ST_GMLToSQL - 可用性:1.5,需要 libxml2 1.6+。从 GML 表示返回指定的 ST_Geometry 值。这是 ST_GeomFromGML 的别名。
  • ST_GeomFromGML - 可用性:1.5,需要 libxml2 1.6+。将几何体的 GML 表示作为输入,并输出 PostGIS 几何对象。
  • ST_GeomFromKML - 可用性:1.5,需要 libxml2 2.6+。将几何体的 KML 表示作为输入,并输出 PostGIS 几何对象。
  • ST_HausdorffDistance - 可用性:1.5.0 返回两个几何体之间的 Hausdorff 距离。
  • ST_Intersection - 可用性:1.5 引入了对地理数据类型的支持。计算表示几何体 A 和 B 的共享部分的几何体。
  • ST_Intersects - 可用性:1.5 版本引入了对地理的支持。测试两个几何图形是否相交(它们至少有一个共同点)
  • ST_Length - 可用性:1.5.0 版本在 1.5 中引入了地理支持。返回线性几何图形的 2D 长度。
  • ST_LongestLine - 可用性:1.5.0 返回两个几何图形之间最长的 2D 线段。
  • ST_MakeEnvelope - 可用性:1.5 从最小和最大坐标创建一个矩形多边形。
  • ST_MaxDistance - 可用性:1.5.0 返回两个几何图形之间以投影单位表示的最大 2D 距离。
  • ST_ShortestLine - 可用性:1.5.0 返回两个几何图形之间最短的 2D 线段
  • ~= - 可用性:1.5.0 更改了行为。如果 A 的边界框与 B 的相同,则返回 TRUE。

13.12.14. PostGIS 1.4 版本中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 1.4 版本中的新函数

  • Populate_Geometry_Columns - 可用性:1.4.0 确保几何列使用类型修饰符定义,或具有适当的空间约束。
  • ST_Collect - 可用性:1.4.0 - 引入了 ST_Collect(geomarray)。ST_Collect 得到增强,可以更快地处理更多几何图形。从一组几何图形创建 GeometryCollection 或 Multi* 几何图形。
  • ST_ContainsProperly - 可用性:1.4.0 测试 B 的每个点是否位于 A 的内部
  • ST_GeoHash - 可用性:1.4.0 返回几何图形的 GeoHash 表示形式。
  • ST_IsValidReason - 可用性:1.4 返回文本,说明几何图形是否有效,或者无效的原因。
  • ST_LineCrossingDirection - 可用性:1.4 返回一个数字,指示两条 LineString 的交叉行为
  • ST_LocateBetweenElevations - 可用性:1.4.0 返回位于海拔 (Z) 范围内的几何图形部分。
  • ST_MakeLine - 可用性:1.4.0 - 引入了 ST_MakeLine(geomarray)。ST_MakeLine 聚合函数得到增强,可以更快地处理更多点。从 Point、MultiPoint 或 LineString 几何图形创建 LineString。
  • ST_MinimumBoundingCircle - 可用性:1.4.0 返回包含几何图形的最小圆多边形。
  • ST_Union - 可用性:1.4.0 - ST_Union 得到增强。引入了 ST_Union(geomarray),并且在 PostgreSQL 中聚合集合的速度更快。计算表示输入几何图形的点集并集的几何图形。

13.12.15. PostGIS 1.3 版本中新增或增强的函数

以下列出的函数是 PostGIS 中新增或增强的函数。

PostGIS 1.3 版本中的新函数

  • ST_AsGML - 可用性:1.3.2 以 GML 版本 2 或 3 元素返回几何图形。
  • ST_AsGeoJSON - 可用性:1.3.4 以 GeoJSON 格式返回几何图形或要素。
  • ST_CurveToLine - 可用性:1.3.0 将包含曲线的几何图形转换为线性几何图形。
  • ST_LineToCurve - 可用性:1.3.0 将线性几何图形转换为曲线几何图形。
  • ST_SimplifyPreserveTopology - 可用性:1.3.3 返回几何图形的简化且有效的表示形式,使用 Douglas-Peucker 算法。