トップページ⇒php
983コメント299KB

Google Maps API 質問箱

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/07/21(木) 12:52:31ID:zMECXA3l
Google Maps API関係はこちらで質問して!
0508nobodyさん2007/02/15(木) 21:49:50ID:???
xslを適応したxmlを表示させるにはGXsltを使うしかない?
GXsltを解説しているとこがほとんどないから使い方がわからんorz
0509nobodyさん2007/02/20(火) 19:37:39ID:yKvnZBxy
とりあえず使いたいのは
GDownloadUrl
だけなんですけど、MAP API全部読み込まなきゃならないんですよね?
この機能だけちょこっと使えるAPIなんてないですかね?

ブラウザによる差異や、タイムアウトや、エラー処理を実装するのめんどいんですけど・・・
0510nobodyさん2007/02/21(水) 20:37:55ID:???
>>509
mapの機能を一切使わずに
エラー処理やクロスブラウザだけのためにGDownloadUrlを使いたいのなら
prototypeとか別のフレームワークの類似メソッドを使う方がよいと思われ
05115092007/02/24(土) 13:22:41ID:???
>>510
超遅レスですが、レスありがとでした。

prototypeなるものは見かけた事はあったんですが
よくわからず素通りしてました・・・OTZ

今回導入して、簡単にAjaxモドキできました。
ありがとうございます。
0512nobodyさん2007/03/06(火) 17:01:40ID:n6eG/ElM
age
0513nobodyさん2007/03/07(水) 20:08:59ID:???
div要素指定してそこにマップ表示するってのが普通の使い方だと思うけど、
UAの関係で、そういう使い方できないので、別の方法でGoogleMapの地図情報利用したいのですが、
何か方法はないですか?
0514nobodyさん2007/03/08(木) 03:27:46ID:APKlahko
日本語ドメインのPunycode表記でAPIキーを取得したのですが
マップを表示しようとするとキーが違うと表示されます。
何か良い対応策は無いでしょうか。
0515nobodyさん2007/03/09(金) 15:35:05ID:s0TAwXTD
Google API Keyを取得したときのサンプルコードをIEやFireFoxで
表示させると普通に表示されるのに、Slaipnirでだけ表示されないのは
なんでだろう?
おなじSlaipnirで本家のGoogleMapはちゃんと見えてるから、Slaipnirの
問題では(多分)ないと思うんだけど。。。同じ状況で悩んでる人いません?
0516nobodyさん2007/03/09(金) 15:42:00ID:s0TAwXTD
>>515
ちなみにコードはアップしても意味がないんだけど、↓これ。全く問題なし

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml";>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example</title>
<script src="http://maps.google.com/maps?file=api&;v=2&key=ABQIAAAAoxZqlNzaGflU39bo1bu5rxQgHjSMdBxO04_1VOprMAYel--BghS-e5Rs4K9rAIUzDQVeL5-8Qk1bOg"
type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
function load() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
}
}
//]]>
</script>
</head>
<body onload="load()" onunload="GUnload()">
<div id="map" style="width: 500px; height: 300px">Loading</div>
</body>
</html>
0517nobodyさん2007/03/09(金) 22:22:36ID:???
動くけどなぁ…スクリプト許可してないとかはないよね。
普通に。
0518nobodyさん2007/03/09(金) 23:21:18ID:???
マーカー使うとIEで異常に表示が遅くなるのは何故だろう
マーカー10個しか表示させてないのに表示まで10秒はかかる
0519nobodyさん2007/03/09(金) 23:31:20ID:???
マーカーの透過処理がpngじゃないからではないのかな。
IEって6とか透過pngまともに使えないから、
ActiveXかなんかで対応してたんだと思うけど。
その関係じゃないかしらん。
0520nobodyさん2007/03/10(土) 00:32:27ID:???
なるほど透過GIFにするかマーカーを四角画像にすればいいな
0521nobodyさん2007/03/10(土) 22:39:33ID:???
海と陸地の判定に成功したハッカーはいませんか?
0522nobodyさん2007/03/11(日) 13:39:38ID:NCbGkHMP
>>517
うーん。じゃ、うちのSlaipnirの問題なのかなぁ?
いや、でも、本家のGoogle Mapは動くんだよなぁ・・・
0523nobodyさん2007/03/11(日) 22:08:21ID:???
>>522
エラーログは出ないの?
0524nobodyさん2007/03/12(月) 05:18:08ID:???
設定変更しないでふぉ状態のSleipnirで試すとか。
0525nobodyさん2007/03/12(月) 12:54:19ID:???
IEで見ると
「インターネットサイトhttp://※※※※※を開けません
操作は中断されました」
て出ます
なにかIEで対応してないものがあるのでしょうか?
0526nobodyさん2007/03/12(月) 13:33:10ID:???
521 です。やはり海と陸地判定は無理?
0527nobodyさん2007/03/12(月) 14:14:14ID:???
>>526
国土地理院かどこかに日本国土のいろんな緯度経度情報データある。
やればできる。
0528nobodyさん2007/03/13(火) 03:45:34ID:eMtRgz0L
>>523
出ないのです。

