สร้าง Vector Tiles สำหรับ Polymaps


14

โอเคน่าจะไม่ดีที่จะไม่ส่งไปที่ WhereCamp5280 และถามผู้ใช้ FortiusOne โดยตรง แต่กระบวนการในการสร้างแผ่นกระเบื้องGeoJSONเพื่อใช้ใน Polymaps คืออะไร

ตัวอย่างประชากรที่ polymaps.orgตั้งข้อสังเกตว่าข้อมูลสำหรับการสาธิตทำงานบน Google AppEngine และ alludes เพื่อ "กลิ้งตัวคุณเอง" ไทล์เวกเตอร์ แต่ฉันไม่สามารถหาข้อมูลเพิ่มเติม ...

ใครมีข้อมูลเชิงลึกที่พวกเขาสามารถแบ่งปันได้บ้าง

ขอบคุณ!

คำตอบ:


12

TileStache แน่นอนจะทำมันโดยเฉพาะผู้ให้บริการ PostGeoJSONในคอลเลกชันพิเศษผู้ให้บริการ ความแตกต่างที่สำคัญระหว่างสิ่งนี้กับสิ่งที่เราทำสำหรับตัวอย่าง Polymaps คือการตัดรูปหลายเหลี่ยม - หลังจากเห็นว่าอลาสก้าขนาดใหญ่สามารถรับระดับการซูมที่สูงขึ้นได้เราได้ตัดคุณลักษณะทั้งหมดในตัวอย่าง Polymaps เพื่อลดเวลาในการโหลดเป็นต้น นอกจากนี้เรายังโฮสต์พวกเขาออกจาก AppSpot เพื่อให้สามารถเพิ่มส่วนหัว Access-Control-Allow-Originสำหรับการอนุญาตข้ามโดเมน

PostGeoJSON ไม่ได้ตัดออกจากกล่อง แต่อย่างที่บอกไว้ในเอกสารฉันยินดีที่จะพัฒนารหัสต่อไปหากมีความสนใจ!

ปรับปรุง:มันจะปรากฏว่าเป็นของ Tilestache 1.9.0 ผู้ให้บริการเวกเตอร์ที่ดูเหมือนจะได้รับการสนับสนุนมากกว่าผู้ให้บริการ PostGeoJSON


2
ดูความคิดเห็นด้านล่าง: ฉันได้อัปเดตผู้ให้บริการ PostGeoJSON ให้เป็นมิตรกับ polymaps มากขึ้นtilestache.org/doc/…
Michal Migurski

4

ฉันสงสัยเกี่ยวกับเรื่องนี้อย่างแน่นอนเพราะมันเป็นสิ่งที่ฉันต้องการใช้ใน Tile5 (http://tile5.org/) ด้วย ฉันเคยเห็น Mike Bostock (ผู้ที่ทำงานร่วมกับ Stamen เพื่อผลิต Polymaps) ตอบกลับทาง Twitter ในหัวข้อก่อนหน้าและนี่คือลิงค์:

http://twitter.com/#!/mbostock/status/27659816563

ต้องการแก้ปัญหาแบบสแตนด์อโลนที่ดีแน่นอน สองผลิตภัณฑ์ที่มีลักษณะเหมือนขั้นตอนในทิศทางที่ถูกต้องคือ:

  • Tilestache (http://tilestache.org/)
  • Geocouch (https://github.com/vmx/couchdb)

จะดูคำถามนี้ด้วยความสนใจ

ไชโย

เดมอน


เห็นได้ชัดว่าฉันสามารถแสดงความคิดเห็นได้เฉพาะคำตอบของตัวเอง: /
Damon Oehlman

@Michal - ชอบที่จะเห็นการตัดเพิ่มใน TileStache - ความเป็นไปได้ที่จะมีการจัดการพารามิเตอร์โทรกลับเช่นกัน? ฉันรู้ว่า JSONP ไม่ใช่รสนิยมของทุกคน แต่ฉันคิดว่ามันจะมีประโยชน์มากที่นี่ ...
Damon Oehlman

ฉันสามารถเพิ่มการตัดลงใน TileStache ได้อย่างแน่นอน - จะใส่ไว้ในรายการ! ไม่แน่ใจเกี่ยวกับการโทรกลับส่วนใหญ่เป็นเพราะผลลัพธ์ที่คาดว่าจะสามารถแคชได้อย่างสมบูรณ์และการเรียกกลับไม่ได้ บางทีฉันอาจจะทำให้พิเศษยกเว้น JSON เพราะเช่นความจำเป็นที่พบบ่อย ...
คาล Migurski

จุดที่ดีกำลังแคชที่ด้านหน้า JSONP JSONP ควรจะยังคงสามารถแคชได้ค่อนข้างกำหนดให้โทรกลับในแผนที่ URL โดยตรงกับฟังก์ชั่น wrapper ในการส่งออก มันจะทำให้เกิดการขยายตัวแคชแน่นอนซึ่งจะเป็นความเจ็บปวด ฉันคิดว่าฉันอาจแยกบน Github และมีการเล่น (เวลาเอื้ออำนวย) :)
เดมอน Oehlman

โอเคฉันเพิ่มการตัดเป็นตัวเลือกใน TileStache: tilestache.org/doc/…
Michal Migurski

2

คุณสามารถใช้ ogr2ogr เพื่อสร้างไฟล์ GeoJSON แบบคงที่เพื่อให้บริการแต่ปรากฏว่าในขณะนั้นคุณต้องเขียนบริการเว็บของคุณเองหากคุณต้องการเปิดใช้งานการตัดหรือฟังก์ชั่น URL แบบไดนามิกอื่น ๆ (ระดับการซูม ฯลฯ ) และฉันไม่รู้เครื่องมือเรียงต่อกันใด ๆ ที่จะสร้างไทล์แคชของชุดข้อมูล แต่อีกครั้งที่สามารถทำได้อย่างง่ายดายด้วยกระบวนการแบทช์และ-clip*ตัวเลือกต่างๆของ ogr2ogr แม้ว่าข้อมูลเวกเตอร์ดูเหมือนจะไม่สมเหตุสมผลเพราะมันตัดรูปหลายเหลี่ยมเป็นชิ้น ๆ ต่อแผ่นเมื่อซ้อนทับกันคุณอาจจะดีกว่าด้วยการค้นหาช่องว่าง


2

Dave - ดูเหมือนว่าจะมีช่องว่างให้เติมที่นี่ เครื่องตัดกระเบื้อง json แบบสแตนด์อโลนที่ดีจะยอดเยี่ยมมาก (& ดีสำหรับผู้ที่ไม่ได้ใช้ tilestache) ตรวจสอบโมดูลหลาม Bloch (ผ่าน M. Migurski): https://github.com/migurski/Bloch (คิด mapshaper.org ในบรรทัดคำสั่ง & python)

เจสันชี้ให้เห็นว่ากระบวนการเรียงลำดับข้อมูลค่อนข้างตรงไปตรงมาและสามารถทำให้สำเร็จได้อย่างรวดเร็วโดยใช้บางสิ่งบางอย่างเช่น gdal2tiles เป็นจุดเริ่มต้นและแปรเปลี่ยนไปสู่โลกเวกเตอร์

คริส

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