Saya punya proyek ArcMap 10 dengan beberapa grup layer. Satu layer adalah DEM raster, grup layer lain adalah sekelompok shapefile vektor (termasuk titik, garis, dan poligon). Klien ingin semua data vektor mengandung nilai Z.
Mengisi tabel atribut untuk data vektor dengan nilai X dan Y cukup mudah tetapi bagaimana cara mengisi nilai Z?
Apakah ada cara saya bisa menggunakan Field Calculator untuk "meraih" nilai ketinggian dari lapisan DEM untuk setiap fitur vektor?
Saya harus menambahkan bahwa kami tidak memiliki lisensi untuk ekstensi 3D Analyst atau Spatial Analyst.
arcgis-desktop
arcgis-10.0
field-calculator
dem
Brad Torr
sumber
sumber
Jawaban:
Di ArcGIS, saya hanya pernah melakukan ini dengan vektor titik — saya tidak yakin bagaimana Anda akan melakukannya dengan poligon atau fitur garis. Sayangnya Anda memang membutuhkan Spatial Analyst. Ada alat di Spatial Analyst Tools \ Extraction \ Extract Multi Values to Points dan Extract Values to Points . Ekstrak Multi Nilai ke Poin lebih baik karena memungkinkan Anda mengubah nama nama bidang z tempat Anda mengekstraksi nilai Anda — Ekstrak Nilai ke Poin tidak memungkinkan Anda melakukan ini. Saya mengalami kesulitan melakukan ini di ArcMap (alat crash), tetapi berfungsi dengan baik di ArcCatalog.
Ekstensi Hawths Analysis Tools (gratis) untuk ArcMap memiliki Intersect Point Tool tetapi pengembangan ekstensi dihentikan beberapa tahun yang lalu. Ini telah digantikan oleh Lingkungan Pemodelan Geospasial , yang saya tidak pernah gunakan.
SAGA-GIS (perangkat lunak mandiri gratis) memiliki dua fungsi di Shapes - Grid \ Tambahkan Nilai Grid ke Poin dan Bentuk - Grid \ Tambahkan Nilai Grid ke Bentuk yang mungkin dapat melakukan apa yang Anda inginkan. Ini adalah deskripsi alat Add Grid Values to Shapes:
SAGA adalah taruhan terbaik Anda, menurut saya.
Semoga ini membantu!
sumber
Saya belum mencoba ini untuk poligon tetapi berfungsi sangat baik untuk poin. Di Arcmap 10 jika Anda memiliki akses ke alat analis 3d, Anda dapat mencari Tool Interpolate Shape Kemudian Anda memilih file raster Anda dan layer vektor Anda menyesuaikan nilai z jika Anda ingin ketinggian kaki dan DEM Anda dalam meter dan biarkan berjalan . Setelah selesai Anda kemudian mencari alat ADD XY dan pilih layer yang baru dibuat dan kemudian akan menghitung nilai X, Y, Z Anda di tabel atribut layer tersebut.
sumber
mungkin Anda bisa menggunakan gdallocationinfo untuk mengembalikan semua nilai Z dengan meneruskannya nilai X, Y. setelah Anda memiliki nilai Z gunakan kalkulator feild untuk menambahkan nilai Z ke titik-titik yang membentuk setiap fitur. Akan ada beberapa skrip yang terlibat tetapi secara teori ini harus berhasil.
sumber
Bergantung pada unit Anda atau resolusi yang diperlukan, Anda selalu dapat mengekspor raster DEM ke bentuk poligon, langsung dari kotak peralatan, dan kemudian melakukan penggabungan spasial - ini paling mudah untuk poin. Jika Anda membutuhkan nilai Z untuk garis atau poligon, Anda jelas membutuhkan segmen atau subdivisi poligon yang ditentukan pada setiap perubahan ketinggian seperti yang dilaporkan oleh kisi DEM vektor. Itu dapat dilakukan melalui alat geoproses standar dan gabungan spasial, tetapi Anda harus memperhatikan persyaratan resolusi Anda dan jumlah pemrosesan yang akan dikonsumsi oleh dataset besar.
sumber
Saya sarankan untuk mendapatkan lisensi Analis 3D dan menggunakan Add Surface Information . Atau, gunakan Bentuk Interpolasi diikuti oleh Tambah Informasi Z, yang memungkinkan beberapa fitur untuk mengembalikan nilai-nilai NA tanpa merusak seluruh program. Kalau tidak, ada dua metode gratis terbukti yang membutuhkan lebih banyak kerja keras. Dimungkinkan untuk menerapkan ini dari dalam QGIS , sehingga Anda tidak harus meninggalkan lingkungan GIS yang nyaman.
sumber
Alat ESRI yang ingin Anda gunakan adalah "Tambahkan Informasi Z". Mungkin Anda bisa mendapatkan percobaan dan melihat apakah alat tersebut dapat digunakan lebih lanjut untuk Anda. Jika mendapatkan ekstensi 3D Analyst bukanlah suatu pilihan, satu-satunya hal yang terlintas dalam pikiran (selain solusi pemrograman) adalah mengeluarkan data Anda dari ESRI dan menggunakan salah satu opsi gratis seperti SAGA-GIS / qGIS "Tambah Grid mereka" Nilai untuk Bentuk "atau" Statistik Kotak untuk Poligon "tidak sefleksibel ESRI tetapi melakukan hal yang sama jika Anda mencari ketinggian rata-rata di sepanjang poligon / garis.
sumber
Saya tahu bagaimana melakukan ini untuk poin. Garis dan poligon berbeda karena melintasi beberapa sel kisi DEM. Anda bisa membuat poin di sepanjang garis atau sesuatu seperti itu dan mengekstrak nilai untuk itu. Di Arc, Anda membutuhkan analis spasial untuk mendapatkan nilai, tetapi Anda bisa mendapatkannya melalui Qgis (gratis), meskipun tidak berguna. Anda harus mahir bekerja dengan file excel dan mengonversinya bolak-balik dari shapefile. Qgis akan menghasilkan shapefile yang hanya memiliki elevasi titik yang diekstraksi, jadi Anda harus menyalin dan menempelkannya ke tabel asli Anda sebagai file excel (dengan nilai X, Y, sehingga Anda dapat membuatnya kembali ke shapefile dengan "tampilkan x, data y" ". Anda harus melacak proyeksi Anda untuk memastikan memilih yang benar ketika mengonversi kembali ke shapefile.
sumber