Topik ini menjelaskan fungsi ST_AsText, yang mengonversi grid geografis menjadi teks berdasarkan spesifikasi pengkodean tertentu.
Sintaksis
text ST_AsText(geomgrid grid
integer presisi default -1,
bool terpisah default false,
text standar default 'GGER')
text[] ST_AsText(geomgrid[] grid
integer presisi default -1,
bool terpisah default false,
text standar default 'GGER')
text ST_AsText(h3grid grid)Parameter
Parameter | Deskripsi |
grid | Objek grid geografis yang ingin Anda peroleh. Tipe datanya adalah GeomGrid atau H3Grid. |
presisi | Tingkat presisi. Nilai valid: 1 hingga 32. Nilai -1 menunjukkan bahwa tingkat presisi dari grid geografis digunakan. |
terpisah | Menentukan apakah menggunakan pengkodean terpisah. Parameter ini cocok untuk 3D GeoSpatial Grid Encoding Rule (GGER). |
standar | Standar spesifikasi: GGER. Dikembangkan oleh Kementerian Sumber Daya Alam Republik Rakyat Tiongkok. Nilai default: GGER. |
Deskripsi
Fungsi ini mengonversi grid geografis menjadi teks berdasarkan lapisan, presisi, dan spesifikasi pengkodean yang ditentukan. Jika presisi yang diberikan lebih tinggi daripada presisi penyimpanan grid geografis, sistem tidak akan menambahkan nol pada keluaran. Dalam pengkodean terpisah, pengkodean ketinggian menunjukkan bahwa grid dikodekan sebagai nilai indeks biner untuk dimensi ketinggian. Jika grid berada di atas permukaan, pengkodean ketinggian dimulai dengan tanda tambah (+). Jika grid berada di bawah permukaan, pengkodean ketinggian dimulai dengan tanda minus (-).
Contoh
-- Gunakan lapisan default.
WITH g AS (
select unnest(ST_AsGrid(
ST_geomfromtext('POINT(116.31522216796875 39.910277777777778)',4490), 15)) as grid)
select ST_AsText(grid) from g;
st_astext
------------------
G001310322230230
-- Tentukan lapisan keluaran.
WITH g AS (
SELECT unnest(ST_AsGrid(
ST_geomfromtext('POINT(116.31522216796875 39.910277777777778)',4490), 15)) as grid)
SELECT ST_AsText(grid, 8) from g;
st_astext
-------------
G00131032
-- Pengkodean 3D
SELECT unnest(ST_AsText(ST_As3DGrid('srid=4490;POINT(116.31522216796875 39.910277777777778 1001.8)'::geometry,
20)));
unnest
------------------------
GZ00262064446046072072
-- Pengkodean terpisah digunakan.
SELECT unnest(ST_AsText(ST_As3DGrid('srid=4490;POINT(116.31522216796875 39.910277777777778 1001.8)'::geometry,
20), -1, true));
unnest
-------------------------------
G00131032223023031031, +10010
-- Pengkodean H3
SELECT ST_AsText(ST_H3FromLatLng(20.5,128.2,8));
st_astext
-----------------
884a126689fffff