Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-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