Chapter 7. PostGIS-referens

Table of Contents

De funktioner som anges nedan är de som en användare av PostGIS sannolikt kommer att behöva. Det finns andra funktioner som är nödvändiga stödfunktioner för PostGIS-objekten och som inte är till nytta för en allmän användare.

[Note]

PostGIS har påbörjat en övergång från den befintliga namngivningskonventionen till en SQL-MM-centrerad konvention. Som ett resultat av detta har de flesta av de funktioner som du känner till och älskar bytt namn med hjälp av standardprefixet för spatial typ (ST). Tidigare funktioner är fortfarande tillgängliga, men listas inte i detta dokument där uppdaterade funktioner är likvärdiga. De ST_-funktioner som inte listas i den här dokumentationen är föråldrade och kommer att tas bort i en framtida version, så SLUTA ANVÄNDA DEM.

7.1. PostGIS-datatyper Geometry/Geography/Box

Abstract

I det här avsnittet listas de anpassade PostgreSQL-datatyperna som installerats av PostGIS för att representera spatiala data.

Varje datatyp beskriver sitt type casting-beteende. En type cast konverterar värden av en datatyp till en annan typ. PostgreSQL tillåter att definiera casting-beteende för anpassade typer, tillsammans med de funktioner som används för att konvertera typvärden. Casts kan ha automatiskt beteende, vilket möjliggör automatisk konvertering av ett funktionsargument till en typ som stöds av funktionen.

Vissa casts har ett explicit beteende, vilket innebär att castet måste anges med syntaxen CAST(myval As sometype ) eller myval::sometype. Explicit casting undviker problemet med tvetydiga casts, som kan uppstå när man använder en överladdad funktion som inte stöder en viss typ. En funktion kan t.ex. acceptera en box2d eller en box3d, men inte en geometry. Eftersom geometry har en automatisk cast till båda box-typerna, ger detta ett "tvetydig funktion"-fel. För att förhindra felet ska du använda en explicit cast till önskad box-typ.

Alla datatyper kan castas till text, så detta behöver inte anges explicit.

  • box2d — Typ som representerar en 2-dimensionell avgränsande box.
  • box3d — Typ som representerar en 3-dimensionell avgränsande box.
  • geometry — Den typ som representerar spatiala egenskaper med plana koordinatsystem.
  • geometry_dump — En sammansatt typ som används för att beskriva delarna i en komplex geometri.
  • geography — Den typ som representerar spatiala egenskaper med geodetiska (ellipsoidiska) koordinatsystem.

7.2. Funktioner för tabellhantering

Abstract

Dessa funktioner hjälper till att definiera tabeller som innehåller geometrikolumner.

  • AddGeometryColumn — Lägger till en geometrikolumn i en befintlig tabell.
  • DropGeometryColumn — Tar bort en geometrikolumn från en spatial tabell.
  • DropGeometryTable — Tar bort en tabell och alla dess referenser i geometry_columns.
  • Find_SRID — Returnerar den SRID som definierats för en geometrikolumn.
  • Populate_Geometry_Columns — Säkerställer att geometrikolumner definieras med typmodifierare eller har lämpliga spatiala begränsningar.
  • UpdateGeometrySRID — Uppdaterar SRID för alla objekt i en geometrikolumn och metadata för tabellen.

7.3. Geometry Constructors

  • ST_Collect — Skapar en GeometryCollection eller Multi* geometri från en uppsättning geometrier.
  • ST_LineFromMultiPoint — Skapar en LineString från en MultiPoint-geometri.
  • ST_MakeEnvelope — Skapar en rektangulär polygon från minimi- och maximikoordinater.
  • ST_MakeLine — Skapar en LineString från Point-, MultiPoint- eller LineString-geometrier.
  • ST_MakePoint — Skapar en 2D-, 3DZ- eller 4D-punkt.
  • ST_MakePointM — Skapar en punkt från X-, Y- och M-värden.
  • ST_MakePolygon — Skapar en polygon från ett skal och en valfri lista med hål.
  • ST_Point — Skapar en punkt med X-, Y- och SRID-värden.
  • ST_PointZ — Skapar en punkt med X-, Y-, Z- och SRID-värden.
  • ST_PointM — Skapar en punkt med X-, Y-, M- och SRID-värden.
  • ST_PointZM — Skapar en punkt med X-, Y-, Z-, M- och SRID-värden.
  • ST_Polygon — Skapar en polygon från en LineString med en angiven SRID.
  • ST_TileEnvelope — Skapar en rektangulär polygon i Web Mercator (SRID:3857) med hjälp av XYZ-plattsystemet.
  • ST_HexagonGrid — Returnerar en uppsättning hexagoner och cellindex som helt täcker gränserna för geometriargumentet.
  • ST_Hexagon — Returnerar en enda hexagon med den angivna kantstorleken och cellkoordinaten inom hexagonens rutnätsutrymme.
  • ST_SquareGrid — Returnerar en uppsättning rutnätsrutor och cellindex som helt täcker gränserna för geometriargumentet.
  • ST_Square — Returnerar en enda kvadrat med hjälp av den angivna kantstorleken och cellkoordinaten inom kvadratens rutnätsutrymme.
  • ST_Letters — Returnerar inmatade bokstäver som återges som geometri med en standardstartposition vid origo och en standardtexthöjd på 100.

