Aracılığıyla paylaş


CurveToLineWithTolerance (coğrafi konum veri türü)

Çokgen bir yaklaşım döndüren bir geographycircular arc parçalarını içeren örneği.

Sözdizimi

.CurveToLineWithTolerance( tolerance, relative )

Bağımsız değişkenler

  • tolerance
    Olan bir doubleen büyük hata, Doğrusal yaklaşım arasındaki özgün circular arc segment tanımlayan ifade.

  • relative
    Olan bir boolgöreli maksimum sapma için kullanılıp kullanılmayacağını belirten ifade. Göreli yanlış (0) olarak ayarlandığında, bir mutlak Maksimum sapma için ayarlanır, bir doğrusal yaklaşık olabilir olması. Ne zaman göreceli tolerans kayma nesnenin sınırlayıcı kutusunun çapı ve hoşgörü parametre bir ürün olarak hesaplanır (1) true olarak ayarlanır.

Dönüş Türleri

SQL Server dönüş türü: geography

clr döndürme türü:SqlGeography

Kural dışı durumlar

Tolerans ayarlama <= 0 atar bir ArgumentOutOfRangeistisna.

Açıklamalar

Bu yöntem, sonuç için belirtilecek bir hata toleransı miktar tanır LineString.

CurveToLineWithToleranceyöntem döndürür bir LineStringörnek bir CircularStringya CompoundCurveörneği ve Polygonörnek bir CurvePolygonörneği.

Örnekler

A.Bir CircularString örneği farklı Tolerans değerleri kullanma

Aşağıdaki örnek, nasıl ayar tolerans etkiler gösterir LineString döndürülen örnek bir CircularStringörneği:

DECLARE @g geography;

SET @g = geography::Parse('CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)');

SELECT @g.CurveToLineWithTolerance(0.1,0).STNumPoints(), @g.CurveToLineWithTolerance(0.01, 0).STNumPoints();

B.Bir LineString içeren bir geometrisiMultiLineString örneğinin yöntemini kullanarak

Aşağıdaki örnek ne dönen gösterir bir MultiLineStringyalnızca birini içeren örnek LineStringörneği:

DECLARE @g geography;

SET @g = geography::Parse('MULTILINESTRING((-122.358 47.653, -122.348 47.649))');

SELECT @g.CurveToLineWithTolerance(0.1,0).ToString();

C.Birden fazla LineStrings içeren bir geometrisiMultiLineString örneğinin yöntemini kullanarak

Aşağıdaki örnek ne dönen gösterir bir MultiLineStringiçeren birden çok örneğini LineStringörneği:

DECLARE @g geography;

SET @g = geography::Parse('MULTILINESTRING((-122.358 47.653, -122.348 47.649),(-123.358 47.653, -123.348 47.649))');

SELECT @g.CurveToLineWithTolerance(0.1,0).ToString();

D.Çağırma CurvePolygon örneği için true değerine göre ayarlama

Aşağıdaki örnek bir CurvePolygonaramak için örnek CurveToLineWithTolerance()ile relativetrue olarak ayarlayın:

DECLARE @g geography = 'CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658), (-122.348 47.658, -122.358 47.658, -122.358 47.653)))';

SELECT @g.CurveToLineWithTolerance(.5,1).ToString();

Ayrıca bkz.

Diğer Kaynaklar

Coğrafya örnekleri üzerinde Genişletilmiş yöntemleri