質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google マップ

Google Mapは、Google社がオンラインで提供している地図・ローカル検索サービスです。GIS(Geographic Information System:地理情報システム)の中の「WebGIS」に該当します。地図・航空写真・地形の表示方式があり、それぞれユーザーが縮尺を調整して表示させることができます。地域の情報サービスを検索する機能やルート検索の機能も搭載されています。

Q&A

解決済

2回答

2327閲覧

GoogleMapでマーカーを読み込みたい

退会済みユーザー

退会済みユーザー

総合スコア0

Google マップ

Google Mapは、Google社がオンラインで提供している地図・ローカル検索サービスです。GIS(Geographic Information System:地理情報システム)の中の「WebGIS」に該当します。地図・航空写真・地形の表示方式があり、それぞれユーザーが縮尺を調整して表示させることができます。地域の情報サービスを検索する機能やルート検索の機能も搭載されています。

0グッド

0クリップ

投稿2017/03/15 15:02

いつもお世話になっています。

GoogleMap上に複数マーカーを表示しています。
マーカー情報はjsonで外部ファイルに保存しています。
例)
["東京駅","35.68121314194681","139.76600646972656"],
["有楽町駅","35.67486854197016","139.7625732421875"])

例えばコンビニのマーカー情報を1万件外部ファイルに格納していたとして、
一気に全部表示するのはちょっと馬鹿らしいな、と思ったので、
クリックした座標を中心としてnkm圏内のマーカーを読み込めたら一番良いのですが、
どう指定して読み込んだら良いのか思いつくことが出来ませんでした。

クリックした座標が
LAT 35.674066715962134
LNG 139.76720809936523
だったとして、そこのnkm圏内、あるいは直近n件のデータを抜き出して表示、と言うのは、どうやれば良いんでしょうか?
クリック座標を取得する方法は承知しています。

宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

位置情報を格納できるDBに入れてクエリで処理

【第5回 位置情報を保存しよう(前編):位置情報サービスのはじめ方|gihyo.jp … 技術評論社】
http://gihyo.jp/dev/feature/01/location-based-services/0005

【MySQLのgeometry型で○km以内の場所を取得してみました - Qiita】
http://qiita.com/mitani/items/6909406ac4fe0db2d35c

【mysql空間テーブルの作り方 - Qiita】
http://qiita.com/kochizufan/items/a68b30ba74849483f75c


タイル番号ごとにJSONファイルを作成

タイルを使うというより「タイルの範囲内のデータ」というJSONをある程度のくくりごとに作ることで1回に読む量を減らす作戦。

【TrailNote : 座標の変換(世界座標、ピクセル座標、タイル座標、緯度・経度)】
http://www.trail-note.net/tech/coordinate/

【地図タイルについて - smellman's Broken Diary】
http://smellman.hatenablog.com/entry/2015/12/26/054520


JSONを毎回走査し、現在表示されているエリア以内かどうかを判定する

JavaScript

1// こういう判定関数を作って処理するか、 2/* 3左端X座標 ≦ 地点X座標 ≦ 右端X座標 4上端Y座標 ≦ 地点Y座標 ≦ 下端Y座標 5*/ 6// LatLngBounds class で「描画領域に入っているか」を判定するとか。 7if ( map.getBounds().contains( {lat: -34, lng: 151} ) ) { /* 地点が領域の中にある */ }

下記例はPHPを使っていますがそれをJavaScriptだけで行う感じ。

【地図の表示領域にあるマーカーだけを動的に読み込んで表示 - Let's make something】
http://pinoyuki.hatenablog.com/entry/2012/04/03/003141

【Google Maps JavaScript API V3 Reference  |  Google Maps JavaScript API  |  Google Developers】
https://developers.google.com/maps/documentation/javascript/reference#LatLngBounds

投稿2017/03/15 15:23

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/03/15 16:27

詳しい情報ありがとうございました! 思いつかない方法ばかりで関心ばかりです……上から順にみっちり勉強したいと思います。 解決方法として多角的に情報いただけましたのは大変助かりました。
guest

0

投稿2017/03/15 15:22

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/03/15 16:23

類似質問の提示ありがとうございました。見付け切れなかったので助かりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問