7.4. Geometriåtkomst

  • GeometryType — Returnerar typen av geometri som text.
  • ST_Boundary — Returnerar gränsen för en geometri.
  • ST_BoundingDiagonal — Returnerar diagonalen i en geometris avgränsande box.
  • ST_CoordDim — Returnerar koordinatdimensionen för en geometri.
  • ST_Dimension — Returnerar den topologiska dimensionen för en geometri.
  • ST_Dump — Returnerar en uppsättning geometry_dump-rader för komponenterna i en geometri.
  • ST_DumpPoints — Returnerar en uppsättning geometry_dump-rader för koordinaterna i en geometri.
  • ST_DumpSegments — Returnerar en uppsättning geometry_dump-rader för segmenten i en geometri.
  • ST_DumpRings — Returnerar en uppsättning geometry_dump-rader för de yttre och inre ringarna i en polygon.
  • ST_EndPoint — Returnerar den sista punkten i en LineString eller CircularLineString.
  • ST_Envelope — Returnerar en geometri som representerar en geometris avgränsande box.
  • ST_ExteriorRing — Returnerar en LineString som representerar den yttre ringen av en Polygon.
  • ST_GeometryN — Returnerar ett element i en geometrisamling.
  • ST_GeometryType — Returnerar SQL-MM-typen för en geometri som text.
  • ST_HasArc — Testar om en geometri innehåller en cirkelbåge
  • ST_InteriorRingN — Returnerar den N:te inre ringen (hålet) i en polygon.
  • ST_NumCurves — Returnerar antalet komponentkurvor i en CompoundCurve.
  • ST_CurveN — Returnerar den N:te komponentkurvgeometrin för en CompoundCurve.
  • ST_IsClosed — Testar om en LineStrings start- och slutpunkter är sammanfallande. För en PolyhedralSurface testas om den är sluten (volymetrisk).
  • ST_IsCollection — Testar om en geometri är en geometrisamlingstyp.
  • ST_IsEmpty — Testar om en geometri är tom.
  • ST_IsPolygonCCW — Testar om polygoner har yttre ringar som är orienterade moturs och inre ringar som är orienterade medurs.
  • ST_IsPolygonCW — Testar om polygoner har yttre ringar som är orienterade medurs och inre ringar som är orienterade moturs.
  • ST_IsRing — Testar om en LineString är sluten och enkel.
  • ST_IsSimple — Testar om en geometri inte har några punkter med självskärning eller självtangentiering.
  • ST_M — Returnerar M-koordinaten för en punkt.
  • ST_MemSize — Returnerar hur mycket minnesutrymme en geometri tar upp.
  • ST_NDims — Returnerar koordinatdimensionen för en geometri.
  • ST_NPoints — Returnerar antalet punkter (vertices) i en geometri.
  • ST_NRings — Returnerar antalet ringar i en polygonal geometri.
  • ST_NumGeometries — Returnerar antalet element i en geometrisamling.
  • ST_NumInteriorRings — Returnerar antalet inre ringar (hål) i en polygon.
  • ST_NumInteriorRing — Returnerar antalet inre ringar (hål) i en polygon. Aias för ST_NumInteriorRings
  • ST_NumPatches — Returnerar antalet ytor på en polyedrisk yta. Returnerar null för icke-polyedriska geometrier.
  • ST_NumPoints — Returnerar antalet punkter i en LineString eller CircularString.
  • ST_PatchN — Returnerar den N:te geometrin (ytan) för en PolyhedralSurface.
  • ST_PointN — Returnerar den N:te punkten i den första LineString eller cirkulära LineString i en geometri.
  • ST_Points — Returnerar en MultiPoint som innehåller koordinaterna för en geometri.
  • ST_StartPoint — Returnerar den första punkten i en LineString.
  • ST_Summary — Returnerar en textsammanfattning av innehållet i en geometri.
  • ST_X — Returnerar X-koordinaten för en Point.
  • ST_Y — Returnerar Y-koordinaten för en Point.
  • ST_Z — Returnerar Z-koordinaten för en Point.
  • ST_Zmflag — Returnerar en kod som anger ZM-koordinatdimensionen för en geometri.
  • ST_HasZ — Kontrollerar om en geometri har en Z-dimension.
  • ST_HasM — Kontrollerar om en geometri har en M (mått)-dimension.

7.5. Geometriredigerare

Abstract

