2016年9月15日木曜日

TZ30 トラブル再び

もしここに書いてあるようにデジカメをいじるなら全て自己責任です。メーカー保証などの保証が受けられなくなると思います。いじる時にはそれなりの覚悟をもってやってください。ここの記事を参考にしたとか言われても責任はもてませんので,ご了解ください
 2016年9月に穂高岳山荘に泊まって,前穂高岳と奥穂高岳に登ってきた。 最近足腰を鍛えるために登山をしているが,ついに北アルプスに手を出して(足を出した?)しまった。 2016年8月には劔岳にも登ったのだが…。

 その際,当然写真を撮る。個人的には DMC-TZ60 も持っているのだが,一番新しいし,この間フラッシュのトラブルで珍しくお金を出して修理してもらった…,というのもあって,山に行く時には一個前の DMC-TZ30 を持って行っている。最初から雨が降るとわかっている場合には,さらに古い TZ10 を持ち出すのだが…。 今回は雨の予報ではなかったので,TZ30 を持って北アルプスに行ってみた。初日の最初こそ霧雨が降っていたが,その後,山の上に行くと晴れて絶好の登山日和となった。さらに2日目は朝から快晴で,真っ青な空をバックに見る山々はそれはそれは気持ちのいいものだった。特に,朝一番で穂高岳山荘から涸沢ヒュッテに下った後で飲んだ朝一番生ビールは美味しかったなぁ。

そこで撮った写真が右の一枚である。いやぁ,贅沢の一言に尽きるなぁ…。

2016年7月14日木曜日

OpenLayers 3 を使ってみよう(その20:Open Street Map を表示させる)

 これは,OpenLayers 3 を使ってみよう(その19:その9からその18までのまとめ)からの続きになる。 OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。 その13までのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その19:その9からその18までのまとめ)は, その9:KML データで経路を描画するからその18:Marker アニメーションまでをまとめたものを示した。 今回は Open Street Map を表示させてみよう。

2016年7月6日水曜日

OpenLayers 3 を使ってみよう(その19:その9からその18までのまとめ)

これはOpenLayers 3 を使ってみよう(その18:Marker アニメーション)からの続きである。
OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。
 その13までのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その18:Marker アニメーション)では,OpenLayers の Example に載っていた Marker を使ったアニメーション Marker Animation について書いた。 今回はその9:KML データで経路を描画するからその18:Marker アニメーションまでをまとめたものを示しておこう。 ただし,単にまとめただけではなく,マーカー表示の表示・非表示やセンターマークの表示・非表示などの動作をトグルスイッチに変えてみた。 また,アニメーションになった際には,カメラマークのマーカーは強制的に非表示にし,逆に KML 経路は強制的に表示するようにしてみた。 さらに,拡大・縮小のための関数を用意し,アニメーションが始まると,少し拡大して表示するようにした。 少し拡大して表示すると,点が移動していくと表示範囲からはみ出してしまう。 それを追いかけるために,点が表示範囲からはみ出すと,表示範囲を移動するようにもしてみた。

2016年7月3日日曜日

OpenLayers 3 を使ってみよう(その18:Marker アニメーション)

 これは,OpenLayers 3 を使ってみよう(その17:OpenLayers v3 で 経路の距離を測る)からの続きになる。 OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。
 その13までのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その17:OpenLayers v3 で 経路の距離を測る)は,OpenLayers の Example で見つけた Measure Example の情報から,距離の計算について書いてみた。 地図上の距離の計算には,個人的にはヒュベニの公式を使っていこうと思っているが,haversine 関数を用いるのも一計かもしれないと感じている。

 今回も OpenLayers の Example から,アニメーションのサンプル Marker Animation を見つけたので,挑戦してみた。 地図でのアニメーションはいつくか考えられるが,例えば,地図を回すとか,拡大・縮小をアニメーションで行うとかも考えられる。 ここでは,経路のスタートからゴールまでを黒い丸が進んでいく,というアニメーションである。 それを組み込んでみた。

 ポイントとしては,ol.render.Event クラスの postcompose というのを使うところ,みたい…(そんなにしっかりとわかっているわけじゃない…)。 後で示す JavaScript ファイルの最後の方にある「function startAnimation()」と「function stopAnimation()」という中で,postcompose というのが使われている。 そこでは「moveFeature()」という関数を呼び出して,実際に黒丸を動かしているみたい。

 それ以外のポイントとしては,サンプルと違って JavaScript ファイルを <body> の前に読み込ませている。 そのため,<body> を読み込んだ際に実行する init_map() という関数を定義している。 また,init_map() 以外で使う変数は global に定義しないといけなかった。 さらに,経路は KML 形式のファイルを読み込ませているが,読み込ませた KML ファイルのデータを使うには,
