ST_ MakePolygon - Amazon Redshift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

ST_ MakePolygon

ST_ MakePolygon memiliki dua varian yang mengembalikan poligon. Satu mengambil geometri tunggal, dan yang lain mengambil dua geometri.

  • Input dari varian pertama adalah linestring yang mendefinisikan cincin luar dari poligon keluaran.

  • Masukan dari varian kedua adalah linestring dan multilinestring. Keduanya kosong atau tertutup.

    Batas cincin eksterior poligon keluaran adalah linestring input, dan batas-batas cincin interior poligon adalah garis garis dalam input multilinestring. Jika linestring input kosong, poligon kosong dikembalikan. Garis kosong di multilinestring diabaikan. Pengidentifikasi sistem referensi spasial (SRID) dari geometri yang dihasilkan adalah SRID umum dari dua geometri input.

Dimensi geometri yang dikembalikan sama dengan geometri input. Cincin eksterior dan cincin interior harus memiliki dimensi yang sama.

Sintaks

ST_MakePolygon(geom1)
ST_MakePolygon(geom1, geom2)

Argumen

geom1

Nilai tipe data GEOMETRY atau ekspresi yang mengevaluasi GEOMETRY tipe. Subtipe harus. LINESTRING Nilai linestring harus ditutup atau kosong.

geom2

Nilai tipe data GEOMETRY atau ekspresi yang mengevaluasi GEOMETRY tipe. Subtipe harus. MULTILINESTRING

Jenis pengembalian

GEOMETRYdari subtipePOLYGON.

Pengidentifikasi sistem referensi spasial (SRID) dari geometri yang dikembalikan sama dengan SRID input.

Jika geom1, atau geom2 adalah null, maka null dikembalikan.

Jika geom1 bukan linestring, maka kesalahan dikembalikan.

Jika geom2 bukan multilinestring, maka kesalahan dikembalikan.

Jika geom1 tidak ditutup, maka kesalahan dikembalikan.

Jika geom1 adalah satu titik atau tidak ditutup, maka kesalahan dikembalikan.

Jika geom2 berisi setidaknya satu linestring yang memiliki satu titik atau tidak ditutup, maka kesalahan dikembalikan.

Jika geom1 dan geom2 memiliki nilai SRID yang berbeda, maka kesalahan dikembalikan.

Jika geom1 dan geom2 memiliki dimensi yang berbeda, maka kesalahan dikembalikan.

Contoh

SQL berikut mengembalikan poligon dari linestring input.

SELECT ST_AsText(ST_MakePolygon(ST_GeomFromText('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)')));
st_astext --------------- POLYGON((77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07))

SQL berikut menciptakan poligon dari linestring tertutup dan multilinestring tertutup. Tali garis digunakan untuk cincin eksterior poligon. Garis garis dalam multilinestrings digunakan untuk cincin interior poligon.

SELECT ST_AsEWKT(ST_MakePolygon(ST_GeomFromText('LINESTRING(0 0,10 0,10 10,0 10,0 0)'), ST_GeomFromText('MULTILINESTRING((1 1,1 2,2 1,1 1),(3 3,3 4,4 3,3 3))')));
st_astext ---------------------------------- POLYGON((0 0,10 0,10 10,0 10,0 0),(1 1,1 2,2 1,1 1),(3 3,3 4,4 3,3 3))