$30 off During Our Annual Pro Sale. View details »

マピオン、ベクタータイルはじめました〜京都編〜

One compath
October 15, 2017

 マピオン、ベクタータイルはじめました〜京都編〜

FOSS4G 2017 KYOTO.KANSAI の発表資料です。

One compath

October 15, 2017
Tweet

More Decks by One compath

Other Decks in Technology

Transcript

  1. マピオン ベクタータイル はじめました 株式会社マピオン 清水珠里 FOSS4G 2017 KYOTO.KANSAI

  2. ਗ਼ਫचཬʢ͠Έͣ͡ΎΓʣ ৽ଔͰ๭ෆಈ࢈ձࣾʹೖࣾ ɹ→͍Ζ͍Ζ͋ͬͯ̍೥Ͱୀ৬ ๭SIerʹస৬ ɹ→͍Ζ͍Ζ͋ͬͯ̔೥Ͱୀ৬ גࣜձࣾϚϐΦϯೖࣾ̐೥໨ ओʹ஍ਤλΠϧͷੜ੒ͱ഑৴Λ୲౰ ࣗݾ঺հ

  3. マピオンとは

  4. 1996೥ʹ೔ຊॳͷ஍ਤΠϯλʔωοταʔϏεΛ։࢝

  5. ໊শɹɹɹ ɿ גࣜձࣾϚϐΦϯ ઃཱɹɹɹ ɿ 1997೥ 1݄ 20೔ ࢿຊۚɹɹ ɿ

    6ԯԁ ैۀһ਺ ɿ 97໊ʢ2017೥6݄ݱࡏʣ גओɹɹɹ ɿ ತ൛ҹ࡮ ʢ100%ʣ εϩʔΨϯ ɿʮίίϩ΋ɺΧϥμ΋ɺಈ͔͢ϚϐΦϯʯ ࢀՃஂମ ɿOSGeoࡒஂ೔ຊࢧ෦ ๏ਓձһ Ԋֵ 20प೥Λܴ͑·ͨ͠ʂ
  6. ࣄۀ಺༰

  7. マピオン ベクタータイル はじめてました

  8. 2016/10 ϥϘαΠτʹͯ ϚϐΦϯϕΫλʔެ։

  9. า͚ͩ͘ͰϓϨθϯτ͕΋ Β͑ΔɺҰาઌߦ͘΢Υʔ ΩϯάΞϓϦ 2016/11 aruku&ʢ͋Δ͘ͱʣϦϦʔε

  10. ܙํרΛ৯΂Δํ͕֯෼͔ Δɺ೥ʹҰ౓஫໨͞ΕΔΞ ϓϦ 2017/1 ܙํϚϐΦϯ(iOS൛)ͷ஍ਤΛ ϥελʔ͔ΒϕΫλʔʹมߋ

  11. 2017/9 ϥϘαΠτʹOSM௥Ճ

  12. ベクタータイルを 描画するしくみ

  13. ϕΫλʔλΠϧ εϓϥΠτ ϑΝΠϧ ϑΥϯτ ϑΝΠϧ ελΠϧ ϑΝΠϧ ϕΫλʔλΠϧʹ͸఺ɾઢɾ໘ͷ஍෺ͷσʔλͱ ଐੑ৘ใ͕ೖ͍ͬͯΔ͚ͩͳͷͰɺ஍෺͝ͱͷද ࣔͷ༗ແɺσβΠϯɺϑΥϯτɺΞΠίϯͳͲ͸

    ελΠϧϑΝΠϧͰઃఆ͢Δ ϨϯμϦϯά
  14. ݱࡏͷϚϐΦϯͷߏ੒ ϕΫλʔλΠϧ Mapbox Vector Tile ϨϯμϦϯά Mapbox GL Native ελΠϧϑΝΠϧ

    Mapbox Style
  15. ɾϕΫλʔ஍ਤΛෳ਺ͷϓϥοτϑΥʔϜ্ ͷωΠςΟϒΞϓϦέʔγϣϯʹຒΊࠐΉͨ ΊͷϥΠϒϥϦ ɹJS൛ɺUnity൛΋ผ్༻ҙ͞Ε͍ͯΔ ɾΦʔϓϯιʔεɺBSDϥΠηϯε ɾ։ൃ͕͔͞ΜͰɺͲΜͲΜόʔδϣϯΞο ϓ͞Ε͍ͯΔʢલόʔδϣϯͱޓ׵ੑ͕ͳ͍ ͜ͱ΋ଟ͍ͨΊɺ஫ҙ͕ඞཁʣ .BQCPY(-/BUJWFͱ͸

  16. ɾMapboxͷ஍ਤΛදࣔͤ͞Δʹ͸ΞΫηε τʔΫϯͷൃߦ͕ඞཁ ɹαʔυύʔςΟ੡ͷ஍ਤΛදࣔ͢Δ৔߹͸ ΞΫηετʔΫϯෆཁ ϚϐΦϯͰ͸ΧελϚΠζΛߦ͍ɺ ΞΫηετʔΫϯʹରԠ͍ͯ͠Δ .BQCPY(-/BUJWFͱ͸

  17. Mapbox GL で 地図を描画するために 必要なもの

  18. ɾϕΫλʔλΠϧ ɹʢMapbox Vector Tileʣ ɾελΠϧϑΝΠϧ ɹʢMapbox Styleʣ ɾεϓϥΠτϑΝΠϧ ɾϑΥϯτϑΝΠϧ

  19. ɾϕΫλʔλΠϧ ɹʢMapbox Vector Tileʣ ɾελΠϧϑΝΠϧ ɹʢMapbox Styleʣ ɾεϓϥΠτϑΝΠϧ ɾϑΥϯτϑΝΠϧ

  20. ϕΫλʔλΠϧ ʢMapbox Vector Tileʣ ɾMapbox͕ఆΊͨϕΫλʔλΠϧͷΦʔϓ ϯͳ࢓༷ ɾProtocol Buffers ܗࣜ ɾGeometryͷ૬ର࠲ඪΛΤϯίʔυͨ͠΋

    ͷͱଐੑ৘ใͷू·Γ
  21. sample MBZFST\ OBNFYYYY GFBUVSFT\ UBHT UBHT UZQF10-:(0/ HFPNFUSZ HFPNFUSZ ʜ

    ^ LFZTDPEF WBMVFT\ JOU@WBMVF ^ WFSTJPO ^ ʜ Geometryͷ ૬ର࠲ඪ ଐੑ৘ใ
  22. ɾϕΫλʔλΠϧ ɹʢMapbox Vector Tileʣ ɾελΠϧϑΝΠϧ ɹʢMapbox Styleʣ ɾεϓϥΠτϑΝΠϧ ɾϑΥϯτϑΝΠϧ

  23. ελΠϧϑΝΠϧ ʢMapbox Styleʣ ɾ஍ਤͷσβΠϯΛܾΊΔϑΝΠϧ ɾjsonܗࣜ ɾϚϐΦϯͰ͸ MVT Styler Λ࢖ͬͯɺ࡞੒/ ฤूΛߦ͍ͬͯΔ

  24. ʜ MBZFST<  \   JETBNQMF   

    UZQFpMM    TPVSDFTBNQMF    TPVSDFMBZFSTBNQMF    pMUFS<         DPEF        >    QBJOU\    pMMDPMPSCF   ^  ^  >  ʜ sample
  25. ׬શGUIͷϕΫλʔλΠϧελΠϧΤσΟλ MVT Styler

  26. MVT Styler ɾϦΞϧλΠϜͰσβΠϯͷมߋ ͕֬ೝͰ͖Δ ɾγϯϓϧͳػೳͰɺ௚ײతʹૢ ࡞Ͱ͖Δ ɾ஍ਤ্ͰϨΠϠʔΛ֬ೝͰ͖Δ ͷͰศར ɾϚϐΦϯͰ͸ΧελϚΠζͯ͠ɺ ϑΝΠϧग़ྗ

    / ը૾ग़ྗͳͲͷػ ೳΛ௥Ճ͍ͯ͠Δ
  27. MVT Styler Maputnik

  28. ɾϕΫλʔλΠϧ ɹʢMapbox Vector Tileʣ ɾελΠϧϑΝΠϧ ɹʢMapbox Styleʣ ɾεϓϥΠτϑΝΠϧ ɾϑΥϯτϑΝΠϧ

  29. εϓϥΠτϑΝΠϧ ɾ஍ਤ্ͷΞΠίϯΛ·ͱΊͨεϓϥΠτϑΝΠϧ ɾpngϑΝΠϧͱjsonϑΝΠϧͰߏ੒͞ΕΔ ɾMVT Styler Ͱ࡞੒Ͱ͖Δ

  30. \lTBNQMFTWH\XJEUI IFJHIU  Y Z QJYFM3BUJP^  lTBNQMFTWH\XJEUI IFJHIU 

    Y Z QJYFM3BUJP^  ʜ KTPO QOH sample
  31. ɾϕΫλʔλΠϧ ɹʢMapbox Vector Tileʣ ɾελΠϧϑΝΠϧ ɹʢMapbox Styleʣ ɾεϓϥΠτϑΝΠϧ ɾϑΥϯτϑΝΠϧ

  32. ϑΥϯτϑΝΠϧ ɾϑΥϯτϑΝΠϧʢttfͳͲʣ͔ΒglyphΛ 256୯ҐͰ෼ׂͯͦ͠ΕΛpbfԽͨ͠΋ͷ ɹttfϑΝΠϧ ɹ→ 0-255.pbf, 256-511.pbf ... 256ݸ ɾMVT

    Styler Ͱ࡞੒Ͱ͖Δ
  33. マピオンの ベクタータイルの 生成/配信のしくみ

  34. ϨϯμϦϯά ɹ஍ਤσβΠϯ λΠϧੜ੒ σʔλ ४උ ϑΝΠϧ ετϨʔδ 4IBQF pMF %#

    1PTUHSFT  1PTU(*4 ετϨʔδ ΫϥΠΞϯτ ੜ੒༻ αʔό ϕΫλʔλΠϧ ʢQCG .75 4UZMFS εϓϥΠτ ϑΝΠϧ ʢQOH KTPO ϑΥϯτ ϑΝΠϧ ʢQCG ελΠϧ ϑΝΠϧ ʢKTPO ४උɾੜ੒ ໿24࣌ؒ
  35. σʔλ ४උ ϑΝΠϧ ετϨʔδ ݱࡏɺϚϐΦϯͰରԠ͍ͯ͠Δ ஍ਤσʔλ ɹɾθϯϦϯ ɹɾOSM ɹɾNatural Earth

    ɹɾࠃ౔਺஋৘ใͷ ɹɹ௡೾ਁਫ૝ఆσʔλ ɹɹਓޱूத஍۠σʔλ 4IBQF pMF %# 1PTUHSFT  1PTU(*4
  36. ϨϯμϦϯά ɹ஍ਤσβΠϯ λΠϧੜ੒ σʔλ ४උ ϑΝΠϧ ετϨʔδ 4IBQF pMF %#

    1PTUHSFT  1PTU(*4 ετϨʔδ ΫϥΠΞϯτ ੜ੒༻ αʔό ϕΫλʔλΠϧ ʢQCG .75 4UZMFS εϓϥΠτ ϑΝΠϧ ʢQOH KTPO ϑΥϯτ ϑΝΠϧ ʢQCG ελΠϧ ϑΝΠϧ ʢKTPO
  37. ετϨʔδ ɾPostGIS 2.4.0͔Β௥Ճ͞ΕͨST_ASMVTͱ ͍͏ؔ਺ͰλΠϧ৘ใ͕औಘͰ͖Δ ɹRDS͕PostGIS 2.4.0ʹରԠ͍ͯ͠ͳ͍ͨΊɺ ϚϐΦϯͰ͸SQLΛΨϦΨϦॻ͍͍ͯ·͢… λΠϧੜ੒ %# 1PTUHSFT

     1PTU(*4 ੜ੒༻ αʔό ϕΫλʔλΠϧ ʢQCG
  38. ετϨʔδ ɾϑΝΠϧʹग़ྗͤͣɺDB͔Β௚઀ϦΞϧλ ΠϜͰλΠϧΛ഑৴͢Δ͜ͱ΋Ͱ͖Δ ύϑΥʔϚϯε͕ѱ͘ͳͬͯ͠·͏ՄೳੑΞϦ λΠϧੜ੒ %# 1PTUHSFT  1PTU(*4 ੜ੒༻

    αʔό ϕΫλʔλΠϧ ʢQCG
  39. ϥϘαΠτ BSVLV ಉ͡ϕΫλʔλΠϧΛ ࢖͍ͬͯΔ

  40. ϚϐΦϯͷʮඒ͍͠ʯʮ໎Θͳ͍ʯ஍ਤ ελΠϧϑΝΠϧɿ25000ߦҎ্ ϨΠϠʔ਺ɿ691

  41. MapboxGLの弱点 現時点の

  42. λΠϧ಺ͷςΩετ͕ॏͳͬͨ৔߹͸ͲͪΒ ͔ҰํͷΈදࣔ͞ΕΔ͕ɺ λΠϧͷڥքͩͱͦͷ൑ผ͕Ͱ͖ͣɺςΩε τ͕ॏͳͬͯ͠·͏ λΠϧڥքͷ஫ه͕ॏͳͬͯ͠·͏ ஫ه͕ॏͳ͍ͬͯΔ

  43. TZNCPMBWPJEFEHFTUSVF λΠϧڥ໨ͷςΩετΛඇදࣔʹ͢ΔΦϓγϣ ϯ΋͋Δ͕ɺͲͪΒͷ஫ه΋ফ͑ͯ͠·͏ Issueొ࿥ࡁ λΠϧڥքͷ஫ه͕ॏͳͬͯ͠·͏ ফ͑ͨ…

  44. ϚϧνόΠτͷॎॻ͖஫ه͕ෆ҆ఆ

  45. ϚϧνόΠτͷॎॻ͖஫ه͕ෆ҆ఆ ࢼ͠ʹ௨Γͷ໊લΛ ʮژ౎ͰFOSS4GͩΑʯʹมߋ͢Δͱɺ จࣈ͕͔Ϳͬͯ͠·͏ γϯάϧόΠτจࣈͱϚϧνόΠτจࣈ͕ ࠞࡏ͢Δ஫هΛॎॻ͖ʹ͢Δͱɺจࣈ͕͔Ϳͬ ͯ͠·͏

  46. ϚϧνόΠτͷॎॻ͖஫ه͕ෆ҆ఆ ೋॏʹͳ͍ͬͯͯɺ ಡΊͳ͍… ஫هͷॎॻ͖Λແޮʹ͢ΔΦϓγϣϯΛ͚ͭ Δͱจࣈ͕ೋॏʹͳͬͯ͠·͏ UFYULFFQVQSJHIUGBMTF

  47. ϚϧνόΠτͷॎॻ͖஫ه͕ෆ҆ఆ ϚϐΦϯͰ͸ɺ൒֯จࣈΛશ֯ʹม׵ͯ͠ର Ԡ͍ͯ͠Δ FOSS4GΛશ֯ʹ͢Ε͹ɺ ໰୊ͳ͘දࣔ͞ΕΔ

  48. 今後の展望

  49. ɾMapbox Vector Tile ͸σϑΝΫτελϯ μʔυʹͳΓͭͭ͋ΔΦʔϓϯͳ࢓༷ ɾMapbox Vector TileʹରԠͨ͠πʔϧ͸਺ ଟ͋͘Γɺ͜Ε͔Β΋૿͍͑ͯ͘ͱࢥΘΕΔ ex)

    Mapzen, Klokan Technologies, MVT Styler, Maputnik etc… ͍ΖΜͳՄೳੑ͕޿͕ͬͨʂ
  50. ϚϐΦϯͰ΋ ɾ஍ਤͷ഑৴ ɾ஍ਤAPIͷఏڙ ɾ஍ਤSDKͷఏڙ ɾ஍ਤσβΠϯπʔϧͷఏڙ ɾ஍ਤ഑৴γεςϜͷఏڙ ͳͲͷGIS։ൃࢧԉαʔϏεΛߏ૝தʂ λʔήοτ͸ ɹҐஔ৘ใΛ׆༻͍ͨ͠શͯͷਓ ɹҐஔ৘ใΛఏڙ͍ͨ͠શͯͷਓ

  51. 乞うご期待!

  52. ࢀߟURL ɹ˙ϚϐΦϯϕΫλʔ IUUQTNBQJPOHJUIVCJPNBQJPOWFDUPS ˙BSVLV IUUQTXXXBSVLVUPKQ ˙ܙํϚϐΦϯ J04൛  IUUQTJUVOFTBQQMFDPNKQBQQܙํϚϐΦϯJE NU

    ˙.BQCPY(-/BUJWF IUUQTHJUIVCDPNNBQCPYNBQCPYHMOBUJWF ˙.BQCPY(-+4 IUUQTHJUIVCDPNNBQCPYNBQCPYHMKT ˙.BQCPYVOJUZTEL IUUQTHJUIVCDPNNBQCPYNBQCPYVOJUZTEL ˙.BQCPY7FDUPS5JMF4QFDJpDBUJPO IUUQTXXXNBQCPYDPNWFDUPSUJMFTTQFDJpDBUJPO ˙.BQCPY4UZMF4QFDJpDBUJPO IUUQTXXXNBQCPYDPNNBQCPYHMKTTUZMFTQFD ˙.754UZMFS IUUQTTQVUOJLNBQTHJUIVCJPNWUTUZMFS ˙εϓϥΠτϑΝΠϧΛ࡞Δπʔϧ IUUQTHJUIVCDPNNBQCPYTQSJUF[FSP IUUQTHJUIVCDPNNBQCPYTQSJUF[FSPDMJ ˙ϑΥϯτϑΝΠϧΛ࡞Δπʔϧ IUUQTHJUIVCDPNNBQCPYOPEFGPOUOJLɹ
  53. おわり