2010-12-27 14 views
0

私は静的なGoogleマップを使用していますが、実際にこの問題はどのマッププロジェクトにも当てはまります。マップを複数の象限(50x50ピクセルなど)に分割し、列をA、B、C ...と、ラベルを1,2,3 ...とラベル付けしたいと考えています。静的なGoogleマップのアトラススタイルマップインデックス

次は計画しています何かのように、

1)最も遠い東の北、南、西 2あるマーカー)によって各マーカーを分類し、それぞれの行と列のボックス 3)のバウンディングボックスを定義するためにその情報を使用して下さいその行と列(例マーカー1 = A、2])

いくつかの要件、

  • 私はGoogleにズームレベルを適切に設定させて、ズームレベルに依存するアルゴリズムを使いたくないので、ズームレベルを知らない。しかし、私はマップに表示されているすべてのマーカーの位置を知っています。

ここでは static map example link.

、私はマーカーを分類したいマップの一例である私は

Resource 2Resource 1、良いスタートのように見えるこのことは、これらが見つかりましたが、私は考えます私はまだ始めるための助けが必要です。誰でも擬似コードを書くことができますか、いくつかのリソースを投稿できますか?私は現時点ではまあまあです。

ありがとうございます!どんな助けにも大変感謝しています!

+0

実際、これよりも難しくなっているかもしれません。私は中心点を与え、すべてのマーカーがズームレベル(またはスパンサイズ)を決定した後、それを使って画素の度数の比率を決定するということが、私がしなければならないことがもっと多いと思います。次に、それを使って、私のコレクション内の各lat、lngペアの対応するピクセル位置を計算し、lat、lngペアに対応するx、yピクセルペアがどの象限にあるかを調べることによってそれを分類します。 –

+0

これを使うのはどういう意味ですか?別の方向に向けることができるかもしれません –

+0

申し訳ありませんが、ここにあなたの投稿が表示されませんでした。当時の私の使用は、Google静的マップを使用してアトラススタイルの地図を作成することでした。 GoogleマップではマーカーA〜Zにラベルを付けることも、独自のカスタムマーカーを使用することもできますが、実際には参照するマーカーのクラスターを指定したかっただけです。私は私の目的のために私が必要としていたものをすでに理解していたにもかかわらず、あなたが念頭に置いていたどのようなリソースが好奇妙なのです。 –

答えて

0

この2日で私はついにそれを得ました。私は後でこれにつまずく人々と私の思考を共有すると思った。

PHPコードthis siteに続いて、lat、lngペアをピクセル座標に変換するために、個々のピクセル行をx値で、列をピクセルy値で分類できました。

ズームレベルを計算するには、マーカーのコレクションによって定義されたmaxLat、maxLng、minLat、およびminLngの値を決定します。次に、特定のズームレベルで地図の境界を計算しました。最後に、ズームレベルで決定されたマップの新しい範囲にマーカーのコレクションのmax、min lat、lngの値で定義された境界が含まれているかどうかを確認するブルートフォース方法を使用しました。ズームレベル21(Googleマップの最大ズーム)から、すべてのマーカーを含むズームレベルが見つかるまで、ズームレベルを減らします。

静的なマップにズームレベルを指定しないと、この方法で計算されたズームレベルは自動的に選択されたGoogleのプリセットズームレベルと一致しているようです。

PHPでは、このすべてを行うには素晴らしいライブラリがありますhere

関連する問題