« 『Chelsea Cafe』で珈琲♪ | トップページ | 『ドスパラ』がいつの間にか統合されていました… »

2012年4月20日 (金)

『Google Map』上で表示されるアイコンが何メートル相当か知りたい!

アンドロイドでマップを表示させ、マップ上をタップする事で
目的のアイコンを選択する処理を検討している。

ときに画面上の選択範囲は、何メートルに相当するのか?

つまり、1ドットは、何メートル四方って話。

グーグルマップは、自由に拡大縮小できるので
そのつど、メートル/ドットは、変化する。

この値が分からないと、正しく選択範囲と
マップ上の範囲が対応しない…。

だが、この辺りの事は、あんまり書いていないらしく
簡単に検索には、引っかかなかった…。(T_T)

ドットとメートルを変換する数値は、どこかにあるはずだ!

との信念の下、探してみた。

そしたら、「mMapView.mConverter.mInverse.native_instance」に
格納されていた。

どうやら千分の一ミリメートルが基準のようだ。

ここで一言。

探すの結構大変だった…(^^ゞ

は、置いといて…。

所が、メンバーを直接参照できないので
今度は、参照用のメソッドを探さなくてはならない。

結局、見つからなかった…。

でも、逆の機能のメソッドは、見つかった。

float pixel = mapView.getProjection().metersToEquatorPixels(float meter);

なので、一手間かけて目的の処理にする。

float range = radius * 1000 / mapView.getProjection().metersToEquatorPixels(1000);

これで目的は、達した!

…次に行ける…。

|

« 『Chelsea Cafe』で珈琲♪ | トップページ | 『ドスパラ』がいつの間にか統合されていました… »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/108365/54506681

この記事へのトラックバック一覧です: 『Google Map』上で表示されるアイコンが何メートル相当か知りたい!:

« 『Chelsea Cafe』で珈琲♪ | トップページ | 『ドスパラ』がいつの間にか統合されていました… »