• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:GMap Api V3で中心マーカーを表示させたい)

GMap Api V3で中心マーカーを表示させる方法

このQ&Aのポイント
  • GMap Api V3を使用して地図を表示している際、中心に十字マーカーを表示させたい場合、どのようにすればよいのかわかりません。
  • マーカーは表示できるものの、地図をドラッグするとマーカーも一緒に移動してしまい、再描画の方法が分かりません。
  • V3で中心マーカーを表示する方法に関して、オンラインの情報は主にV2に関するものばかりであり、具体的な実装方法が分かりません。

質問者が選んだベストアンサー

  • ベストアンサー
  • my--
  • ベストアンサー率89% (91/102)
回答No.2

質問者のいうAPI。No.1にあるDOM。2パターン書いてみました。 API 版 http://library.nukimi.com/googlemaps/api-source.html マップセンターの移動に合わせ地理的座標を取得。それをピクセル座標に変換、再描画 とマーカー位置を維持するための負荷がかかります。 マップドラッグなど、ただでさえマップセンター移動は高負荷の状況ですから 古いIEなどマーカー静止は厳しいかも。 DOM 版 http://library.nukimi.com/googlemaps/dom-source.html No.1にありますから詳細は略。「ブラウザによってはズレる可能性がある」とのことですが そこあたりは良く分かりませんでした。 APIの扱いに慣れると地図制作の幅が広がりますし、そういう意味でAPIはありですが No.1にある通り、私もAPI利用はここじゃない、とやってみて思いました。

ka-kichi
質問者

お礼

ご回答ありがとうございます。 また、2通りものソースをご提示いただき、ありがとうございます。 オーバーレイではなく、単純にマップ上にマーカーを表示させ、それを中心に固定できれば負荷も減ると思ったのですが、それは素人考えなのかもしれませんね。 ご提示いただいたソースを拝見し、勉強させていただきます。

その他の回答 (2)

  • my--
  • ベストアンサー率89% (91/102)
回答No.3

>> No.2 お礼 OverlayViewクラスがベストってわけじゃないかも知れませんが。。。 はじめにMarkerクラス .setPosition() で単純にやってみましたが、ダメでした。 Google Chromeは流石というか、相性が良いのかそれなりに動きましたけど。 API-Marker 版 http://library.nukimi.com/googlemaps/marker-source.html 実際に確認した方が早い。

ka-kichi
質問者

お礼

再度ご回答いただきありがとうございます。 なるほど、奇妙な動きですね。 勉強になりました。(^^ゞ ありがとうございます。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

マップの表示対象要素とそのサイズはわかっているのでしょうから、位置固定のカーソルを表示したいのであれば、googleAPIを利用する必要がないのではないでしょうか? マップ上に表示するから、移動したときに再度表示し直す必要が出てしまうので、対象要素の中心に固定で表示するようにしておけば、表示するだけですみそうに思えます。 具体的には、カーソル用のアイコン(又はdivによるヘアカーソルなど)をposition:absoluteでマップ表示用の要素の中央に来るように表示しておくだけ。 そうすれば、スクリプトも不要になりませんか?

ka-kichi
質問者

お礼

ご回答ありがとうございます。 なるほど、地図とマーカーをHTML上で重ねる発想ですね。 ただし、これだとブラウザによってはズレる可能性があるので、やはりAPI上で描画したいと思います。

専門家に質問してみよう