วันศุกร์ที่ 4 เมษายน พ.ศ. 2557

การสร้างรูปแผนที่น้ำท่วม และนำไปวางซ้อนไว้บนแผนที่ Google Earth

ในบทความนี้จะแนะนำเทคนิคการสร้างแผนที่น้ำท่วมจากผลคำนวณ
เพื่อนำไปวางซ้อนและแสดงบนแผนที่ Google Earth

เบื้องต้น จะต้องมีโปรแกรม Google Earth ติดตั้งไว้ในเครื่องที่จะใช้งานก่อน
และจะต้องมีไฟล์ผลคำนวณจากโปรแกรม MIKE แบบ 2 มิติก่อน โดยจะมีนามสกุล dfs2
จากนั้นจะใช้โปรแกรม
"C:\Program Files (x86)\DHI\2012\bin\ExportDfs2GE.exe"
ซึ่งจะมาพร้อมการติดตั้งโปรแกรม MIKEbyDHI อยู่แล้ว
ในการแปลงผลคำนวณเป็นรูปภาพพร้อมสร้างไฟล์ KML สำหรับเปิดด้วยโปรแกรม Google Earth

ให้ทำการเตรียมไฟล์แผนที่น้ำท่วม พร้อมกับปรับแต่ง pallet ที่แสดงสีของระดับน้ำท่วม
ให้เรียบร้อยก่อน และจัดเก็บ pallet ที่ปรับแต่งเรียบร้อยแล้วเก็บไว้
โดยจะได้เป็นไฟล์นามสกุล pal
รูปด้านล่างเป็นตัวอย่างการปรับแต่งสีที่แสดงระดับน้ำท่วม โดยการเปิดไฟล์ผลคำนวณ
และเลือกเมนู View/Pallets ซึ่งจะมีให้เลือกสร้างใหม่ แก้ไข หรือจะจัดเก็บ

เมื่อเตรียมไฟล์พร้อมแล้ว ให้เปิดโปรแกรม ExportDfs2GE.exe โดยเปิดโปรแกรมได้ที่
Start/All Programs/MIKE by DHI 2012/MIKE Zero/Tools/MIKE to Google Earth
แล้วทำการเลือกไฟล์ผลคำนวณ dfs2 และปรับแต่งให้ใช้ pallet ที่เราจัดทำไว้
พร้อมทั้งเลือก folder ที่จะเก็บรูปภาพและไฟล์ KML

เราสามารถเซฟการตั้งค่าไว้โดยเก็บเป็นไฟล์นามสกุล mge
และสามารถสั่งให้โปรแกรม ExportDfs2GE.exe รันด้วย Batch file ได้เช่นกัน
เมื่อกรอกข้อมูลพร้อมแล้วให้กดปุ่ม Export images and create KML-file
โปรแกรมจะทำการสร้างรูปตามจำนวนที่เรากำหนด พร้อมกับสร้างไฟล์ KML

เมื่อสร้างไฟล์เสร็จแล้ว ตรวจสอบไฟล์ที่สร้างไว้ใน Folder ที่ตั้งค่าไว้

 ให้เปิดไฟล์ KML ด้วยโปรแกรม Google Earth 

จะพบว่า โปรแกรม Google Earth จะนำภาพที่สร้างไว้ทั้งหมด มาวางซ้อนไว้ในตำแหน่งที่ถูกต้อง
และเราสามารถ Play แผนที่น้ำท่วมนี้ หรือจะปรับแต่โปรแกรม ให้ซ้อนทับกับแผนที่อื่นๆได้ด้วย

และหากต้องการนำไฟล์ไปใช้งานกับแผนที่ Google Earth ที่เปิดผ่านหน้า web browser
ให้ทำการ save place as ไฟล์ออกไปเป็นนามสกุล KMZ 
โดยไฟล์ KMZ เป็นการเก็บเอาไฟล์รูปทั้งหมดและ KML เข้าไว้ด้วยกัน

เมื่อได้ไฟล์ KMZ แล้วให้นำไปฝากไว้กับ url ที่สามารถเข้าถึงได้โดยตรงจาก web browser
ในกรณีตัวอย่าง ได้ฝากไฟล์ไว้กับ Dropbox ซึ่งให้บริการฟรีแต่ต้องสมัครใช้บริการก่อน
โดยวางไว้ใน Public ซึ่งจะสามารถเปิดดูโดยใครก็ได้โดยไม่ต้อง login ก่อน
ทำให้เราสามารถเปิด หรือโหลดไฟล์นี้จาก link ที่กำหนดไว้ได้ทันที

หากใช้ Dropbox ในการฝากไฟล์ KMZ จะสามารถ Copy public link ได้ทันที
และเมื่อนำ link ที่ได้มา ไปเปิดใน maps.google.com
โดยการวาง link ในช่อง search ก็จะสามารถเปิดแสดงแผนที่ KMZ ซ้อนในแผนที่ได้ทันที

**********************************
และหากต้องการนำแผนที่ดังกล่าวไปเผยแพร่ต่อให้ผู้อื่น เราสามารถสร้าง html link ได้ง่ายๆ
โดยเริ่มต้นด้วย

https://maps.google.com/?q=

แล้วต่อท้ายด้วย link ของไฟล์ KMZ ดังตัวอย่างด้านล่าง

*************************************

อัพเดท นับจากวันที่ 1 กพ.  2558 เป็นต้นไป ทาง Google ได้ปิดระบบการเปิดแผนที่ kml/kmz

ผ่านการแชร์ไฟล์แบบด้านบนแล้วนะครับ ตามประกาศใน link ด้านล่างนี้

https://developers.google.com/maps/support/kmlmaps

โดย Google แจ้งว่าแผนที่ kml/kmz ที่แชร์ไว้จะเปิดผ่าน maps.google.com ไม่ได้แล้ว
นับตั้งแต่วันที่ 1 กพ.  2558 เป็นต้นไป

แต่ เขาให้ใช้แผนที่แบบนี้ได้ผ่าน My map ซึ่งก็คือต้องใช้ Google Account ของเราเองในการ
สร้างแผนที่ที่ใช้ไฟล์ Kml/Kmz ของเราขึ้นมาเอง เป็นแผนที่ใน My Map ของเราเอง
แล้วค่อย Share แผนที่ตัวที่สร้างไว้แล้วอีกที


และสำหรับไฟล์ mge ที่เป็นไฟล์ตั้งค่าการแปลงผลคำนวณเป็นแผนที่บน Google Earth นั้น
เราสามารถสั่งรันด้วย batch file ด้วยคำสั่งดังนี้

"C:\Program Files (x86)\DHI\2012\bin\ExportDfs2GE.exe" -export "C:\Project\Flood.mge"

โดยไฟล์ Flood.mge เป็นไฟล์ที่เราต้องตั้งค่าการสร้างแผนที่แบบ KML ไว้เรียบร้อยแล้ว