kml_vector.once('change',function() {
.....
}
のように,イベント処理を使わないとうまく処理ができなかった。

OpenLayers 3 を使ってみよう(その17:OpenLayers v3 で 経路の距離を測る)

 これは,OpenLayers 3 を使ってみよう(その16:OpenLayers v3 で Google Map と地理院地図を重ねる)からの続きになる。 OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。
 その13までのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その16:OpenLayers v3 で Google Map と地理院地図を重ねる)は,Google Map と地理院地図を重ねてみた。
今回は少し趣きを変えて,経路の距離を測る話について書こう。

 地図上の経路の距離に関しては,その5:テキストデータから折線データ読込みに少し書いた。 そこでは,ヒュベニの公式と呼ばれるものを使っていると書いた。 その部分のみ書き出すと以下のようになる(ここではその13:センターマークと凡例の表示・KML による経路+マーカーの場合でのルーチンを取り出している)。

2016年6月26日日曜日

OpenLayers 3 を使ってみよう(その16:OpenLayers v3 で Google Map と地理院地図を重ねる)

 これは,OpenLayers 3 を使ってみよう(その15:OpenLayers v3 で Google Map を表示)からの続きになる。 OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。
 その13までのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その15:OpenLayers v3 で Google Map を表示)は,Google Map を OpenLayers v3 を使って表示させる例について書いた。 今回は Google Map と地理院地図を OpenLayers v3 で重ねて表示してみよう。 ただ,やっていることはこれまでの投稿に載せたものを組み合わせただけなので,このブログを読めばできないことはないはずだが…。

2016年6月25日土曜日

OpenLayers 3 を使ってみよう(その15:OpenLayers v3 で Google Map を表示)

 これは,OpenLayers 3 を使ってみよう(その14:GPX による経路の表示・各点の通過時刻を知る)からの続きになる。 OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。
 その13までのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その14:GPX による経路の表示・各点の通過時刻を知る)は,GPX 形式の経路データファイルを OpenLayers を使って表示させる例について書いた。 今回は Google Map を OpenLayers v3 で表示する方法について書こう。 これは,OpenLayers 関連のメーリングリストに載っていたものだが,どこに載っていたのか忘れてしまった…。

2016年6月24日金曜日

GPSの経路ログ表示にGoogle Maps API V3 を使う (その9:表示範囲の自動設定)

その1:KML 形式ファイルを作る に目次があります。

前回のその8:InfoWindowの改良で一度終わりにしたが,追加の項目ができたので,記載する事にした。 今回追加したのは,表示範囲の自動設定,という内容である。 何かというと,KML 形式のデータを読み込むと地図の表示範囲を KML データがちょうど入るように自動で,中心座標と Zoom が調整される。 その後,手動で拡大や移動をした後に,最初の状態に戻したい時がある。 そのために,ボタンを押すと最初の状態に戻るように(自動で表示範囲を設定し直すように)した,というのが今回の内容である

2016年6月14日火曜日

GPS 経路データから求めた誤差について

 これまで,GPS で取得した経路データを Google Map や OpenLayers を用いて地図上にプロットしたり,経路上で撮影したデジカメのデータを地図上に配置したりしてきた。 その際,GPS で取得した経路データは Douglas-Peucker のアルゴリズムで間引いている。そのデータの間引きについては以前このブログに記載した (GPSのログを間引く(折れ線を間引く))。 また,間引いた後の GPS 経路データから,ヒュベニの公式を用いて距離を求めたり,地理院地図のデータから各点の高度情報を取得してルートの高度情報を得たりしている。 また,移動距離と高度情報から,斜面に沿った沿面距離を求めたりもしている。

 この2年ほど,六甲全山縦走路を歩いている。 毎年,春に1回,秋に数回歩き,これまで個人的に8回完走している。 そこで気になっているのが六甲全山縦走路の距離の問題である。 六甲全山縦走路の距離についてもこのブログに記載したことがあるが,神戸市のサイトには 56 km とあるが, GPS 経路データから求めると,約 45 km にしかならない。 沿面距離にしてもたかだか 1 km 程度増えるか増えないか,である。 さすがに 45 km が 56 km にはならないので,56 km の根拠が不思議でならない。 以前,神戸新聞でも話題になったようであるが,六甲全山縦走路を歩く人たちは実質 45 km と思っているみたいである。

2016年5月30日月曜日

OpenLayers 3 を使ってみよう(その14:GPX による経路の表示・各点の通過時刻を知る)

 少し時間が経過しているが,一応 OpenLayers 3 を使ってみよう(その13:センターマークと凡例の表示・KML による経路+マーカーの場合)からの続きになる。 OpenLayers 3 を使ってみよう(その0:はじめに:地理院地図を表示)に目次がある。
 これまでのページでは OpenLayers v3.7.0 で書いてきたが,ここでは OpenLayers 3.16.0 で書かれている。
 前回(その13:センターマークと凡例の表示・KML による経路+マーカーの場合)までは,KML 形式の経路データファイルを使って,地図上に経路を表示する例について書いてきた。 今回は GPX 形式の経路データファイルを使った経路の描画について書こうと思う。 GPX ファイルについての説明は,英語だが GPX 1.1 Schema Documentation を見てみて欲しい。