Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Database SQL di Microsoft Fabric
Mengembalikan kurva yang ditentukan dari instans geometri yang merupakan LineString, CircularString, CompoundCurve, atau MultiLineString.
Syntax
.STCurveN ( curve_index )
Arguments
curve_index
Adalah ekspresi int antara 1 dan jumlah kurva dalam instans geometri.
Jenis Kembalian
Jenis pengembalian SQL Server: geometri
Jenis pengembalian CLR: SqlGeometry
Exceptions
Jika curve_index< 1 maka akan ArgumentOutOfRangeException dilemparkan.
Remarks
NULL dikembalikan ketika salah satu hal berikut ini terjadi:
instans geometri dideklarasikan, tetapi tidak dibuat instans
instans geometri kosong
curve_index melebihi jumlah kurva dalam instans geometri
instans geometri adalah Point, MultiPoint, Polygon, CurvePolygon, atau MultiPolygon
Examples
A. Menggunakan STCurveN() pada instans CircularString
Contoh berikut mengembalikan kurva kedua dalam instans CircularString :
DECLARE @g geometry = 'CIRCULARSTRING(0 0, 1 2.1082, 3 6.3246, 0 7, -3 6.3246, -1 2.1082, 0 0)';
SELECT @g.STCurveN(2).ToString();
Contoh sebelumnya dalam topik ini mengembalikan:
CIRCULARSTRING (3 6.3246, 0 7, -3 6.3246)
B. Menggunakan STCurveN() pada instans CompoundCurve dengan satu instans CircularString
Contoh berikut mengembalikan kurva kedua dalam instans CompoundCurve :
DECLARE @g geometry = 'COMPOUNDCURVE(CIRCULARSTRING(0 0, 1 2.1082, 3 6.3246, 0 7, -3 6.3246, -1 2.1082, 0 0))';
SELECT @g.STCurveN(2).ToString();
Contoh sebelumnya dalam topik ini mengembalikan:
CIRCULARSTRING (3 6.3246, 0 7, -3 6.3246)
C. Menggunakan STCurveN() pada instans CompoundCurve dengan tiga instans CircularString
Contoh berikut menggunakan instans CompoundCurve yang menggabungkan tiga instans terpisah CircularString ke dalam urutan kurva yang sama dengan contoh sebelumnya:
DECLARE @g geometry = 'COMPOUNDCURVE (CIRCULARSTRING (0 0, 1 2.1082, 3 6.3246), CIRCULARSTRING(3 6.3246, 0 7, -3 6.3246), CIRCULARSTRING(-3 6.3246, -1 2.1082, 0 0))';
SELECT @g.STCurveN(2).ToString();
Contoh sebelumnya dalam topik ini mengembalikan:
CIRCULARSTRING (3 6.3246, 0 7, -3 6.3246)
Perhatikan bahwa hasilnya sama untuk tiga contoh sebelumnya. Format WKT (Teks Terkenal) mana pun yang digunakan untuk memasukkan urutan kurva yang sama, hasil yang dikembalikan oleh STCurveN() sama ketika CompoundCurve instans digunakan.
D. Memvalidasi parameter sebelum memanggil STCurveN()
Contoh berikut menunjukkan cara memastikan @n valid sebelum Anda memanggil STCurveN()metode :
DECLARE @g geometry;
DECLARE @n int;
SET @n = 3;
SET @g = geometry::Parse('CIRCULARSTRING(0 0, 1 2.1082, 3 6.3246, 0 7, -3 6.3246, -1 2.1082, 0 0)');
IF @n >= 1 AND @n <= @g.STNumCurves()
BEGIN
SELECT @g.STCurveN(@n).ToString();
END
Lihat Juga
STNumCurves (Jenis Data geometri)
Metode OGC pada Instans Geometri