Dessa funktioner skapar modifierade geometrier genom att ändra typ, struktur eller hörn.

  • ST_AddPoint — Lägg till en punkt i en LineString.
  • ST_CollectionExtract — Ger en geometrisamling och returnerar en multigeometri som endast innehåller element av en angiven typ.
  • ST_CollectionHomogenize — Returnerar den enklaste representationen av en geometrisamling.
  • ST_CurveToLine — Konverterar en geometri som innehåller kurvor till en linjär geometri.
  • ST_Scroll — Ändra startpunkt för en sluten LineString.
  • ST_FlipCoordinates — Returnerar en version av en geometri med X- och Y-axlarna vända.
  • ST_Force2D — Tvinga geometrierna till ett "2-dimensionellt läge".
  • ST_Force3D — Tvingar geometrierna till XYZ-läge. Detta är ett alias för ST_Force3DZ.
  • ST_Force3DZ — Tvinga geometrierna till XYZ-läge.
  • ST_Force3DM — Tvinga geometrierna till XYM-läge.
  • ST_Force4D — Tvinga geometrierna till XYZM-läge.
  • ST_ForceCollection — Konvertera geometrin till en GEOMETRYCOLLECTION.
  • ST_ForceCurve — Upcasta en geometri till dess kurvade typ, om tillämpligt.
  • ST_ForcePolygonCCW — Orienterar alla yttre ringar moturs och alla inre ringar medurs.
  • ST_ForcePolygonCW — Orienterar alla yttre ringar medurs och alla inre ringar moturs.
  • ST_ForceSFS — Tvinga geometrierna att endast använda SFS 1.1 geometrityper.
  • ST_ForceRHR — Tvinga orienteringen av hörnen i en polygon att följa högerhands-regeln.
  • ST_LineExtend — Returnerar en linje som sträcker sig framåt och bakåt med angivna avstånd.
  • ST_LineToCurve — Konverterar en linjär geometri till en krökt geometri.
  • ST_Multi — Returnera geometrin som en MULTI*-geometri.
  • ST_Normalize — Returnera geometrin i dess kanoniska form.
  • ST_Project — Returnerar en punkt som projiceras från en startpunkt med ett avstånd och en bäring (azimut).
  • ST_QuantizeCoordinates — Sätter koordinaternas minst signifikanta bitar till noll
  • ST_RemovePoint — Ta bort en punkt från en linestrings.
  • ST_RemoveRepeatedPoints — Returnerar en version av en geometri där dubbletter av punkter har tagits bort.
  • ST_RemoveIrrelevantPointsForView — Tar bort punkter som är irrelevanta för rendering av en specifik rektangulär vy av en geometri.
  • ST_RemoveSmallParts — Tar bort små delar (polygonringar eller linestrings) av en geometri.
  • ST_Reverse — Returnera geometrin med omvänd ordning på topparna.
  • ST_Segmentize — Returnerar en modifierad geometri/geografi som inte har något segment som är längre än ett givet avstånd.
  • ST_SetPoint — Ersätt punkten i en linestrings med en given punkt.
  • ST_ShiftLongitude — Flyttar longitudkoordinaterna för en geometri mellan -180..180 och 0..360.
  • ST_WrapX — Omsluta en geometri runt ett X-värde.
  • ST_SnapToGrid — Fäst alla punkter i indatageometrin i ett regelbundet rutnät.
  • ST_Snap — Fäst segment och vertikaler i indatageometrin till vertikaler i en referensgeometri.
  • ST_SwapOrdinates — Returnerar en version av den givna geometrin med givna ordinatvärden ombytta.

7.6. Validering av geometri

Abstract

Dessa funktioner testar om geometrierna är giltiga enligt OGC SFS-standarden. De ger också information om ogiltighetens art och plats. Det finns också en funktion för att skapa en giltig geometri från en ogiltig.

  • ST_IsValid — Testar om en geometri är välformad i 2D.
  • ST_IsValidDetail — Returnerar en valid_detail-rad som anger om en geometri är giltig eller om den inte är det, en orsak och en plats.
  • ST_IsValidReason — Returnerar text som anger om en geometri är giltig, eller en orsak till ogiltigheten.
  • ST_MakeValid — Försöker göra en ogiltig geometri giltig utan att förlora toppar.

7.7. Funktioner för spatialt referenssystem

Abstract

Dessa funktioner arbetar med det spatiala referenssystemet för geometrier som definieras i tabellen spatial_ref_sys.

  • ST_InverseTransformPipeline — Returnerar en ny geometri med koordinater som transformerats till ett annat spatialt referenssystem med hjälp av inversen av en definierad pipeline för koordinattransformation.
  • ST_SetSRID — Ställ in SRID på en geometri.
  • ST_SRID — Returnerar den spatiala referensidentifieraren för en geometri.
  • ST_Transform — Returnerar en ny geometri med koordinater som transformerats till ett annat spatialt referenssystem.
  • ST_TransformPipeline — Returnerar en ny geometri med koordinater som transformerats till ett annat spatialt referenssystem med hjälp av en definierad pipeline för koordinattransformation.
  • postgis_srs_codes — Returnerar listan över SRS-koder som är associerade med den angivna myndigheten.
  • postgis_srs — Returnerar en metadatapost för den begärda myndigheten och srid.
  • postgis_srs_all — Returnera metadataposter för varje spatialt referenssystem i den underliggande Proj-databasen.
  • postgis_srs_search — Returnera metadataposter för projicerade koordinatsystem som har användningsområden som helt innehåller parametern bounds.

7.8. Inmatning av geometri

Abstract

Dessa funktioner skapar geometriska objekt från olika text- eller binärformat.

7.8.1. Well-Known Text (WKT)

  • ST_BdPolyFromText — Konstruera en polygon givet en godtycklig samling av slutna linestrings som en MultiLineString Well-Known textrepresentation.
  • ST_BdMPolyFromText — Konstruera en MultiPolygon givet en godtycklig samling av slutna linestrings som en MultiLineString text representation Well-Known text representation.
  • ST_GeogFromText — Returnera ett angivet geografiskt värde från Well-Known Text representation or extended (WKT).
  • ST_GeographyFromText — Returnera ett angivet geografiskt värde från Well-Known Text representation or extended (WKT).
  • ST_GeomCollFromText — Skapar en geometrisk samling från samlingen WKT med angiven SRID. Om SRID inte anges är standardvärdet 0.
  • ST_GeomFromEWKT — Returnera ett specificerat ST_Geometry-värde från Extended Well-Known Text representation (EWKT).
  • ST_GeomFromMARC21 — Tar MARC21/XML-geografiska data som indata och returnerar ett PostGIS-geometriobjekt.
  • ST_GeometryFromText — Returnerar ett specificerat ST_Geometry-värde från Well-Known Text representation (WKT). Detta är ett aliasnamn för ST_GeomFromText
  • ST_GeomFromText — Returnera ett specificerat ST_Geometry-värde från Well-Known Text representation (WKT).
  • ST_LineFromText — Skapar en geometri från en WKT-representation med angiven SRID. Om SRID inte anges är standardvärdet 0.
  • ST_MLineFromText — Returnera ett specificerat ST_MultiLineString-värde från WKT-representation.
  • ST_MPointFromText — Skapar en geometri från WKT med den angivna SRID. Om SRID inte anges är standardvärdet 0.
  • ST_MPolyFromText — Skapar en MultiPolygon Geometry från WKT med den angivna SRID. Om SRID inte anges är standardvärdet 0.
  • ST_PointFromText — Skapar en punktgeometri från WKT med angiven SRID. Om SRID inte anges är standardvärdet okänt.
  • ST_PolygonFromText — Skapar en geometri från WKT med den angivna SRID. Om SRID inte anges är standardvärdet 0.
  • ST_WKTToSQL — Returnerar ett specificerat ST_Geometry-värde från Well-Known Text representation (WKT). Detta är ett aliasnamn för ST_GeomFromText

