BufferWithTolerance (coğrafi konum veri türü)
Tüm noktası Birliği temsil eden bir geometrik nesnesi değerleri olan uzaklığı döndürür bir geographyörneği için belirtilen tolerans sağlayan belirli bir değere eşit veya daha az olan.
Bu coğrafi konum veri türü yöntemi destekler FullGlobeörnekleri veya bir Yarımküre büyük kayma örnekleri.
Sözdizimi
.BufferWithTolerance ( distance, tolerance, relative )
Bağımsız değişkenler
distance
Olan bir floatmesafeden belirterek ifade geographygeçici arabellek hesaplamak örneği.Tamponunun maksimum mesafe 0.999 geçemez * π * minorAxis * minorAxis / majorAxis (~0.999 * 1/2 Dünya'nın çevresi) veya tam dünya.
tolerance
Olan bir floatarabellek uzaklığı toleransı belirtme ifadesi.Tolerans dönen Doğrusal yaklaşım için ideal arabellek uzaklığı en fazla varyasyon değeri ifade eder.
Örneğin, bir daire bir noktaya ideal arabellek uzaklığı ise, ancak bu bir çokgen tarafından yaklaşık gerekir. Küçük hoşgörü, daha fazla puan çokgen, hangi sonucu karmaşıklığını artırır, ancak hatayı azaltır olacaktır.
Minimum sınırın mesafe ve az için minimum limitin yuvarlanacaktır herhangi bir hoşgörü 0,1 idir.
relative
Olan bir bitbelirterek olup tolerancedeğeri göreceli ya da mutlak. 'True' 1, hoşgörü görecelidir ve ürünü hesaplanır veya toleranceparametre ve açısal ölçüde * ekvator yarıçapı Elipsoit. 'False' ya da 0, hoşgörü mutlak ve tolerancedeğerdir dönen Doğrusal yaklaşım için ideal arabellek uzaklığı mutlak maksimum varyasyon.
Dönüş Türleri
SQL Server dönüş türü: geography
clr döndürme türü: SqlGeography
Açıklamalar
Bu yöntemi oluşturun bir ArgumentException, distance(nan), bir sayı değil veya distancepozitif veya negatif sonsuzluk nedir. Bu yöntem ayrıca atmak olacaktır bir ArgumentException, toleranceise sıfır (0) değil, bir sayı (NaN), negatif veya pozitif ya da negatif sonsuzluk.
STBuffer()will return a FullGlobeörneği belirli durumlarda; Örneğin, STBuffer()döndüren bir FullGlobearabellek uzaklığı Polonyalılar Ekvator mesafe daha büyük olduğunda iki kutup örneği.
Bu yöntemi oluşturun bir ArgumentExceptionde FullGlobeörnekleri burada arabellek uzaklığı aşıyor sınırlama:
0.999 * π * minorAxis * minorAxis / majorAxis (~0.999 * 1/2 Dünya'nın çevresi)
Hata theorectical ve hesaplanan arabellek max(tolerance, extents * 1.E-7)nereye tolerancedeğeri toleranceparametresi. Daha fazla bilgi için extentsbakın coğrafi konum veri türü yöntemi başvurusu.
Bu yöntem kesin değildir.
Örnekler
Aşağıdaki örnek bir Pointörneği ve kullanımları BufferWithTolerance()kaba arabellek çevresinde bunu elde etmek için
DECLARE @g geography;
SET @g = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);
SELECT @g.BufferWithTolerance(1, .5, 0).ToString();
DECLARE @g geography;
SET @g = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);
SELECT @g.BufferWithTolerance(1, .5, 0).ToString();
Ayrıca bkz.
Başvuru
STBuffer (coğrafi konum veri türü)