この投稿はOpenStreetMap Advent Calendar の9日目の記事です。

8日目の記事 を拝見させていただいて、マピオンのAPIも紹介したいなと思い書いてみることにしました。

OpenStreetMapをiOSで表示させることができるライブラリはroute-meとMapBoxがありますが、どちらも以下のようなデメリットがあったと記憶しています。

  • タイル表示が遅い
    • 対象のタイルを取得する前にzoom-1のタイルを取得し2倍したものを一時的に表示させている(zoom-1のタイルのキャッシュが利用できればそれほど問題ではないが初めての場所だとリクエストの時間が無駄にかかる)
  • 大縮尺でスクロールするとライン、ポリゴン、サークル、ピンなどのレイヤの動きがカクカクする
    • UIScrollViewは内部でCGPointを使っているが、このフィールドはCGFloatであるため32bitの場合float型になり大きな値の計算で誤差が生じてしまっている

マピオンのAPIはそのようなことがないです。

ここにOpenStreetMapを表示するコードを書いてもいいのですが、公式サイトにまるまるあるのでリンクを貼らせてもらいます。

OpenStreetMapをiOSで表示するコード

Androidもまるまるあるのでリンクを貼るだけにさせてもらいます^^;

OpenStreetMapをAndroidで表示するコード


Ads

Comments