Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-database in Microsoft Fabric
Hiermee wordt een geografieobject geretourneerd dat de samenvoeging van alle punten vertegenwoordigt waarvan de afstand van een geografisch exemplaar kleiner is dan of gelijk is aan een opgegeven waarde.
Deze geografiegegevenstypemethode ondersteunt FullGlobe-exemplaren of ruimtelijke instanties die groter zijn dan een halfrond.
Syntax
.STBuffer ( distance )
Arguments
afstand
Is een waarde van het type float (dubbel in het .NET Framework) die de afstand aangeeft van het geografische exemplaar waarmee de buffer moet worden berekend.
De maximale afstand van de buffer mag niet groter zijn dan 0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 de omtrek van de aarde) of de volledige wereldbol.
Retourtypen
Retourtype SQL Server: geografie
CLR-retourtype: SqlGeography
Remarks
STBuffer() berekent een buffer op dezelfde manier als BufferWithTolerance, waarbij tolerantie = abs(afstand) * .001 en relatieve = onwaar wordt opgegeven.
Een negatieve buffer verwijdert alle punten binnen de opgegeven afstand van de grens van het geografische exemplaar.
STBuffer() retourneert in bepaalde gevallen een FullGlobe-instantie ; Retourneert bijvoorbeeld STBuffer() een FullGlobe-instantie wanneer de bufferafstand groter is dan de afstand van de evenaar naar de polen. Een buffer kan de volledige wereldbol niet overschrijden.
Deze methode genereert een ArgumentException in FullGlobe-exemplaren waarbij de afstand van de buffer de volgende beperking overschrijdt:
0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 de omtrek van de aarde)
Met de maximale afstandslimiet kan de constructie van de buffer zo flexibel mogelijk zijn.
De fout tussen de theoretische en berekende buffer is max(tolerantie, gebieden * 1.E-7) waarbij tolerantie = afstand * .001. Zie de naslaginformatie over geografiegegevenstypen voor meer informatie over gebieden.
Examples
In het volgende voorbeeld wordt een LineString``geography exemplaar gemaakt. Vervolgens wordt STBuffer() de regio binnen 1 meter van het exemplaar geretourneerd.
DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SELECT @g.STBuffer(1).ToString();
Zie ook
BufferWithTolerance (geografiegegevenstype)
OGC-methoden voor geografieexemplaren