7.8.2. Välkänd binär (WKB)

  • ST_GeogFromWKB — Skapar en geografisk instans från en geometrisk representation av Well-Known Binary (WKB) eller utökad Well Known Binary (EWKB).
  • ST_GeomFromEWKB — Returnera ett specificerat ST_Geometry-värde från Extended Well-Known Binary representation (EWKB).
  • ST_GeomFromWKB — Skapar en geometriinstans från en Well-Known Binary geometrirepresentation (WKB) och valfri SRID.
  • ST_LineFromWKB — Gör en LINESTRING från WKB med den angivna SRID
  • ST_LinestringFromWKB — Skapar en geometri från WKB med den angivna SRID:en.
  • ST_PointFromWKB — Skapar en geometri från WKB med den angivna SRID
  • ST_WKBToSQL — Returnerar ett specificerat ST_Geometry-värde från Well-Known Binary representation (WKB). Detta är ett aliasnamn för ST_GeomFromWKB som inte tar någon srid

7.8.3. Andra format

  • ST_Box2dFromGeoHash — Returnerar en BOX2D från en GeoHash-sträng.
  • ST_GeomFromGeoHash — Returnerar en geometri från en GeoHash-sträng.
  • ST_GeomFromGML — Tar som indata GML-representation av geometri och matar ut ett PostGIS-geometriobjekt
  • ST_GeomFromGeoJSON — Tar som indata en geojson-representation av en geometri och matar ut ett PostGIS-geometriobjekt
  • ST_GeomFromKML — Tar som indata KML-representation av geometri och matar ut ett PostGIS-geometriobjekt
  • ST_GeomFromTWKB — Skapar en geometriinstans från en TWKB ("Tiny Well-Known Binary")-geometrirepresentation.
  • ST_GMLToSQL — Returnerar ett specificerat ST_Geometry-värde från GML-representation. Detta är ett aliasnamn för ST_GeomFromGML
  • ST_LineFromEncodedPolyline — Skapar en LineString från en kodad polylinje.
  • ST_PointFromGeoHash — Returnerar en punkt från en GeoHash-sträng.
  • ST_FromFlatGeobufToTable — Skapar en tabell baserad på strukturen i FlatGeobuf-data.
  • ST_FromFlatGeobuf — Läser FlatGeobuf-data.

7.9. Geometriutdata

Abstract

Dessa funktioner konverterar geometriska objekt till olika text- eller binärformat.

7.9.1. Well-Known Text (WKT)

  • ST_AsEWKT — Returnera WKT-representationen (Well-Known Text) av geometrin med SRID-metadata.
  • ST_AsText — Returnera WKT-representationen (Well-Known Text) av geometrin/geografin utan SRID-metadata.

7.9.2. Välkänd binär (WKB)

  • ST_AsBinary — Returnera OGC/ISO Well-Known Binary (WKB)-representationen av geometrin/geografin utan SRID-metadata.
  • ST_AsEWKB — Returnerar EWKB-representationen (Extended Well-Known Binary) av geometrin med SRID-metadata.
  • ST_AsHEXEWKB — Returnerar en geometri i HEXEWKB-format (som text) med antingen little-endian (NDR) eller big-endian (XDR) kodning.

7.9.3. Andra format

  • ST_AsEncodedPolyline — Returnerar en kodad polylinje från en LineString-geometri.
  • ST_AsFlatGeobuf — Returnerar en FlatGeobuf-representation av en uppsättning rader.
  • ST_AsGeobuf — Returnerar en Geobuf-representation av en uppsättning rader.
  • ST_AsGeoJSON — Returnerar en geometri eller funktion i GeoJSON-format.
  • ST_AsGML — Returnera geometrin som ett GML-element version 2 eller 3.
  • ST_AsKML — Returnera geometrin som ett KML-element.
  • ST_AsLatLonText — Returnerar grader, minuter och sekunder för den angivna punkten.
  • ST_AsMARC21 — Returnerar geometri som en MARC21/XML-post med ett geografiskt datafält (034).
  • ST_AsMVTGeom — Transformerar en geometri till koordinatrymden för en MVT-platta.
  • ST_AsMVT — Aggregatfunktion som returnerar en MVT-representation av en uppsättning rader.
  • ST_AsSVG — Returnerar SVG-banedata för en geometri.
  • ST_AsTWKB — Returnerar geometrin som TWKB, aka "Tiny Well-Known Binary"
  • ST_AsX3D — Returnerar en geometri i X3D xml-nodelementformat: ISO-IEC-19776-1.2-X3DEncodings-XML
  • ST_GeoHash — Returnerar en GeoHash-representation av geometrin.

7.10. Operatorer

