ほとんどどーでもいいツッコミですが。
右矢印とか下矢印とか1回だけクリックして、ポイントが地図からはみ出ない程度のスクロール後に、アイテム内の文字リンクをクリックしても、正確な中央に移動しませんでした。
どうやら,InfoWindowが開いているときにクリックすると中央に動いてくれないようです。一回閉じるといいのかな。
バグというほどではないので,気が向いたら試してみます。
オフライン
NP_GoogleMapsにあわせてNP_Mapblogを使い始めたのですが、このNP_Mapblogというのはどのような場所に使うのを想定しておられます?
というのは、説明にあったカテゴリーの絞込みを試してみたく、NP_GoogleMapsを使っているBlogのスキンにかいてみたところ、NP_Mapblogに指定するアイテム数と記事表示に指定するアイテム数を一緒にしても、そこに表示されている記事に含まれるものだけをMapBlogに表示するわけではなさそうなので。
もしかして、別にMapBlog専用のスキンを準備してポインタとMAPだけのページを作って使用するのでしょうか?
もしもそうでしたら、表示しているポインタのリンクリストをマップの下や横にでも表示できるとわかりやすいなと思いました。ポインタとマップだけのページですと閲覧者が、「あぁ、いろんなところにポインタが立ってるな」と思うだけで終わってしまいそうなので。
あと、表示アイテムの指定をするとリンクスイッチが表示されるのをみて思ったのですが、その画面にGoogleMapsが提供しているアルファベット付きのポインタとリンクリスト表示をつけると、GoogleMapsのローカル検索の結果画面のようになりそうですね。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
GoogleMaps0.85,MapBlog0.33にバージョンアップしてリンクを試してみましたが、以下の問題が発生しました。
私の環境は文字コードがEUCですので、それ関連かもしれません。
これまで正常に表示できていた、popup画面のInfoWindowの内容が「%E5%9C%9F%E6%9C%A8%E5%9C%9F%E6%9C%」のような文字になってしまいました。
また、アイテム内で<%gmap(link~)%>指定をし、<%gmapitem(popup(~%>指定でポップアップで表示させると、javascriptエラーが出て正常に表示できません。そのウィンドウのソースを表示させてみると、infoの文字コードがEUCのままわたってしまっているようです。
これはInlineのときは問題ありません。
以上ご報告まで。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
というのは、説明にあったカテゴリーの絞込みを試してみたく、NP_GoogleMapsを使っているBlogのスキンにかいてみたところ、NP_Mapblogに指定するアイテム数と記事表示に指定するアイテム数を一緒にしても、そこに表示されている記事に含まれるものだけをMapBlogに表示するわけではなさそうなので。
現状の仕様は,アイテム数ではなく,地図上のマーカーの数になっています。ただ,おっしゃるようにこれではちょっと使いにくい面があるので,アイテム数にできないかどうか検討してみます。
(JavaScriptだけでなくSQLもよく知らないので,いろいろ苦戦しています :cry: )。
下の文字化けの件も調べて見ます。しばしお待ちを。
オフライン
現状の仕様は,アイテム数ではなく,地図上のマーカーの数になっています。ただ,おっしゃるようにこれではちょっと使いにくい面があるので,アイテム数にできないかどうか検討してみます。
どうもありがとうございます。ただアイテム数にすると、<%blog%>などと連動させて、表示記事の中のポイントを地図に表示するという使い方ができそうな反面、表示した記事の中で<%gmap%>が1つもない記事の扱いが難しくなりそうですね。
また、現在のアイテム数でなくマーカー数で指定できるというのも便利だと思いますので、現状でもそれほど問題ではないと思います。この場合、表示するカテゴリも引数などで指定できたらありがたいなと。
下の文字化けの件も調べて見ます。しばしお待ちを。
よろしくお願いします。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
557行目からを
if ($params[1] == 'inline') {
$map["info$i"] = $coord['info'];
} else {
if (function_exists(mb_convert_encoding))
$coord['info'] = mb_convert_encoding($coord['info'], 'UTF-8', _CHARSET);
$map["info$i"] = $coord['info'];
}
としてみてください。
オフライン
おおお、ばっちりです。やっとLinkタイプを体験できました。今までのポップアップの文字も問題なく表示されます。
少し試して気がついたのですが、記事の本文のほうに<%gmap(link~)%>が有り、続き(<%more%>)のほうにに<%gmapitem%>がある状態でインデックスページを開くとjavascriptエラーが発生します。
これは記事に<%gmap(link~)%>があるのに、<%gmapitem%>が無いと認識される状況なのでしょうね。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
MapBlog0.6を公開しました。
http://www.matsubarafamily.com/lab/item/77
です。
新たに,まみお(Nakahara21)さんのMultipleCategories(無限階層版)とTagEXによる絞込みに対応しました。また,サクラキャンドルさんからリクエストがあったページスイッチのアイテム数モードを新設しました。
少し試して気がついたのですが、記事の本文のほうに<%gmap(link~)%>が有り、続き(<%more%>)のほうにに<%gmapitem%>がある状態でインデックスページを開くとjavascriptエラーが発生します。
これは記事に<%gmap(link~)%>があるのに、<%gmapitem%>が無いと認識される状況なのでしょうね。
そうです。これに対処するのは困難なので仕様ということでご容赦ください。
オフライン
MapBlog0.6を公開しました。
テンプレートをスキン内に書く、というのはいいですね!MTみたい...
そうです。これに対処するのは困難なので仕様ということでご容赦ください。
$currentTemplateが再利用できるので、
$template =& $manager->getTemplate($currentTemplateName);
するとか、直接sql書いて、テンプレートのアイテムの本体を参照して、<%more%>をeregして、分岐させるというのはどうでしょう。
FALSEの場合はリンクを生成しないのか、違うjavascriptを使わせるのか、その辺はわかんないですけど。
nakahara21
http://nakahara21.com/
(ただいま調整中です)
オフライン
$currentTemplateが再利用できるので、
$template =& $manager->getTemplate($currentTemplateName);
するとか、直接sql書いて、テンプレートのアイテムの本体を参照して、<%more%>をeregして、分岐させるというのはどうでしょう。
FALSEの場合はリンクを生成しないのか、違うjavascriptを使わせるのか、その辺はわかんないですけど。
gmapitemがあるかどうか先に調べて,ないときにはgmapのリンクタイプは無視するという形にすればできないことはないのです。ただ,地図がないのに地図へのリンクを置く意味があると思えないので,それへの対処のためにあまり手間(プログラミングの手間でなく,処理が増えること)をかけたくないのです。
ちなみにリンクタイプでgmapitemをポップアップにして,リンク文字列を空にしておくと,本文中には地図を出すリンクがなく,文字列をクリックしたときにだけポップアップするってこともできます。
オフライン
おぉ、早速ダウンロードさせていただき、試してみます。
MapBlog0.6を公開しました。
http://www.matsubarafamily.com/lab/item/77
です。
新たに,まみお(Nakahara21)さんのMultipleCategories(無限階層版)とTagEXによる絞込みに対応しました。また,サクラキャンドルさんからリクエストがあったページスイッチのアイテム数モードを新設しました。
TagEXですか。面白そうですが、MagicalURLに導入するのはちと作業が必要そうですね。
ちなみにリンクタイプでgmapitemをポップアップにして,リンク文字列を空にしておくと,本文中には地図を出すリンクがなく,文字列をクリックしたときにだけポップアップするってこともできます。
は、こんな使い方があったのか。
記事にどうやってgmapitemを入れようかとか考えていたのですが、これなら単純でよさそうです。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
アイテム数表示モードを使用して、Google Mapsを使っているカテゴリーにMapBlogを追加してみました。
ページスイッチが記事と連動するのは面白いですねえ。すばらしい。
うちでは、こんなふうに使っています。
http://juntwo.s57.xrea.com/diary/catid_10.html
これにあわせて、少し気になったところを修正しています。
アイテム数表示を指定した場合、その範囲にNP_GoogleMapsの指定が1つも無い時にエラーが出ます。
NP_MapBlog.phpの501行目付近
ob_start(array (&$this, 'callback'));
$b->showUsingQuery($template, $query.$from.$where, '', 0, 0);
ob_end_flush();
eval($this->code);
$map['p'] = $this->pointnumber;
for ($i = 0; $i < $this->pointnumber; $i++ ) {
$map["info$i"] = preg_replace('/\r|\n/', ' ', $map["info$i"]);
}
echo $this->gmapplugin->addInlineMap($map);
の部分を
ob_start(array (&$this, 'callback'));
$inum = $b->showUsingQuery($template, $query.$from.$where, '', 0, 0);
ob_end_flush();
if($inum != 0 ) {
eval($this->code);
$map['p'] = $this->pointnumber;
for ($i = 0; $i < $this->pointnumber; $i++ ) {
$map["info$i"] = preg_replace('/\r|\n/', ' ', $map["info$i"]);
}
echo $this->gmapplugin->addInlineMap($map);
}
に変更して、記事が無い時にはMAP表示をしないようにしました。
また、表示範囲のY方向で、一番上にあるポインタが画面外に出てしまう(ポインタの根元は画面内に入っている)ようです。
これは、NP_GoogleMaps.phpの422行目付近
$centery = ($top + $bottom) / 2;
を
$centery = ($top + $bottom + 0.01) / 2;
のように、Y方向の中心を少しずらして表示するようにしました。
以上、もっと良い方法があればよろしくお願いします。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
使用例と修正,ありがとうございます。次回の更新に取り入れたいと思います。
オフライン
すいません、bookmarkletについて質問です。
最近Google Maps(APIでないほう)の仕様が変わったかなにかで、測地系が変わってしまったようです。
実はわたし、bookmarkletは一番最初のものを改造して使っておりまして、Google Mapsの座標をそのまま取り込むようにして使っていました。(この場合、測地系は東京系?になるようなので、NP_GoogleMapsでは、WPointを使わずにそのまま出力する改造をしていました。)
測地系が変わったことにあわせて、最新のbookmarkletにバージョンアップしようとダウンロードしてみたのですが、測地系の変換はどのようにしていますか?確か最初のバージョンではお気に入りに入れたbookmarkletにif文で変換式が適用されていたのですが、新しいものでは発見することができませんでした。
ちょっと使ってみたのですが、Google Mapsの緯度・経度と同一の値が出ているように見えますが、このまま使ってもずれないようになったのですかね?
#今後Google Maps APIの仕様もこれにあわせて代わってしまうのですかね。
#わたしの手元の座標データは東京系ばかりなので、代わってしまうと困ってしまう。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
ブックマークレットでは東京系で値が出てきたときに世界系に変換するようになっています。
聞いている話ではGoogle Mapsのサイトは日本でも世界系の座標を使うようになりましたが,
Google Maps APIの方は従来どおりだということです。
ブックマークレットでGoogleと同じ座標になるということは,それを裏付けていると思います。
オフライン
ブックマークレットでは東京系で値が出てきたときに世界系に変換するようになっています。
聞いている話ではGoogle Mapsのサイトは日本でも世界系の座標を使うようになりましたが,
Google Maps APIの方は従来どおりだということです。
ブックマークレットでGoogleと同じ座標になるということは,それを裏付けていると思います。
Googleの仕様変更の方は多分そのようですね。NP_GoogleMapsの座標系は世界系が基本のようなので、この仕様変更はかえってよいかも知れませんね。
上の質問は、わたしのもっている東京系の座標データを世界系に変換するためにbookmarkletを参考にしようと思ってしたものです。結局、ソースのどのあたりでそれをやっているのか発見できませんでした。
現在はちょっとプラグインにパラメータを追加して、
東京系の座標の場合→そのままGPointに入力。
世界系の座標の場合→Wpointを使用する。
という改造をしました。
でもこれは本来の使い方からずれる話でしたね。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
上の質問は、わたしのもっている東京系の座標データを世界系に変換するためにbookmarkletを参考にしようと思ってしたものです。結局、ソースのどのあたりでそれをやっているのか発見できませんでした。
確かに :cry:
今のコードではその部分なくなってしまってますねえ。
以前のコードにあった
if(_SATELLITE_TYPE.japanDatumHack&&bmxy.x>115&&bmxy.x<152&&bmxy.y>30&&bmxy.y<50) {bmxy.x-=0.0032027777777777775;bmxy.y+=0.003236111111111111;}
がそれに相当します。
オフライン
以前のコードにあった
if(_SATELLITE_TYPE.japanDatumHack&&bmxy.x>115&&bmxy.x<152&&bmxy.y>30&&bmxy.y<50) {bmxy.x-=0.0032027777777777775;bmxy.y+=0.003236111111111111;}
がそれに相当します。
了解です。この式はNP_GoogleMapsに同封のwgsgmap.js内にあるコードに近いですね。
あわせてポインタの座標の確認をしていたのですが、NP_MapBlogsの表示と、NP_GoogleMapsでポインタに微妙なずれが発生します。原因はまだ確定できていないのですが、どうも座標の桁落ちが原因ではないかと思っています。
phpMyAdminを使用して、nucleus_plugin_mapblogテーブルに保存されている座標情報を見ると、longitude =139.774 latitude=35.6976 のように、有効数字6桁に丸められてしまっているようです。この部分、最低小数点以下4桁は無いと誤差が大きくなってしまうと思うのですがどうでしょう?
この問題を回避するのは、サーバ側のMySQLの設定を変えることになってしまうのでしょうか?
#なんだか問題報告ばかりですいません。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
今は単にFLOATとしているのですが,これをDOUBLE PRECISIONに変えるか
FLOAT(8, 10)といった形でバイト数と桁数を指定する形に変えるといいかもしれません。
オフライン
パックなしのDECIMALはどうでしょう?
nakahara21
http://nakahara21.com/
(ただいま調整中です)
オフライン
DOUBLEを使うように修正してみました。
MapBlogとGoogleMapsが関連します(GoogleMapsはgeocodingを使う場合)
ファイルを上書きして,プラグイン管理画面で「登録リストのアップデート」をしてください。
オフライン
DOUBLEを使うように修正してみました。
MapBlogとGoogleMapsが関連します(GoogleMapsはgeocodingを使う場合)
ファイルを上書きして,プラグイン管理画面で「登録リストのアップデート」をしてください。
ばっちりです。ずれがきれいに解消されました。どうもありがとうございます。
数値は登録しなおしを覚悟していたのですが、ボタンクリックひとつだったのはかなり助かりました。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
Googleローカルに続いてGoogle Maps APIも12月から世界測地系に変更になるそうです。
参照
NP_GoogleMapsは当初から世界測地系を使っているので,
サクラキャンドルさんのように修正している方以外はそのままのデータで
大丈夫です。ただし,現在使っている,日本の測地系と変換する部分がもしかしたら
問題を起こすかもしれません。
一応11月30日に新版を出して変換ルーチンは取り除くつもりですが,
その旨ご了承ください。
オフライン
やっぱりきましたか。
というか、世界測地系で統一されている方が自然ではありますね。
現在BookMarkletを新しくしたこととあわせて、新しく入力している方は世界測地なんでその部分は良いんですが、週末にでもどうするか考えて見ます。
農場主の日常(管理人blog)
http://nojomaster.com/
オフライン
色々楽しそうな事が出来そうなプラグインで、
大変楽しく弄らせていただいております。
ちょっと気になったので報告です。
件名の通りなのですが、
首里城をgmap_bookmarkletで取得してNP_GoogleMapsで表示してみたところ、
ポインタの位置がgmap_bookmarkletで指定した位置に比べてやや北西にずれます。
(添付画像参照)
本来ですとポインタの位置はお城のアイコンのすぐそばに来るはずなのですが。
環境はSleipnir2.0+Google Maps0.87+gmap_bookmarkletです。
IE6.0+Google Maps0.87+gmap_bookmarkletでも同様の現象が起きました。
オフライン