>>524
そうですよねぇ。でも、ほとんどデフォルトのはずなんですが・・・
0529nobodyさん2007/03/14(水) 09:35:21ID:???
>>527
ありがとうございます。
地道に座標をクリッピングするしかないんですね…。
0530nobodyさん2007/03/14(水) 10:30:39ID:???
>>529
色で判定できないかな?
それか、地理院の海岸線データ使えば?
0531nobodyさん2007/03/15(木) 00:31:52ID:???
>>526
外部サービスを使うのだったら、
http://refits.cgk.affrc.go.jp/tsrv/jp/rgeocode.html
このサービスで Not Found が出るか出ないかで、海か陸かが分かるかもです。
05325262007/03/15(木) 18:06:01ID:???
>>531
ありがとうございます!
これ簡単でいいですね。

そのほかにもいろいろ助言してくれた方、
ありがとうございました。
0533nobodyさん2007/03/22(木) 19:20:35ID:???
何度も出てくる質問で申し訳ないけど、携帯サイトに特定の場所の地図埋め込む方法ってないのかな?
(正規のAPI使って)
0534nobodyさん2007/03/23(金) 19:28:58ID:vffsACYG
自分のサイトに地図が出ないと思ったら、
http://maps.google.co.jp/maps
ここも出てないみたいです。
なんでーーーー?
0535nobodyさん2007/03/23(金) 19:52:43ID:???
本当だ!
地図が表示されなくなったぞ

もしかして課金開始した?
0536nobodyさん2007/03/23(金) 19:58:25ID:zzEqrIJD
trident、geckoいずれも普通に表示されますが
05375562007/03/23(金) 20:15:12ID:???
ふぁいやーほっくすは表示される!
IE6は捨てられた?
0538nobodyさん2007/03/23(金) 20:54:52ID:???
IE6で普通に表示されますが何か
0539nobodyさん2007/03/23(金) 22:24:40ID:???
Win2000のIE6だけ?うちだけ?
0540nobodyさん2007/03/23(金) 23:05:53ID:ynnJRuLY
mac サファリも でないです・・・・(T_T)
05415562007/03/24(土) 04:47:32ID:???
なんか表示されるようになりました。
一時的なものだったんでしょうか?
0542nobodyさん2007/03/24(土) 17:33:47ID:FnCUa/Wf
>541

未来から乙w
0543nobodyさん2007/03/24(土) 17:59:01ID:ra4BhRNo
tes
0544nobodyさん2007/03/25(日) 02:14:04ID:???
「ラーメン二郎マップ」を作っているのですが
どのマーカーをクリックしても同じ店名しか出てきません。

スクリプトが間違っているのでしょうか???

▼ラーメン二郎マップ
http://akio.lomo.jp/labs/jirou/jirou.html

