วิธีการแปลงข้อมูล OSM เป็น PostgreSQL เพื่อจุดประสงค์ในการกำหนดเส้นทาง


10

ฉันกำลังสร้างแอปพลิเคชั่นการกำหนดเส้นทางโดยใช้ OpenStreetMap ปัจจุบันงานของฉันคือการแปลงข้อมูลจากไฟล์ OSM เป็น PostgreSQL

ฉันอ่านเกี่ยวกับ osm2pgsql แต่ปัญหาคือมันบอกว่ามี osm2pgsql ไม่เหมาะสำหรับการกำหนดเส้นทาง ฉันอ่านเกี่ยวกับ Osmosis ด้วย แต่มีบางอย่างเกี่ยวกับพอร์ต rails ซึ่งฉันคิดว่าหมายความว่าฉันต้องเรียนรู้ Ruby ใน Rails ฉันพยายามศึกษา RoR ในอดีตและฉันพบว่ามันยากเกินไปสำหรับฉันที่จะเรียนรู้

ฉันกำลังใช้ PHP สำหรับแอปพลิเคชันของฉัน ฉันจะสามารถดึงข้อมูลจากไฟล์ OSM และส่งออกไปยัง PostgreSQL ของฉันได้อย่างไร ฉันรู้ว่าฉันอาจจะพลาดบางสิ่งบางอย่างที่นี่ แต่ฉันเป็นมือใหม่เมื่อพูดถึงการทำแผนที่แอปพลิเคชัน ฉันหวังว่าบางคนสามารถช่วยฉันได้ ขอบคุณ! : D

คำตอบ:


11

การกำหนดเส้นทางใน Postgres / PostGIS ถูกจัดการโดยไลบรารี pgRouting จาก http://pgrouting.org

ดูเหมือนว่าสคริปต์ได้ถูกเขียนขึ้นเพื่อจัดการ osm โดยตรงไปยัง pgRouting ที่ http://www.pgrouting.org/docs/tools/osm2pgrouting.html

คุณจะต้องติดตั้ง pgRouting ภายใน Postgres ก่อนเรียกใช้สคริปต์ osm2pgrouting


ลิงค์คือตอนนี้: pgrouting.org/docs/tools/osm2pgrouting.html
mattwigway

ขอขอบคุณได้แก้ไขคำตอบดั้งเดิมของฉันเพื่อสะท้อนการปรับปรุงนี้ ฉันหาตัวอย่างที่ทำงานไม่สมบูรณ์ดังนั้นฉันจึงได้ลบลิงค์นี้ออก
เคลโซ

3

และให้ความสนใจกับ osm2po ( http://osm2po.de ) - มันสามารถสร้างสคริปต์ sql ที่เข้ากันได้กับ pgRouting และในบางกรณีมันใช้งานได้ง่ายกว่า osm2pgrouting (เช่นบนแพลตฟอร์ม MS Windows เนื่องจาก osm2po เขียนด้วยภาษาจาวา)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.