7.10.1. Operatorer för avgränsande box

  • && — Returnerar TRUE om A:s 2D-begränsningsbox skär B:s 2D-begränsningsbox.
  • &&(geometry,box2df) — Returnerar TRUE om en geometris (cachelagrade) 2D-begränsningsbox skär en 2D-begränsningsbox med flytande precision (BOX2DF).
  • &&(box2df,geometry) — Returnerar TRUE om en 2D-gränsbox med flytande precision (BOX2DF) skär en geometris (cachelagrade) 2D-gränsbox.
  • &&(box2df,box2df) — Returnerar TRUE om två 2D-begränsningsboxar med flytande precision (BOX2DF) skär varandra.
  • &&& — Returnerar TRUE om A:s n-D-gränsbox skär B:s n-D-gränsbox.
  • &&&(geometry,gidx) — Returnerar TRUE om en geometris (cachade) n-D-begränsningsbox skär en n-D-begränsningsbox med flytande precision (GIDX).
  • &&&(gidx,geometry) — Returnerar TRUE om en n-D avgränsningsbox med flytande precision (GIDX) skär en geometris (cachelagrade) n-D avgränsningsbox.
  • &&&(gidx,gidx) — Returnerar TRUE om två gränsboxar (GIDX) med n-D floatprecision skär varandra.
  • &< — Returnerar TRUE om A:s avgränsande box överlappar eller ligger till vänster om B:s.
  • &<| — Returnerar TRUE om A:s avgränsande box överlappar eller ligger under B:s.
  • &> — Returnerar TRUE om A:s avgränsande box överlappar eller är till höger om B:s.
  • << — Returnerar TRUE om A:s avgränsande box ligger strikt till vänster om B:s.
  • <<| — Returnerar TRUE om A:s avgränsande box är strikt under B:s.
  • = — Returnerar TRUE om koordinaterna och koordinatordningen för geometri/geografi A är samma som koordinaterna och koordinatordningen för geometri/geografi B.
  • >> — Returnerar TRUE om A:s avgränsande box ligger strikt till höger om B:s.
  • @ — Returnerar TRUE om A:s avgränsande box ingår i B:s.
  • @(geometry,box2df) — Returnerar TRUE om en geometris 2D-begränsningsbox ingår i en 2D-begränsningsbox med flytande precision (BOX2DF).
  • @(box2df,geometry) — Returnerar TRUE om en 2D-gränsbox med flytande precision (BOX2DF) ingår i en geometris 2D-gränsbox.
  • @(box2df,box2df) — Returnerar TRUE om en avgränsande 2D-box med flytande precision (BOX2DF) ingår i en annan avgränsande 2D-box med flytande precision.
  • |&> — Returnerar TRUE om A:s avgränsande box överlappar eller ligger ovanför B:s.
  • |>> — Returnerar TRUE om A:s avgränsande box är strikt över B:s.
  • ~ — Returnerar TRUE om A:s avgränsande box innehåller B:s.
  • ~(geometry,box2df) — Returnerar TRUE om en geometris 2D-bindningsbox innehåller en 2D-bindningsbox med floatprecision (GIDX).
  • ~(box2df,geometry) — Returnerar TRUE om en 2D-gränsbox med flytande precision (BOX2DF) innehåller en geometris 2D-bondingbox.
  • ~(box2df,box2df) — Returnerar TRUE om en avgränsande 2D-box med flytande precision (BOX2DF) innehåller en annan avgränsande 2D-box med flytande precision (BOX2DF).
  • ~= — Returnerar TRUE om A:s avgränsande box är densamma som B:s.

7.10.2. Avståndsoperatorer

  • <-> — Returnerar 2D-avståndet mellan A och B.
  • |=| — Returnerar avståndet mellan A- och B-banorna vid deras närmaste inflygningspunkt.
  • <#> — Returnerar 2D-avståndet mellan A- och B-begränsningsrutorna.
  • <<->> — Returnerar n-D-avståndet mellan geometrierna eller begränsningsrutorna A och B

7.11. Spatiala relationer

Abstract

Dessa funktioner bestämmer spatiala relationer mellan geometrier.

7.11.1. Topologiska relationer

  • ST_3DIntersects — Testar om två geometrier korsar varandra spatialt i 3D - endast för punkter, linestrings, polygoner, polyedrisk yta (area)
  • ST_Contains — Testar om varje punkt i B ligger i A, och deras interiörer har en gemensam punkt
  • ST_ContainsProperly — Testar om varje punkt i B ligger i det inre av A
  • ST_CoveredBy — Testar om varje punkt i A ligger i B
  • ST_Covers — Testar om varje punkt i B ligger i A
  • ST_Crosses — Testar om två geometrier har vissa, men inte alla, inre punkter gemensamt
  • ST_Disjoint — Testar om två geometrier inte har några gemensamma punkter
  • ST_Equals — Testar om två geometrier innehåller samma uppsättning punkter
  • ST_Intersects — Testar om två geometrier skär varandra (de har minst en gemensam punkt)
  • ST_LineCrossingDirection — Returnerar ett tal som anger korsningsbeteendet för två LineStrings
  • ST_OrderingEquals — Testar om två geometrier representerar samma geometri och har punkter i samma riktningsordning
  • ST_Overlaps — Testar om två geometrier har samma dimension och skär varandra, men var och en har minst en punkt som inte finns i den andra
  • ST_Relate — Testar om två geometrier har en topologisk relation som matchar ett Intersection Matrix-mönster, eller beräknar deras Intersection Matrix
  • ST_RelateMatch — Testar om en DE-9IM Intersection Matrix matchar ett Intersection Matrix-mönster
  • ST_Touches — Testar om två geometrier har minst en gemensam punkt, men deras inre delar inte skär varandra
  • ST_Within — Testar om varje punkt i A ligger i B, och deras interiörer har en gemensam punkt

