ルート案内できるものを作ってみたいと思っていて、検索して地図にマーカーを立てることはできたのですが、
そのマーカーを使ってルート案内する記述がわかりません。
教えていただけませんか。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Google Maps</title>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"/>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false" …
<script type="text/javascript">
var geocoder;
var map;
var markers = [];
function initialize() {
//デフォルト緯度経度を設定する
var myLatlng = new google.maps.LatLng(35.681586, 139.766247);
geocoder = new google.maps.Geocoder();
//オプションを設定
var mapOptions = {
zoom: 12, //拡大率
center: myLatlng //緯度経度
};
//GoogleMapを描写
map = new google.maps.Map(document.getElementById('map-canvas'),mapOptions);
}
function CreateMarker(latlng)
{
var marker = new google.maps.Marker({
position: latlng,
map: map,
draggable: true
});
google.maps.event.addListener(marker, "dragend", UpdateRoute);
return marker;
}
//検索した住所の位置にマーカーを配置
function codeAddress() {
var address = document.getElementById('address').value;
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location,
draggable: true
});
markers.push(marker); //マーカーの配列に渡す
} else {
alert('取得に失敗しました'); //存在しない住所の場合はアラート
}
});
}
google.maps.event.addDomListener(window, 'load', initialize); //ページをロードしたらマップを表示
</script>
</head>
<body>
<div id="map-canvas" style="width:80%; height: 600px; border: 1px solid Gray;">
</div></BR>
<div id="panel">
<input id="address" type="text" value="" size="35">
<input type="button" id="button" value="検索" onclick="codeAddress()">
</body>
</html>
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは
>そのマーカーを使ってルート案内する記述がわかりません
具体的にはどのような表示方法をイメージなさっているのでしょうか?
よくわからないので、勝手に考えてみると・・・
ルートというからには出発地点と目標地点の二か所が与えられるものと思います。
ご例示のスクリプトでは、住所からジオコーディングしているようですので、それを二か所にするとして、この二点を結ぶルートを求めて表示すれば良いものとして考えてみました。
「googleさんが用意してくれているものは素直に利用しちゃおう」という横着な発想でいけば、2点間を結ぶルートを検索してくれるサービス(Directions Service)がありますのでそれを利用するのが手っ取り早いと思います。
(途中の経由地点を指定したりもできるようです)
https://developers.google.com/maps/documentation …
おや?どうやら、少し新しいサービスに変わっているのかもしれません
https://developers.google.com/maps/documentation …
例によって、リクエストの制限などはありますが、その辺はクリアできるものとして、これを利用することでルートのデータを得ることができます。
ポリライン表示でもよければ、MAP APIのDirectionsRendererを利用することで、得られたデータをマップ上に表示することも可能です。(ライン表示になりますが、この方法が一番簡単だと思います)
https://developers.google.com/maps/documentation …
少し面倒になりますが、得られたルートデータを解析して、途中のポイントにマーカを表示することや自分でオーバーレイを利用してポリラインを引くなどといったことも可能です。
過去の質問で、ルート検索に関するものがありましたので、ご参考までに。
◇スタート地点、ゴール地点を指定(ドラッグで移動)してルートを求める例。
https://oshiete.goo.ne.jp/qa/8159078.html
◇検索したルートを解析し、ルート上を等分割した点にマーカを表示する例。
https://oshiete.goo.ne.jp/qa/8793696.html
https://oshiete.goo.ne.jp/qa/8800586.html
※ map APIを利用するのに、一時期はkeyが無いと利用できなかったようですが、再度、keyがなくても良くなったみたいですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【javascript】住所から郵便番...
-
VBAでオブジェクトがありません...
-
PHPで入力された住所で地図表示
-
aspのセレクトボックスにDBのデ...
-
デジタル時計の時刻合わせの方...
-
マイページはどこを開くの
-
エクセルのシート上に別のシー...
-
Excelでワードアートや図を常に...
-
スクリプトって、何ですか?ど...
-
エクセルVBAでフォームのListbo...
-
ウインドウを毎回同じ位置、大...
-
Javascript_submit()完了後に処...
-
一定時間おきにアラームやポッ...
-
MacのVLCでウインドウの幅の変更
-
window.close()?でエラー
-
Excel VBAでの右クリックのポッ...
-
WIN10のPCに「制限」のポップ...
-
VBA ポップアップが表示された...
-
画面を閉じる(×ボタンやタスク...
-
【Android】ユーザー補助機能ボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
どうして+3
-
Yahoo地図でマーカーを表示した...
-
VBAでオブジェクトがありません...
-
【javascript】住所から郵便番...
-
WordのVBAについて
-
ホームページビルダー16 地図...
-
ビルダーの黄色マーカーの出し方
-
既存のgoogleマップに半径表示...
-
googlemapで複数条件絞り込みで...
-
逆ジオコーディングについて
-
google map の画面サイズを小さ...
-
map = new google.maps.Mapで作...
-
iPhoneサイトにgooglemapを掲載...
-
Google Maps API v2 現在位置か...
-
GoogleMap のマーカーに数値を...
-
GoogleMapsでルート表示
-
GMap Api V3で中心マーカーを表...
-
ワードプレスのプラグインであ...
-
Dreamweaver CS3で、太い赤字と...
-
アイフォンの位置を検索する
おすすめ情報