Name

ST_TileEnvelope — Erzeugt ein rechteckiges Polygon in Web Mercator (SRID:3857) unter Verwendung des XYZ-Kachelsystems.

Synopsis

geometry ST_TileEnvelope(integer tileZoom, integer tileX, integer tileY, geometry bounds=SRID=3857;LINESTRING(-20037508.342789 -20037508.342789,20037508.342789 20037508.342789), float margin=0.0);

Beschreibung

Erzeugt ein rechteckiges Polygon, das die Ausdehnung einer Kachel im XYZ-Kachelsystem angibt. Die Kachel wird durch die Zoomstufe Z und den XY-Index der Kachel im Raster auf dieser Stufe angegeben. Kann verwendet werden, um die Kachelgrenzen zu definieren, die von ST_AsMVTGeom benötigt werden, um Geometrie in den MVT-Kachelkoordinatenraum zu konvertieren.

Standardmäßig ist die Kachelhülle im Web Mercator-Koordinatensystem (SRID:3857) unter Verwendung des Standardbereichs des Web Mercator-Systems (-20037508.342789, 20037508.342789). Dies ist das am häufigsten verwendete Koordinatensystem für MVT-Kacheln. Der optionale Parameter bounds kann verwendet werden, um Kacheln in einem beliebigen Koordinatensystem zu erzeugen. Es handelt sich um eine Geometrie, die den SRID und die Ausdehnung des Quadrats "Zoomstufe Null" hat, in das das XYZ-Kachelsystem eingeschrieben ist.

Der optionale Parameter margin kann verwendet werden, um eine Kachel um den angegebenen Prozentsatz zu vergrößern. Z.B. margin=0.125 vergrößert die Kachel um 12,5%, was bei einer Kachelgröße von 4096, wie sie in ST_AsMVTGeom verwendet wird, einem Puffer=512 entspricht. Dies ist nützlich, um einen Kachelpuffer zu erstellen, der Daten enthält, die außerhalb des sichtbaren Bereichs der Kachel liegen, deren Vorhandensein sich aber auf die Darstellung der Kachel auswirkt. Beispielsweise könnte ein Städtename (ein Punkt) in der Nähe eines Kachelrandes liegen, so dass seine Beschriftung auf zwei Kacheln gerendert werden sollte, obwohl sich der Punkt im sichtbaren Bereich nur einer Kachel befindet. Wenn Sie erweiterte Kacheln in einer Abfrage verwenden, wird der Stadtpunkt in beide Kacheln aufgenommen. Verwenden Sie stattdessen einen negativen Wert, um die Kachel zu verkleinern. Werte unter -0,5 sind unzulässig, da die Kachel dann vollständig verschwinden würde. Geben Sie keinen Rand an, wenn Sie ST_AsMVTGeom verwenden. Siehe das Beispiel für ST_AsMVT.

Erweiterung: 2.0.0 Standardwert für den optionalen Parameter SRID eingefügt.

Verfügbarkeit: 2.1.0

Beispiel: Ein Umgebungsrechteck Polygon erzeugen

SELECT ST_AsText( ST_TileEnvelope(2, 1, 1) );

 st_astext
------------------------------
 POLYGON((-10018754.1713945 0,-10018754.1713945 10018754.1713945,0 10018754.1713945,0 0,-10018754.1713945 0))

SELECT ST_AsText( ST_TileEnvelope(3, 1, 1, ST_MakeEnvelope(-180, -90, 180, 90, 4326) ) );

                      st_astext
------------------------------------------------------
 POLYGON((-135 45,-135 67.5,-90 67.5,-90 45,-135 45))

Siehe auch

ST_MakeEnvelope