7.11.2. Relationer på distans

  • ST_3DDWithin — Testar om två 3D-geometrier befinner sig inom ett givet 3D-avstånd
  • ST_3DDFullyWithin — Testar om två 3D-geometrier är helt inom ett givet 3D-avstånd
  • ST_DFullyWithin — Testar om en geometri är helt inom ett avstånd från en annan
  • ST_DWithin — Testar om två geometrier ligger inom ett givet avstånd
  • ST_PointInsideCircle — Testar om en punktgeometri ligger inom en cirkel definierad av centrum och radie

7.12. Mätningsfunktioner

Abstract

Dessa funktioner beräknar mätningar av avstånd, yta och vinklar. Det finns också funktioner för att beräkna geometriska värden som bestäms av mätningar.

  • ST_Area — Returnerar arean för en polygonal geometri.
  • ST_Azimuth — Returnerar den nordbaserade azimuten för en linje mellan två punkter.
  • ST_Angle — Returnerar vinkeln mellan två vektorer som definieras av 3 eller 4 punkter, eller 2 linjer.
  • ST_ClosestPoint — Returnerar den 2D-punkt på g1 som ligger närmast g2. Detta är den första punkten på den kortaste linjen från den ena geometrin till den andra.
  • ST_3DClosestPoint — Returnerar den 3D-punkt på g1 som ligger närmast g2. Detta är den första punkten på den kortaste 3D-linjen.
  • ST_Distance — Returnerar avståndet mellan två geometri- eller geografivärden.
  • ST_3DDistance — Returnerar det kartesiska 3D-minsta avståndet (baserat på spatial ref) mellan två geometrier i projicerade enheter.
  • ST_DistanceSphere — Returnerar minsta avstånd i meter mellan två lon/lat-geometrier med hjälp av en sfärisk jordmodell.
  • ST_DistanceSpheroid — Returnerar det minsta avståndet mellan två lon/lat-geometrier med hjälp av en sfäroid jordmodell.
  • ST_FrechetDistance — Returnerar Fréchet-avståndet mellan två geometrier.
  • ST_HausdorffDistance — Returnerar Hausdorff-avståndet mellan två geometrier.
  • ST_Length — Returnerar 2D-längden för en linjär geometri.
  • ST_Length2D — Returnerar 2D-längden för en linjär geometri. Alias för ST_Length
  • ST_3DLength — Returnerar 3D-längden för en linjär geometri.
  • ST_LengthSpheroid — Returnerar 2D- eller 3D-längd/perimeter för en lon/lat-geometri på en sfäroid.
  • ST_LongestLine — Returnerar den längsta 2D-linjen mellan två geometrier.
  • ST_3DLongestLine — Returnerar den längsta 3D-linjen mellan två geometrier
  • ST_MaxDistance — Returnerar det största 2D-avståndet mellan två geometrier i projicerade enheter.
  • ST_3DMaxDistance — Returnerar det maximala kartesiska 3D-avståndet (baserat på spatial ref) mellan två geometrier i projicerade enheter.
  • ST_MinimumClearance — Returnerar den minsta frigången för en geometri, ett mått på geometrins robusthet.
  • ST_MinimumClearanceLine — Returnerar LineString med två punkter som sträcker sig över en geometris minsta spelrum.
  • ST_Perimeter — Returnerar längden på gränsen för en polygonal geometri eller geografi.
  • ST_Perimeter2D — Returnerar 2D-perimetern för en polygonal geometri. Alias för ST_Perimeter.
  • ST_3DPerimeter — Returnerar 3D-perimetern för en polygonal geometri.
  • ST_ShortestLine — Returnerar den kortaste 2D-linjen mellan två geometrier
  • ST_3DShortestLine — Returnerar den kortaste 3D-linjen mellan två geometrier

7.13. Funktioner för överlagring

Abstract

Dessa funktioner beräknar resultat som uppstår vid överlagring av två geometrier. Dessa kallas också för punktuppsättningsteoretiska booleska operationer. Vissa relaterade funktioner tillhandahålls också.

  • ST_ClipByBox2D — Beräknar den del av en geometri som faller inom en rektangel.
  • ST_Difference — Beräknar en geometri som representerar den del av geometri A som inte skär geometri B.
  • ST_Intersection — Beräknar en geometri som representerar den delade delen av geometrierna A och B.
  • ST_MemUnion — Aggregatfunktion som kombinerar geometrier på ett minneseffektivt men långsammare sätt
  • ST_Node — Noder en samling av linjer.
  • ST_Split — Returnerar en samling geometrier som skapats genom att dela en geometri med en annan geometri.
  • ST_Subdivide — Beräknar en rätlinjig subdivision av en geometri.
  • ST_SymDifference — Beräknar en geometri som representerar de delar av geometrierna A och B som inte korsar varandra.
  • ST_UnaryUnion — Beräknar sammanslagningen av komponenterna i en enda geometri.
  • ST_Union — Beräknar en geometri som representerar punktuppsättningssammanslagningen av indatageometrierna.

7.14. Geometribearbetning

Abstract

