NO IMAGE

2. PostGIS擴充套件函式

管理函式:

刪除一個空間表(包括geometry_columns中的記錄) DropGeometryTable([], )
更新空間表的空間參考 UpdateGeometrySRID([], , , )
更新空間表的統計資訊 update_geometry_stats([, ])

參考語義:
Geos:GEOS庫
Jts:JTS庫
Proj:PROJ4庫 postgis_version()

postgis_lib_version()
postgis_lib_build_date()
postgis_script_build_date()
postgis_scripts_installed()
postgis_scripts_released()
postgis_geos_version()
postgis_jts_version()
postgis_proj_version()
postgis_uses_stats()
postgis_full_version()

幾何操作符:

A範圍=B範圍 A = B
A範圍覆蓋B範圍或A範圍在B範圍左側 A &<> B
A範圍在B範圍左側 A <<>> B
A範圍覆蓋B範圍或A範圍在B範圍下方 A &<| B A範圍覆蓋B範圍或A範圍在B範圍上方 A |&> B
A範圍在B範圍下方 A <<| B A範圍在B範圍上方 A |>> B
A=B A ~= B
A範圍被B範圍包含 A @ B
A範圍包含B範圍 A ~ B
A範圍覆蓋B範圍 A && B

幾何量測函式:

量測面積 ST_Area(geometry)
根據經緯度點計算在地球曲面上的距離,單位米,地球半徑取值6370986米 ST_distance_sphere(point, point)
類似上,使用指定的地球橢球引數 ST_distance_spheroid(point, point, spheroid)
量測2D物件長度 ST_length2d(geometry)
量測3D物件長度 ST_length3d(geometry)
根據經緯度物件計算在地球曲面上的長度 ST_length_spheroid(geometry,spheroid)
ST_length3d_spheroid(geometry,spheroid)
量測兩個物件間距離 ST_distance(geometry, geometry)
量測兩條線之間的最大距離 ST_max_distance(linestring,linestring)
量測2D物件的周長 ST_perimeter(geometry)
ST_perimeter2d(geometry)
量測3D物件的周長 ST_perimeter3d(geometry)
量測兩點構成的方位角,單位弧度 ST_azimuth(geometry, geometry)

幾何物件輸出:

參考語義:
NDR:Little Endian
XDR:big-endian
HEXEWKB:Canonical
SVG:SVG 格式
GML:GML 格式
KML:KML 格式
GeoJson:GeoJson 格式

ST_AsBinary(geometry,{‘NDR’|’XDR’})
ST_AsEWKT(geometry)
ST_AsEWKB(geometry, {‘NDR’|’XDR’})
ST_AsHEXEWKB(geometry, {‘NDR’|’XDR’})
ST_AsSVG(geometry, [rel], [precision])
ST_AsGML([version], geometry, [precision])
ST_AsKML([version], geometry, [precision])
ST_AsGeoJson([version], geometry, [precision], [options])

幾何物件建立:

參考語義:
Dump:轉儲 ST_GeomFromEWKT(text)

ST_GeomFromEWKB(bytea)
ST_MakePoint(, , [], [])
ST_MakePointM(, , )
ST_MakeBox2D(, )
ST_MakeBox3D(, )
ST_MakeLine(geometry set)
ST_MakeLine(geometry, geometry)
ST_LineFromMultiPoint(multipoint)
ST_MakePolygon(linestring, [linestring[]])
ST_BuildArea(geometry)
ST_Polygonize(geometry set)
ST_Collect(geometry set)
ST_Collect(geometry, geometry)
ST_Dump(geometry)
ST_DumpRings(geometry)

幾何物件編輯:

給幾何物件新增一個邊界,會使查詢速度加快 ST_AddBBOX(geometry)
刪除幾何物件的邊界 ST_DropBBOX(geometry)
新增、刪除、設定點 ST_AddPoint(linestring, point, [])
ST_RemovePoint(linestring, offset)
ST_SetPoint(linestring, N, point)
幾何物件型別轉換 ST_Force_collection(geometry)
ST_Force_2d(geometry)
ST_Force_3dz(geometry), ST_Force_3d(geometry),
ST_Force_3dm(geometry)
ST_Force_4d(geometry)
ST_Multi(geometry)
將幾何物件轉化到指定空間參考 ST_Transform(geometry,integer)
對3D幾何物件作仿射變化 ST_Affine(geometry, float8, float8, float8, float8, float8, float8, float8, float8, float8, float8, float8, float8)
對2D幾何物件作仿射變化 ST_Affine(geometry, float8, float8, float8, float8, float8, float8)
對幾何物件作偏移 ST_Translate(geometry, float8, float8, float8)
對幾何物件作縮放 ST_Scale(geometry, float8, float8, float8)
對3D幾何物件作旋轉 ST_RotateZ(geometry, float8)
ST_RotateX(geometry, float8)
ST_RotateY(geometry, float8)
對2D物件作偏移和縮放 ST_TransScale(geometry, float8, float8, float8, float8)
反轉 ST_Reverse(geometry)
轉化到右手定則 ST_ForceRHR(geometry)
參考IsSimple函式
使用Douglas-Peuker演算法 ST_Simplify(geometry, tolerance)
ST_SimplifyPreserveTopology(geometry, tolerance)
講幾何物件頂點捕捉到網格 ST_SnapToGrid(geometry, originX, originY, sizeX, sizeY)
ST_SnapToGrid(geometry, sizeX, sizeY), ST_SnapToGrid(geometry, size)
第二個引數為點,指定原點座標 ST_SnapToGrid(geometry, geometry, sizeX, sizeY, sizeZ, sizeM)
分段 ST_Segmentize(geometry, maxlength)
合併為線 ST_LineMerge(geometry)

線性參考:

根據location(0-1)獲得該位置的點 ST_line_interpolate_point(linestring, location)
獲取一段線 ST_line_substring(linestring, start, end)
根據點獲取location(0-1) ST_line_locate_point(LineString, Point)
根據量測值獲得幾何物件 ST_locate_along_measure(geometry, float8)
根據量測值區間獲得幾何物件集合 ST_locate_between_measures(geometry, float8, float8)

雜項功能函式:

幾何物件的摘要 ST_Summary(geometry)
幾何物件的邊界 ST_box2d(geometry)
ST_box3d(geometry)
多個幾何物件的邊界 ST_extent(geometry set)
0=2d, 1=3dm, 2=3dz, 3=4d ST_zmflag(geometry)
是否包含Bounding Box ST_HasBBOX(geometry)
幾何物件的維數:2、3、4 ST_ndims(geometry)
子物件的個數 ST_nrings(geometry)
ST_npoints(geometry)
物件是否驗證成功 ST_isvalid(geometry)
擴大幾何物件 ST_expand(geometry, float)
計算一個空間表的邊界範圍 ST_estimated_extent([schema], table, geocolumn)
獲得空間參考 ST_find_srid(,

長事務支援:

啟用/關閉長事務支援,重複呼叫無副作用 EnableLongTransactions()
DisableLongTransactions()
檢查對行的update和delete操作是否已授權 CheckAuth([],