CurveToLineWithTolerance (Jenis Data geografi)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Mengembalikan perkiraan poligonal dari instans geografi yang berisi segmen busur melingkar.

Sintaksis

  
.CurveToLineWithTolerance( tolerance, relative )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

Toleransi
Adalah ekspresi ganda yang menentukan kesalahan maksimum antara segmen busur melingkar asli dan perkiraan liniernya.

Relatif
Adalah ekspresi bool yang menunjukkan apakah akan menggunakan maksimum relatif untuk penyimpangan. Jika relatif salah (0), maka maksimum absolut diatur untuk penyimpangan yang dapat dimiliki perkiraan linier. Ketika relatif benar (1), maka toleransi dihitung sebagai produk dari parameter toleransi dan diameter kotak pembatas untuk objek spasial.

Jenis Kembalian

Jenis pengembalian SQL Server: geografi

Jenis pengembalian CLR: SqlGeography

Pengecualian

Mengatur toleransi <= 0 melempar pengecualian ArgumentOutOfRange .

Keterangan

Metode ini memungkinkan jumlah toleransi kesalahan ditentukan untuk LineString yang dihasilkan.

Metode CurveToLineWithTolerance akan mengembalikan instans LineString untuk instans CircularString atau CompoundCurve dan instans Polygon untuk instans CurvePolygon .

Contoh

J. Menggunakan nilai toleransi yang berbeda pada instans CircularString

Contoh berikut menunjukkan bagaimana pengaturan toleransi memengaruhi instans yang CircularString dikembalikan dari instansLineString:

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. Menggunakan metode pada instans MultiLineString yang berisi satu LineString

Contoh berikut menunjukkan apa yang dikembalikan dari MultiLineString instans yang hanya berisi satu LineString instans:

DECLARE @g geography;  
SET @g = geography::Parse('MULTILINESTRING((-122.358 47.653, -122.348 47.649))');  
SELECT @g.CurveToLineWithTolerance(0.1,0).ToString();

C. Menggunakan metode pada instans MultiLineString yang berisi beberapa LineStrings

Contoh berikut menunjukkan apa yang dikembalikan dari MultiLineString instans yang berisi lebih dari satu LineString instans:

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. Pengaturan relatif terhadap true untuk instans CurvePolygon yang memanggil

Contoh berikut menggunakan instans CurvePolygon untuk memanggil CurveToLineWithTolerance() dengan relatif diatur ke true:

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();

Lihat Juga

Metode yang Diperluas pada Instans Geografi