Dessa funktioner beräknar geometriska constructions eller ändrar geometrins storlek eller form.

  • ST_Buffer — Beräknar en geometri som täcker alla punkter inom ett givet avstånd från en geometri.
  • ST_BuildArea — Skapar en polygonal geometri som bildas av linjerna i en geometri.
  • ST_Centroid — Returnerar den geometriska mittpunkten för en geometri.
  • ST_ChaikinSmoothing — Returnerar en utjämnad version av en geometri med hjälp av Chaikin-algoritmen
  • ST_ConcaveHull — Beräknar en eventuellt konkav geometri som innehåller alla indatageometrins toppar
  • ST_ConvexHull — Beräknar det konvexa skrovet av en geometri.
  • ST_DelaunayTriangles — Returnerar Delaunay-trianguleringen av hörnen i en geometri.
  • ST_FilterByM — Tar bort hörn baserat på deras M-värde
  • ST_GeneratePoints — Genererar en multipoint av slumpmässiga punkter som ingår i en polygon eller multipolygon.
  • ST_GeometricMedian — Returnerar den geometriska medianen för en MultiPoint.
  • ST_LineMerge — Returnerar de linjer som bildas genom att sy ihop en MultiLineString.
  • ST_MaximumInscribedCircle — Beräknar den största cirkeln inom en geometri.
  • ST_LargestEmptyCircle — Beräknar den största cirkeln som inte överlappar en geometri.
  • ST_MinimumBoundingCircle — Returnerar den minsta cirkelpolygonen som innehåller en geometri.
  • ST_MinimumBoundingRadius — Returnerar mittpunkten och radien för den minsta cirkeln som innehåller en geometri.
  • ST_OrientedEnvelope — Returnerar en rektangel med minsta yta som innehåller en geometri.
  • ST_OffsetCurve — Returnerar en förskjuten linje på ett givet avstånd och sida från en inmatad linje.
  • ST_PointOnSurface — Beräknar en punkt som garanterat ligger i en polygon eller på en geometri.
  • ST_Polygonize — Beräknar en samling polygoner som bildas av linjerna i en uppsättning geometrier.
  • ST_ReducePrecision — Returnerar en giltig geometri med punkter som avrundats till en rutnätstolerans.
  • ST_SharedPaths — Returnerar en samling som innehåller sökvägar som delas av de två inmatade linestrings/multilinestrings.
  • ST_Simplify — Returnerar en förenklad representation av en geometri med hjälp av Douglas-Peucker-algoritmen.
  • ST_SimplifyPreserveTopology — Returnerar en förenklad och giltig representation av en geometri med hjälp av Douglas-Peucker-algoritmen.
  • ST_SimplifyPolygonHull — Beräknar ett förenklat topologibevarande yttre eller inre skrov av en polygonal geometri.
  • ST_SimplifyVW — Returnerar en förenklad representation av en geometri med hjälp av Visvalingam-Whyatt-algoritmen
  • ST_SetEffectiveArea — Ställer in den effektiva ytan för varje toppunkt med hjälp av Visvalingam-Whyatt-algoritmen.
  • ST_TriangulatePolygon — Beräknar den begränsade Delaunay-trianguleringen av polygoner
  • ST_VoronoiLines — Returnerar gränserna för Voronoi-diagrammet för geometrins hörnpunkter.
  • ST_VoronoiPolygons — Returnerar cellerna i Voronoi-diagrammet för hörnen i en geometri.

7.15. Täckning

Abstract

Dessa funktioner arbetar med uppsättningar av polygonal geometri som bildar "implicita täckningar". För att bilda en giltig täckning får polygonerna inte överlappa varandra och hörnen på intilliggande kanter måste matcha varandra exakt. Täckningar är snabba att bearbeta och kan hanteras med fönsterfunktioner, som behåller täckningens topologi inuti fönsterpartitionen samtidigt som kanterna ändras.

  • ST_CoverageInvalidEdges — Fönsterfunktion som hittar platser där polygonerna inte bildar en giltig täckning.
  • ST_CoverageSimplify — Fönsterfunktion som förenklar kanterna på en polygonal täckning.
  • ST_CoverageUnion — Beräknar unionen av en uppsättning polygoner som bildar en täckning genom att ta bort gemensamma kanter.
  • ST_CoverageClean — Beräknar en ren (kantmatchad, icke-överlappande, gap-cleared) polygontäckning, givet en icke ren indata.

7.16. Affina transformationer

Abstract

Dessa funktioner ändrar geometrins position och form med hjälp av affina transformationer.

  • ST_Affine — Tillämpa en 3D-affin transformation på en geometri.
  • ST_Rotate — Roterar en geometri runt en ursprungspunkt.
  • ST_RotateX — Roterar en geometri runt X-axeln.
  • ST_RotateY — Roterar en geometri runt Y-axeln.
  • ST_RotateZ — Roterar en geometri runt Z-axeln.
  • ST_Scale — Skalar en geometri med givna faktorer.
  • ST_Translate — Translaterar en geometri med givna offsets.
  • ST_TransScale — Translaterar och skalar en geometri med hjälp av givna offsets och faktorer.

7.17. Klustringsfunktioner

Abstract

Dessa funktioner implementerar klusteralgoritmer för uppsättningar av geometrier.

  • ST_ClusterDBSCAN — Fönsterfunktion som returnerar ett kluster-ID för varje indatageometri med hjälp av DBSCAN-algoritmen.
  • ST_ClusterIntersecting — Aggregerad funktion som klustrar inmatade geometrier till sammanhängande mängder.
  • ST_ClusterIntersectingWin — Fönsterfunktion som returnerar ett kluster-ID för varje indatageometri och klustrar indatageometrier i sammanhängande uppsättningar.
  • ST_ClusterKMeans — Fönsterfunktion som returnerar ett kluster-ID för varje indatageometri med hjälp av K-means-algoritmen.
  • ST_ClusterWithin — Aggregatfunktion som klustrar geometrier efter separationsavstånd.
  • ST_ClusterWithinWin — Fönsterfunktion som returnerar ett kluster-ID för varje indatageometri, klustring med hjälp av separationsavstånd.

