GoogleMapsの最近のブログ記事
流れとしてはこんな感じかな…
前提条件
・GoogleMapを使用
・空室宿情報は楽天トラベルから取得する
ユーザ側の処理
・ユーザは行きたい場所を入力
・ユーザはチェックインの日付をリストより選択 : 日付の型はYYYY-MM-DD
・チェックアウトの日付をリストより選択 : 日付の型はYYYY-MM-DD
※日付はPHPで年、月、日を作成して表示させる。
フォーカスを当日にあてる処理が必要。
・ユーザは人数を入力 : 選択形式にしようかな。10人くらいまでの。
・ユーザは最大いくらまでか、値段を入力 : 数値チェック必要
・ユーザは最小いくら以上か、値段を入力 : 数値チェック
・ユーザは検索ボタンを押下する
Map側の処理
・入力された地名等の地図に移動する : Mapサイズ検討必要
・移動した地図上にマーカをつける
・移動した先の緯度・経度(世界)を取得する
・緯度・経度(世界)を緯度・経度(日本)に変換
※この処理はGoogleMapと楽天トラベルで扱う緯度経度の形式が違うため。
【計算式】
日本測地系緯度 = 世界測地系緯度 + 0.00010696 *
世界測地系緯度 - 0.000017467 * 世界測地系経度 - 0.0046020
日本測地系経度 = 世界測地系経度 + 0.000046047 * 世界測地系緯度 +
0.000083049 * 世界測地系経度 - 0.010041
・半径3km以内かつ空室が存在する宿一覧リストを取得
・宿リスト分以下の処理を繰り返す
・取得した宿の緯度・経度(日本)を取得する
・緯度・経度(日本)を緯度・経度(世界)に変換
※【計算式】
世界測地系緯度 = 日本測地系緯度 - 0.00010695 * 日本測地系緯度 +
0.000017464 * 日本測地系経度 + 0.0046017
世界測地系経度 = 日本測地系経度 - 0.000046038 * 日本測地系緯度 -
0.000083043 * 日本測地系経度 + 0.010040
・変換した緯度(世界)でMap上にマーカを付ける
・その他の宿情報(宿名、価格など)をオープンウインド情報に設定する
ユーザ側の処理に戻って
・ユーザはオープンウインドより宿情報にアクセスし、予約する
分岐ルート。
ユーザ側の処理
・ユーザは地図を移動する : マウスでMapをつかんで移動するイメージ
・ユーザは再検索ボタンを押下する
※フォーカスがMapから離れた時点で宿を表示しようかと思ったけど
ちょっと動かすだけで毎回処理が走るのは遅いし、同一宿のマーカ
問題もありそうだからやめた。
どっちにしろ3km以内であれば、同一箇所にたくさんマーカが出来て
しまうのはいたしかたないか。。
Map側の処理
・Mapセンタの緯度・経度(世界)を取得。変換処理は上と一緒なので省略。
・半径3km以内かつ空室が存在する宿一覧リストを取得
※検索条件が入力されている状態であること
あとは上と同じ処理。
こんな感じかなぁ。
今回はちょっとした設計というか道筋を考えてから作ってみようかと
思い、備忘録的な感覚で書いてみました。
って、、技術的には出来るだろうけど、ここんとこえらい忙しいし、いつ
完成することやら(笑)
しつこいようですが…
Map改良第二段階。
・マーカー削除
・XMLから都道府県別グラウンド検索
※マーカー、コメント、ホームページリンク付き
試しに北海道の3つのグラウンドをXMLに登録してみました。
一応XML作成はエクセルから自動で作れるようにマクロ組んだ
けどデータをコツコツ登録するのが面倒なんだよなぁ。。
見た目は後で整えるとして、GoogleMapでやることはあと…
・マーカー画像変更
・グラウンド別情報検索追加
・全国グラウンドデータ登録(重っ)
・グラウンド情報登録用フォーム
くらいかね。Mapばっかで遊んでないでいい加減メインコンテンツを
作り始めよう。。って完成はいつになることやら。。
まぁ気長にコツコツやろう。
Google Mapsに手を出してみました。
設置本当にすぐに出来るんですね。。ものすごい開発者が
いるもんだなと…
とりあえず地図表示から住所または建物などでの検索、XML
から自動マーカー、キャプションまで出来るようにしました。
まだマーカーの削除ボタンとか無いけどとりあえず普通に
使えるようになったかと。
※APIもえらく簡単に使えるようになっていてびっくりでした。
近くフットサル場とかのデータをMapに登録しようかと思っとります。
にしても、、
昨日から風邪ひいてやってるのきつかった。。
