Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Olyan földrajzi objektumot ad vissza, amely azoknak a pontoknak az egyesítését jelöli, amelyek távolsága egy földrajzi példánytól kisebb vagy egyenlő egy adott értéknél.
Ez a földrajzi adattípus-módszer támogatja a FullGlobe-példányokat vagy a félgömbnél nagyobb térbeli példányokat.
Syntax
.STBuffer ( distance )
Arguments
távolság
A lebegőpontos (a .NET-keretrendszerben dupla ) típusú érték, amely megadja a földrajzi példánytól a puffer kiszámításához szükséges távolságot.
A puffer maximális távolsága nem haladhatja meg a 0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 Föld kerülete) vagy a teljes földgömb.
Visszatérési típusok
SQL Server visszatérési típusa: földrajzi hely
CLR visszatérési típusa: SqlGeography
Remarks
Az STBuffer() a PufferWithTolerance értékével megegyező módon számítja ki a puffert, megadva a tűrés = abs(távolság) * .001 és relatív = hamis értéket.
A negatív puffer eltávolítja az összes pontot a földrajzi példány határától megadott távolságon belül.
STBuffer()bizonyos esetekben FullGlobe-példányt ad vissza; Például egy STBuffer() ad vissza, ha a puffer távolsága nagyobb, mint az egyenlítőtől a pólusokig. A puffer nem haladhatja meg a teljes gömböt.
Ez a metódus egy ArgumentException metódust küld a FullGlobe-példányokban , ahol a puffer távolsága meghaladja a következő korlátozást:
0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 Föld kerülete)
A maximális távolságkorlát lehetővé teszi, hogy a puffer felépítése a lehető legrugalmasabb legyen.
Az elméleti és a számított puffer közötti hiba a max(tolerancia, mértékek * 1.E-7), ahol a tolerancia = távolság * .001. A mértékekkel kapcsolatos további információkért lásd a földrajzi adattípus módszerének referenciaadatait.
Examples
Az alábbi példa létrehoz egy példányt LineString``geography . Ezután STBuffer() a példánytól számított 1 méteren belül adja vissza a régiót.
DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SELECT @g.STBuffer(1).ToString();
Lásd még:
BufferWithTolerance (földrajzi adattípus)
OGC-metódusok a földrajzi példányokon