Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di
AzureIstanza gestita di SQL di
AzureDatabase SQL in Microsoft Fabric
Restituisce un oggetto geografico che rappresenta l'unione di tutti i punti la cui distanza da un'istanza geography è minore o uguale a un valore specificato.
Questo metodo con tipo di dati geography supporta le istanze FullGlobe o le istanze spaziali con dimensioni maggiori di un emisfero.
Syntax
.STBuffer ( distance )
Arguments
distance
Valore di tipo float (double in .NET Framework) che specifica la distanza dall'istanza geography intorno alla quale calcolare il buffer.
La distanza massima del buffer non può superare 0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 della circonferenza della Terra) o l'intero globo.
Tipi restituiti
Tipo SQL Server restituito: geography
Tipo CLR restituito: SqlGeography
Remarks
STBuffer() calcola un buffer in modo analogo a BufferWithTolerance, specificando tolerance = abs(distance) * .001 e relative = false.
Un buffer negativo consente di rimuovere tutti i punti all'interno della distanza specificata del limite dell'istanza geography.
STBuffer() restituisce un'istanza FullGlobe in determinati casi; ad esempio, STBuffer() restituisce un'istanza FullGlobe quando la distanza del buffer è maggiore della distanza dall'equatore ai poli. Un buffer non può superare l'intero globo.
Questo metodo genererà un'eccezione ArgumentException nelle istanze FullGlobe in cui la distanza del buffer supera il limite seguente:
0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 della circonferenza della Terra)
Il limite massimo della distanza consente la massima flessibilità per la costruzione del buffer.
L'errore tra il buffer teorico e quello calcolato è max(tolerance, extents * 1.E-7), dove tolerance = distance * .001. Per altre informazioni sulle estensioni, vedere la Guida di riferimento ai metodi per il tipo di dati geography.
Examples
Nell'esempio seguente viene creata un'istanza LineString``geography. e viene utilizzato STBuffer() per restituire l'area all'interno di 1 metro dell'istanza.
DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SELECT @g.STBuffer(1).ToString();
Vedere anche
BufferWithTolerance (tipo di dati geography)
Metodi OGC sulle istanze di geografia