興味のあるポイント(POI)のリストがパッケージ化されて来ることで、オフラインで動作できる位置認識iPhoneアプリを作成することを考えています。アプリは、ユーザーの現在地を読み取り、ユーザーの現在地CoreLocation
に近い順にPOIのリストを生成します。
このアプリケーションを軌道に乗せるには、2つの基本的な地理空間関数が必要です。1つ目は、ポイント(ユーザーの現在の場所)が特定の地理空間境界内にあるかどうかをテストする関数です。2つ目は、2つの緯度/経度のポイント間の距離を指定できる関数です。2番目の関数を使用して、POIのリストをユーザーの現在の場所の近くで並べ替えます。
この問題領域はよく理解されており、オープンソースのオプションがあることを理解しています。(私が知っている)主要な候補は、GEOSC ++ライブラリです。私がこれを使用すると想像する方法は、GEOSを静的ライブラリとしてコンパイルすることです(そして、three20ライブラリを含めるために行うように、プロジェクトの依存関係としてリンクします)。
私の質問は:
必要な2つの関数をアプリケーションに組み込むための最良の方法は何ですか。
質問1の最良の答えが、静的ライブラリとしてGEOSをコンパイルし、それを私のプロジェクトにリンクすることである場合、以前にこれを行ったことがある人は、いくつかのポインタを提供できますか?私はコンパイルや静的ライブラリの構築などの初心者です。GEOSをコンパイルしてプロジェクトに含める方法について、いくつかのサンプルコードまたはチュートリアルを簡単な使用例で見てみたいと思います。