STBuffer (geografidatatyp)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Returnerar ett geografiobjekt som representerar unionen för alla punkter vars avstånd från en geografiinstans är mindre än eller lika med ett angivet värde.

Den här metoden för geografidatatyp stöder FullGlobe-instanser eller rumsliga instanser som är större än en halvklot.

Syntax

  
.STBuffer ( distance )  

Arguments

avstånd
Är ett värde av typen float (dubbelt i .NET Framework) som anger avståndet från den geografiska instans som bufferten ska beräknas runt.

Buffertens maximala avstånd får inte överstiga 0,999 * π * minorAxis * minorAxis/majorAxis (~0,999 * 1/2 Jordens omkrets) eller hela jordgloben.

Returtyper

SQL Server-returtyp: geografi

CLR-returtyp: SqlGeography

Remarks

STBuffer() beräknar en buffert på samma sätt som BufferWithTolerance och anger tolerans = abs(distance) * .001 och relativ = false.

En negativ buffert tar bort alla punkter inom det angivna avståndet för geografiinstansens gräns.

STBuffer() returnerar en FullGlobe-instans i vissa fall. returnerar till exempel STBuffer() en FullGlobe-instans när buffertavståndet är större än avståndet från ekvatorn till polerna. En buffert får inte överskrida hela jordgloben.

Den här metoden genererar en ArgumentException i FullGlobe-instanser där buffertens avstånd överskrider följande begränsning:

0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 Jordens omkrets)

Den maximala avståndsgränsen gör att buffertens konstruktion kan vara så flexibel som möjligt.

Felet mellan den teoretiska och beräknade bufferten är max(tolerans, omfattningar * 1.E-7) där tolerans = avstånd * .001. Mer information om omfattningar finns i referens för geografidatatypsmetod.

Examples

I följande exempel skapas en LineString``geography instans. Den använder STBuffer() sedan för att returnera regionen inom 1 meter från instansen.

DECLARE @g geography;  
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);  
SELECT @g.STBuffer(1).ToString();  

Se även

BufferWithTolerance (geografidatatyp)
OGC-metoder för geografiinstanser