7.18. Funktioner för avgränsande box

Abstract

Dessa funktioner producerar eller arbetar med begränsningsboxar. De kan också tillhandahålla och acceptera geometrivärden genom att använda automatiska eller explicita casts.

Se även Section 13.7, “PostGIS Box-funktioner”.

  • Box2D — Returnerar en BOX2D som representerar 2D-utbredningen av en geometri.
  • Box3D — Returnerar en BOX3D som representerar 3D-utbredningen av en geometri.
  • ST_EstimatedExtent — Returnerar den uppskattade omfattningen av en spatial tabell.
  • ST_Expand — Returnerar en bounding box som expanderats från en annan bounding box eller en geometri.
  • ST_Extent — Aggregerad funktion som returnerar geometriernas avgränsande box.
  • ST_3DExtent — Aggregerad funktion som returnerar geometriernas 3D-begränsningsbox.
  • ST_MakeBox2D — Skapar en BOX2D som definieras av två 2D-punktgeometrier.
  • ST_3DMakeBox — Skapar en BOX3D som definieras av två 3D-punktgeometrier.
  • ST_XMax — Returnerar X-maximum för en 2D- eller 3D-begränsningsbox eller en geometri.
  • ST_XMin — Returnerar X-minima för en 2D- eller 3D-begränsningsbox eller en geometri.
  • ST_YMax — Returnerar Y-maximum för en 2D- eller 3D-begränsningsbox eller en geometri.
  • ST_YMin — Returnerar Y-minima för en 2D- eller 3D-begränsningsbox eller en geometri.
  • ST_ZMax — Returnerar Z-maximum för en 2D- eller 3D-begränsningsbox eller en geometri.
  • ST_ZMin — Returnerar Z-minima för en 2D- eller 3D-begränsningsbox eller en geometri.

7.19. Linjär referenstagning

  • ST_LineInterpolatePoint — Returnerar en punkt som interpolerats längs en linje på en fraktionerad plats.
  • ST_3DLineInterpolatePoint — Returnerar en punkt som interpolerats längs en 3D-linje på en fraktionerad plats.
  • ST_LineInterpolatePoints — Returnerar punkter interpolerade längs en linje med ett fraktionerat intervall.
  • ST_LineLocatePoint — Returnerar den fraktionerade positionen för den punkt på en linje som ligger närmast en punkt.
  • ST_LineSubstring — Returnerar delen av en linje mellan två fraktionerade platser.
  • ST_LocateAlong — Returnerar den eller de punkter på en geometri som matchar ett mätvärde.
  • ST_LocateBetween — Returnerar de delar av en geometri som matchar ett mätintervall.
  • ST_LocateBetweenElevations — Returnerar de delar av en geometri som ligger inom ett höjdintervall (Z).
  • ST_InterpolatePoint — Returnerar det interpolerade måttet för en geometri som ligger närmast en punkt.
  • ST_AddMeasure — Interpolerar mått längs en linjär geometri.

7.20. Trajektoriefunktioner

Abstract

Dessa funktioner stöder arbete med banor. En bana är en linjär geometri med ökande mått (M-värde) på varje koordinat. Spatialt-temporala data kan modelleras genom att använda relativa tider (t.ex. epoken) som mätvärden.

  • ST_IsValidTrajectory — Testar om geometrin är en giltig bana.
  • ST_ClosestPointOfApproach — Returnerar ett mått på den närmaste närmandepunkten för två banor.
  • ST_DistanceCPA — Returnerar avståndet mellan de två banornas närmaste närmandepunkter.
  • ST_CPAWithin — Testar om den närmaste punkten för två banor ligger inom det angivna avståndet.

7.21. Versionsfunktioner

Abstract

Dessa funktioner rapporterar och uppgraderar PostGIS-versioner.

7.22. Grand Unified Custom Variables (GUC)

Abstract

I detta avsnitt listas anpassade PostGIS Grand Unified Custom Variables (GUC). Dessa kan ställas in globalt, per databas, per session eller per transaktion. Bäst att ställa in på global nivå eller databasnivå.

För fler exempel på användning, se SQL SET och SQL ALTER SYSTEM

  • postgis.gdal_datapath — Ett konfigurationsalternativ för att tilldela värdet för GDAL:s GDAL_DATA-alternativ. Om den inte är inställd används den miljöinställda variabeln GDAL_DATA.
  • postgis.gdal_enabled_drivers — Ett konfigurationsalternativ för att ställa in de aktiverade GDAL-drivrutinerna i PostGIS-miljön. Påverkar GDAL-konfigurationsvariabeln GDAL_SKIP.
  • postgis.enable_outdb_rasters — Ett booleskt konfigurationsalternativ för att aktivera åtkomst till out-db-rasterband.
  • postgis.gdal_vsi_options — En strängkonfiguration för att ställa in alternativ som används när du arbetar med ett out-db-raster.
  • postgis.gdal_cpl_debug — En boolesk konfiguration för att aktivera eller inaktivera loggning av GDAL-felsökningsmeddelanden.

7.23. Felsökningsfunktioner

Abstract

Dessa funktioner är verktyg för felsökning och reparation av geometridata. De behövs bara om geometridata är korrumperade på något sätt, vilket aldrig ska hända under normala omständigheter.

  • PostGIS_AddBBox — Lägg till en begränsningsbox till geometrin.
  • PostGIS_DropBBox — Ta bort begränsningsboxens cache från geometrin.
  • PostGIS_HasBBox — Returnerar TRUE om bboxen för denna geometri är cachad, FALSE annars.