▼jirou.jsの内容の一部を抜粋

for(var i=0; i<obj.item.length; i++){
var item = obj.item[i];
geocoder.getLatLng(item.address,function(latlng){
if(latlng){
var mk = new GMarker(latlng);
map.addOverlay(mk);

GEvent.addListener(mk,"click",function(){
mk.openInfoWindowHtml(item.name);
});
}else{
// alert(item.address + "は見つかりませんでした");
}
});
}
05455442007/03/25(日) 02:42:03ID:???
スクリプトの内容はこんな感じです。

http://akio.lomo.jp/labs/jirou/jirou.js
0546nobodyさん2007/03/25(日) 15:24:44ID:???
>>544
解決法はわからんが、原因はわかる。

そもそも
GDownloadUrlのコールバック関数とgeocoder.getLatLngのコールバック関数は
同期していない。
したがってgeocoder.getLatLngのコールバック関数が実行される時は
GDownloadUrlのコールバック関数のカウンターiはすでに回り切っているので
geocoder.getLatLngのコールバック関数で参照しているitem.nameには
最後の店の名前しか入らない。
05475442007/03/25(日) 20:04:12ID:???
>geocoder.getLatLngのコールバック関数で参照しているitem.nameには
>最後の店の名前しか入らない。

なるほど。
原因は理解しました。
さて、解決を・・・方法が思いつかない(;´Д`)
0548nobodyさん2007/03/26(月) 21:09:05ID:???
>>547 「無理やり」感いっぱいですが…。

function wrap(item) {
this.item = item;
}
wrap.prototype.regist = function(geocoder) {
var name = this.item.name;
geocoder.getLatLng(this.item.address, function(latlng) {
if(latlng) {
var mk = new GMarker(latlng);
map.addOverlay(mk);
GEvent.addListener(mk,"click", function(){ mk.openInfoWindowHtml(name); });
}
});
};
...
GDownloadUrl("read.php",function(data) {
var obj = data.parseJSON();
var geocoder = new GClientGeocoder();
for(var i=0; i<obj.item.length; i++){
var wi = new wrap(obj.item[i]);
wi.regist(geocoder);
}
});
05495442007/03/26(月) 21:42:01ID:ScfNvVVT
>>548

動くようになりました。
ありがとうございました!
05505442007/03/26(月) 22:18:00ID:ScfNvVVT
http://akio.lomo.jp/labs/jirou/jirou.html

firefox1.5では動くのですが
IE6で動かすと以下のようなエラーが出てしまいます。

http://akio.lomo.jp/labs/jirou/jirou.js

>ライン:25
>文字:2
>エラー:'this.item.name'はNullまたはオブジェクトではありません。
05515482007/03/27(火) 01:32:27ID:???
ダウンロードしたJSONPデータの一部について、
>>550
ごめん。IEでチェックするのをすっかり忘れてた。

このエラーは、IEでは this.item が null になると解釈するところがあるからです。
startUp() の for ループ内で null チェックを入れて下さい。

IEとFireFoxでの振る舞いが違うのは、
startUp()内で i がいくつのときに null になるか調べてみると分かると思います。
これ、結構ハマります。ていうか、>>548でハマってたし orz
0552nobodyさん2007/03/27(火) 16:58:48ID:???
すんまそん、どこかにGWT+Google Mapsのサンプルなんぞのサンプルコードが
公開されているところとか知りませんか?
05535442007/03/27(火) 23:12:14ID:jT7GT7ZL
>>551

>startUp()内で i がいくつのときに null になるか調べてみると分かると思います。

調べてみました。
obj.item.lengthの値がFirefoxだとが28、IEだと29ですね。
そして、IEだとiが28の時にobj.item[i]の値がnullになります。

FirefoxとIEとで、parseJSON()の返してくれる結果が異なる、
ってことでしょうか?
05545482007/03/27(火) 23:31:46ID:???
>>553
> obj.item.lengthの値がFirefoxだとが28、IEだと29ですね。
そう。ひとつ多いですね。

> FirefoxとIEとで、parseJSON()の返してくれる結果が異なる、
json.js のせいでなく JavaScript インタプリタ自体の問題です。
--------
var arr1 = [ 1,2,3, ];
alert(arr1.length);

var arr2 = [ 1,2,3 ];
alert(arr2.length);
--------
を実行してみて下さい。
read.phpが返す文書にも、同じような差がないか確認してみて下さい。

05555442007/03/27(火) 23:44:43ID:???
>>554

>json.js のせいでなく JavaScript インタプリタ自体の問題です。
>--------
>var arr1 = [ 1,2,3, ];
>alert(arr1.length);
>
>var arr2 = [ 1,2,3 ];
>alert(arr2.length);
>--------
>を実行してみて下さい。

Firefoxでは
3
3

IEでは
4
3

でした。

なるほど、理解しました。
ありがとうございました。
厄介ですね・・・。
0556nobodyさん2007/03/29(木) 04:54:27ID:T2OlowED
マーカーの画像をすべて同一のものに変更する場合、一つずつ経度緯度を指定しなきゃいけないんですか?いっきに全部変更する方法とかあったらご教授ください。
0557nobodyさん2007/03/29(木) 11:31:25ID:???
>>556
?
表示中のマーカーを?
0558nobodyさん2007/03/29(木) 13:12:47ID:T2OlowED
556です。       表示中というか表示されるマーカーをです。
0559nobodyさん2007/03/29(木) 17:58:55ID:???
>>558
同じマーカーを渡せばいい
0560nobodyさん2007/03/29(木) 20:12:05ID:???
携帯用のAPIってまだですか?
05615442007/03/29(木) 21:43:33ID:???
GInfoWindowのshow()を呼び出したいんですが
GInfoWindowはどうすれば取得できるのでしょうか?
05625442007/03/30(金) 00:16:56ID:???
http://akio.lomo.jp/labs/jirou/jirou.html

ページを表示してすぐに「池袋東口店」のリンクをクリックすると
お茶の水あたりの地図が表示されてしまいます。

2回目以降のクリックでは正確な場所が表示されます。

何故でしょう???

スクリプト
http://akio.lomo.jp/labs/jirou/jirou.js
05635482007/03/30(金) 01:20:52ID:???
>>561
map.getInfoWindow().show();
とかで出ますよ。

>>562
panTo()とsetZoom()のところをsetCenter()にしたら動いたりします。
理由は全く分かりません。
0564nobodyさん2007/03/30(金) 05:12:49ID:PKkeb/i7
IE7だとマーカーとか消えるんですがどうしたら良いでしょう?
0565nobodyさん2007/03/30(金) 16:07:04ID:PKkeb/i7
GoogleMAP Editor で作成したマップにオリジナルのマーカーを設定する方法を教えてもらえませんか?
0566nobodyさん2007/03/30(金) 19:19:10ID:???
マルチ放置推奨
0567nobodyさん2007/03/30(金) 22:11:35ID:???
>>565
画像用意してそれを表示させるだけ
0568nobodyさん2007/03/31(土) 11:00:36ID:???
http://pc11.2ch.net/test/read.cgi/php/1121917951/565
http://pc11.2ch.net/test/read.cgi/tech/1131627583/77
0569nobodyさん2007/04/05(木) 23:33:16ID:kt8/yD/f
保age
0570nobodyさん2007/04/05(木) 23:59:08ID:???
OKWaveのheadに入ってるmapsいったいなんなの?
0571nobodyさん2007/04/07(土) 14:40:44ID:???
このgoogleMapsの本で一番マシなのって、毎日コミュからでてる逆引き?
買おうかなーと思ってるんだが、、
0572age2007/05/06(日) 20:51:54ID:???
age
0573nobodyさん2007/05/07(月) 11:18:19ID:/KTnTtqN
正直、スレ違いなんですが
xxx.xxxxx、yyy.yyyyy 形式の緯度経度を
xxx.xx.xx.xxx、yyy.yy.yy.yyy 形式に変換する計算式を教えてもらえませんか
0574nobodyさん2007/05/07(月) 11:54:24ID:pQcrRiis
つ ttp://blog.fkoji.com/2005/09210026.html
0575nobodyさん2007/05/07(月) 12:39:28ID:???
ありがとうございます!
0576nobodyさん2007/05/12(土) 18:36:17ID:XG6Nejz3
いまさらgoogle mapsやってるんだけど、
>>1からおよそ2年でレスポンス600って、
もしかすると流行ってないとか?
0577nobodyさん2007/05/12(土) 19:08:25ID:???
>>576

同感。
活発なMLってないの?
0578nobodyさん2007/05/14(月) 12:27:32ID:???
つGoogle-Maps-API-Japan
http://groups.google.com/group/Google-Maps-API-Japan

もっともこちらも2年で投稿数2333だけど
しかも、最近はほとんど投稿がない
0579nobodyさん2007/05/14(月) 12:30:41ID:???
>>578
あっ、漏れが入ったのが2年前で、立ち上げはそれ以前だから、
投稿数2333は2年でというわけじゃないかも
0580nobodyさん2007/05/14(月) 12:32:38ID:lshIf7AF
ホームページに設置しています。
ページを開いたとき「地図」で表示されますが、これを最初から「地図+写真」で表示できないのでしょうか?
0581nobodyさん2007/05/14(月) 12:57:48ID:???
>>580

map.setMapType(G_HYBRID_MAP)
05825802007/05/14(月) 13:50:52ID:???
>>581
できました。ありがとうございます。
0583nobodyさん2007/05/15(火) 08:59:07ID:???
>>579
所詮APIの使い方が分からない時に聞くくらいだから。
盛り上がったのは測地系のときくらいか。 あと女の子の質問と。
0584nobodyさん2007/05/17(木) 16:26:43ID:???
・マーカーに吹き出しを表示
・マップの読み込みと同時に吹き出しを表示
・複数のマーカーを表示

ここまでは問題なくできたが
・マップの読み込みと同時に複数のマーカーの吹き出しを同時に表示
を、なんとかして実現できんもんかなーと悩み中


openInfoWindowHtml を使う場合は1つしか無理なのはググって把握
複数の吹き出し、または吹き出しのような文字列を表示させる方法はないもんかな
それとも仕様上無理だったりするんだろうか
0585nobodyさん2007/05/20(日) 00:58:27ID:9hMwquKE
>>584
結構簡単だよ。

ところで、座標から住所を検索するのはどうやればいいの?
0586nobodyさん2007/05/20(日) 10:13:45ID:???
>>585
結構簡単だよ。

ところで、API単ではホイールズームは出来ないかな?
0587nobodyさん2007/05/20(日) 13:21:27ID:???
>>586
結構簡単だよ。

ところで、やらないか?


ホイールはjavascriptでどうにかなるものとそうではないものがある。自分専用なら問題ない。
0588nobodyさん2007/05/20(日) 22:38:28ID:9hMwquKE
結構簡単だよ。



アッー!!


0589nobodyさん2007/05/22(火) 02:18:54ID:???
>>585
「逆ジオコード」でぐぐってみたらいいかと。

>>586
GMap2オブジェクトにenableScrollWheelZoomがあるようです。使ったことないですが。

>>588
結構簡単だよ。

ンギモ(略
0590nobodyさん2007/05/23(水) 22:50:11ID:???
>>584
1年前俺が悩んだ疑問ktkr
こんなこと出来るわけねーだろ。どうやんのよw
0591nobodyさん2007/05/27(日) 14:54:26ID:???
吹き出しの形を変更することはできんのかな?
アイコンだけ?
0592nobodyさん2007/05/28(月) 14:48:13ID:vK8SFlEa
iframeでMAPを表示させた場合、MAP内でホイールズームしようとしたら親ウインドウがスクロールしてしまいますが、これを防ぐ方法はありませんかね?
0593nobodyさん2007/05/28(月) 14:58:51ID:???
iframe を使わない方向で検討すべし。

・・・ってか、iframe を使わなくちゃいけない環境が糞でしょう。
0594nobodyさん2007/05/28(月) 15:12:28ID:vK8SFlEa
自分用にはもちろんiframe使いませんが、他人のサイトに組み込んでもらうにはiframeが手っ取り早いのでは、と思ったので。
0595nobodyさん2007/05/28(月) 18:36:18ID:???
>>593-594
別にインラインフレームを使わなくて、ページ自体に埋め込んだとしても
ページ自体が長ければ、ホイールでページスクロールしちゃうけどね。
0596nobodyさん2007/05/29(火) 17:54:59ID:/AUpITV0
なんだ、結局分からないのかお前らw
0597nobodyさん2007/05/31(木) 00:12:22ID:siFbHg60
UTF-8で作ったのですが、吹き出しが文字化けします。
どうすればよいですか?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml";>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example</title>
0598nobodyさん2007/05/31(木) 01:02:15ID:OrA3ggIv
>>597
UTFで保存したか?
0599nobodyさん2007/06/03(日) 23:41:47ID:???
>>590
はてなわんわんワールドのやり方が一つの方法だな。
API使うのあきらめる。
今はもうちょっと簡単にできるよ。
0600nobodyさん2007/06/05(火) 00:03:13ID:bVNx6V7m
HTMLタグを地図上に貼り付け、移動したら位置を再計算、で引っ付くようにできる。
案外、コードも短いよ。
0601nobodyさん2007/06/07(木) 17:11:03ID:LzOGfiWx
結構簡単だよ
0602nobodyさん2007/06/25(月) 16:35:13ID:???
http://oshiete1.goo.ne.jp/qa3003824.html
上記ページを参考に
phpでデータベース上の住所をGoogle Mapで表示させたいのですが、

<body onload="load()">
<script type="text/javascript">
//<![CDATA[
var map = null;
var geocoder = null;
function load() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(35.67431, 139.69082), 13);
geocoder = new GClientGeocoder();
}}
window.onload = function(){ <?php print "showAddress(\"".$DBaddress."\")"; ?>; }
function showAddress(address) {
if (geocoder) { geocoder.getLatLng(
address, function(point) {
if (!point) {
alert(address + " not found");
} else {
map.setCenter(point, 13);
var marker = new GMarker(point);
map.addOverlay(marker);
marker.openInfoWindowHtml(address);
}});}}
//]]>
</script>

上記コードで、Operaでは動作しますが、IE及びFirefoxはGoogleMap自体が
表示されません。どうしたらよいでしょうか?
0603nobodyさん2007/06/25(月) 16:46:25ID:???
>>602
Firefoxの場合エラーコンソールを覗くと原因の分かる場合があります。
今回に限ったことじゃなく幅広いところで応用の利く発想なので一応。
06046022007/06/25(月) 17:30:39ID:???
>>603
ありがとうございます。
エラーコンソールを確認しましたが、
特にエラーは確認できませんでした。
0605nobodyさん2007/06/25(月) 17:48:18ID:???
>>604
シンプルな地図だけにしてもダメなのか?
0606nobodyさん2007/06/25(月) 18:11:30ID:It+rYoyZ
つーか、GoogleMAPのサーバが落ちてる。
Googleやっちゃった。
06076022007/06/25(月) 19:59:00ID:???
>>605
ありがとうございます。

window.onload = function(){ <?php print "showAddress(\"".$DBaddress."\")"; ?>; }

この部分を削ると、
問題なく表示されます。
0608nobodyさん2007/06/25(月) 22:24:56ID:???
>>607
それって load() の中じゃ駄目なの?
■ このスレッドは過去ログ倉庫に格納されています