Bagaimana Anda menghasilkan bayangan bangunan dari membangun jejak kaki?
Saya memiliki nilai atribut untuk ketinggian bangunan.
Jadi sebaiknya ingin memiliki ukuran bayangan bervariasi berdasarkan itu.
Saran terbaik yang saya temukan menggunakan ArcGIS adalah drop shadow: http://blogs.esri.com/Support/blogs/mappingcenter/archive/2008/10/21/3d-effect-for-a-building-footprints.aspx
arcgis-desktop
arcmap
polygon-creation
shadow
EightyTwenty
sumber
sumber
Jawaban:
Metode yang cepat dan kotor adalah menggambar bayangan atap bangunan saja, menjadikannya abu-abu gelap (lebih disukai semi-transparan jika ada lapisan tanah di bawahnya), dan menggambar poligon bangunan di atasnya. Bayangan atap diperoleh dengan menerjemahkan poligon bangunan dengan jarak yang ditentukan oleh ketinggian bangunan ke arah yang ditentukan oleh azimuth dan ketinggian sumber cahaya (dianggap jauh jauh). (Formula untuk jumlah terjemahan muncul di bawah ini.)
Ini cenderung berfungsi baik kecuali untuk ketinggian rendah atau gedung tinggi (seperti gedung pencakar langit): lihat bagaimana bayangan bangunan terisolasi yang lebih tinggi di sisi kanan dipisahkan dari bangunan itu sendiri.
Untuk menghubungkan bayangan dengan benar ke bangunan, Anda harus menyertakan bayangan dinding bangunan . Ini tidak sulit dilakukan. Bayangan dinding yang memanjang antara titik yang terletak di P dan titik lain yang terletak di Q akan menjadi segiempat yang diuraikan oleh {P, Q, Q ', P'} di mana Q 'adalah bayangan Q dan P' adalah bayangan dari P. Bangunan poligonal akan berupa kumpulan poligon terhubung yang diwakili oleh urutan titik tertutup (P (1), P (2), ..., P (n)). Untuk setiap poligon tersebut, bentuk gabungan bayangan tepi (P (1), P (2)), (P (2), P (3)), ..., (P (n), P ( 1)). Ini mudah dilakukan dengan cara loop di tepi.
Untuk lampu pada azimut suatu derajat (timur dari utara) dan ketinggian s derajat (dari cakrawala), bayangan titik P dengan koordinat proyeksi (x, y) dan tinggi h (semua dinyatakan dalam satuan yang sama , seperti meter) terletak di P '= (x - h sin (a) / tan (s), y - h cos (a) / tan (s)). Anda hanya perlu menghitung sin (a) / tan (s) dan cos (a) / tan (s) satu kali untuk seluruh lapisan, dan untuk setiap poligon Anda hanya perlu mengalikan faktor-faktor tersebut dengan tinggi satu kali untuk mendapatkan offset untuk setiap titik bayangan di poligon. (Beban kerja komputasi yang sebenarnya dipikul oleh GIS, bukan kode Anda, karena membentuk serikat pekerja dari semua segiempat ini.)
Berikut ini contoh efeknya. (Azimuth dan ketinggian telah berubah sedikit dibandingkan dengan gambar pertama, tetapi poligon dan ketinggian bangunan - yang bervariasi - sama dengan sebelumnya.)
Lampiran
Menanggapi permintaan, inilah kode yang digunakan untuk membuat contoh kedua. Meskipun hampir tidak ada yang menggunakan bahasa ini (Avenue) lagi, itu bisa berfungsi sebagai pseudocode untuk menciptakan solusi dalam GIS favorit Anda. (Tidak seperti kebanyakan pseudocode, bagaimanapun, ia telah diuji dengan benar-benar menjalankannya. :-) Ini sangat sederhana sehingga tidak ada penjelasan yang diperlukan; perlu diketahui bahwa pengindeksan dimulai dengan 0, bukan 1, dan bahwa cincin poligon secara eksplisit ditutup (titik terakhir dalam daftar bertepatan dengan titik pertama).
sumber
Saya tidak berpikir apa yang Anda bicarakan (mencari) akan menjadi kapabilitas di arcmap (versi?)
Lihat pertanyaan ini untuk kemungkinan batasan yang tidak Anda inginkan.
Memanfaatkan ekstensi Analyst 3d dan arcscene Anda dapat menambahkan cahaya tetapi masih ada beberapa keterbatasan.
Ada beberapa gerakan esri tentang masalah ini dengan cityengine .
Gulir ke bawah ke bagian akurasi bayangan.
Saya sebelumnya telah dikaitkan dengan lightscape (yang telah pensiun dan saya yakin tinggal di dalam 3dsmax).
Sekarang jalan mungkin akan melalui lini produk visualisasi teknik ...
3ds Max
sumber
Ekstensi 3D Analyst memiliki beberapa alat ( Skyline dan Skyline Barrier ) untuk menghasilkan siluet dan volume bayangan tetapi itu dalam konteks diproyeksikan terhadap bidang vertikal seperti pada skyline, jadi saya tidak yakin bagaimana atau apakah itu dapat dengan mudah disesuaikan. untuk kasus ini (memproyeksikan terhadap bidang horizontal, tanah).
sumber