log変換のアプリをとりあえず、”Michi”と命名。
「路」そのまんまです。
htmlのテンプレートを作って、ページを生成するようにしたら、
Freeにして公開しようかしら。
残りの機能はゆっくり追加していく所存です。
今はこんな感じ。
例 → 散策
今日のお散歩記録
Ubuntu 9.04 事始め
Ubuntu 9.04が出ていたので試してみた。
HP 2133では8.10と同じように xforcevesaオプションでインストールができた。
しかし、予想通りインストール後の解像度は1280×720になっていた。
VIA Chromeのドライバはまだ出ていない。
8.10のドライバを少しだけ試してみたがダメっぽい。
ちょっとだけ遊んでみましたが、
ログイン画面やメッセージOSDはあか抜けて、好きですね。
話題の起動速度ですが、「画期的に」と言うほどではない感じ。
問題はAmarokが2.0になっていたこと。
iPod対応が???なので、
HP 2133では、まだしばらく8.10を使うことにする。
空いているマシン一台をUbuntu 9.04にした。
追記: 2009.5.6
実際にHP 2133でUbuntu 9.04を常用してみると…
起動時間はやはり速くなっています。
体感的に1~2割くらい?
GPSログ -高度の記録をグラフで出力する 続き
コードはこんな感じ
protected void SaveGraph( String filename )
{
int count = this.pos.Count;
int [] source = new int[count];
int [] dist = new int[count];
int posIndex;
for (posIndex = 0; posIndex < count; posIndex++)
{
source[posIndex] = (int)altitude[posIndex];
dist[posIndex] = (int)distance[posIndex];
}
Bitmap bitmap = new Bitmap(700, 300);
Graphics g = Graphics.FromImage(bitmap);
g.FillRectangle(Brushes.White, 0, 0, bitmap.Width, bitmap.Height );
NPlot.Bitmap.PlotSurface2D surface = new PlotSurface2D(bitmap);
NPlot.StepPlot plot = new NPlot.StepPlot();
plot.Pen.Color = Color.FromArgb(16, 128, 255);
plot.DataSource = source;
plot.AbscissaData = dist;
surface.Add(plot);
surface.YAxis1.WorldMin = 0;
surface.YAxis1.Label = "高度 (m)";
surface.XAxis1.Label = "走行距離 (m)";
surface.Refresh();
bitmap.Save( filename, ImageFormat.Jpeg );
}
結果はこんな感じ

ログはこんな感じ
GPSログ -高度の記録をグラフで出力する
NPlotが.netやmonoで使えそうなので試してみた.
参考:.NETグラフライブラリ「NPlot」 (Database tearoomの夜明け)
■MonoDevelopでNPlotを使用する準備
1. NPlotのホームページから最新のnplot-0.9.10.0.zipをダウンロード
2. nplot-0.9.10.0.zipを適当なフォルダに展開
binフォルダ以下には, netに並んでmonoフォルダも用意されています
3. MonoDevelopを開いて(プロジェクト)を開く
4. ソリューション ビューで(プロジェクトの)参照を右クリックして「参照アセンブリの編集」を選択
5. 「.NETアセンブリ」タブを選択
6. 2.で展開した nplot-0.9.10.0/bin/mono/2.0/release/NPlot.dllを選択して追加する
7. 実行ファイルのフォルダにNPlot.dllをコピーしておく
試しにソースに次を設定して,コンパイルが通りました.
using NPlot.Bitmap;
当面の目的はWindows.Formに表示するのではなく,
画像ファイルに出力してhtmlに表示できるようにすること.
■サンプルプログラム
using System.Drawing;
using System.Drawing.Imaging;
using NPlot.Bitmap;
int [] source = { ,,, };
Bitmap bitmap = new Bitmap(500, 250);
NPlot.Bitmap.PlotSurface2D surface = new PlotSurface2D(bitmap);
NPlot.HistogramPlot plot = new NPlot.HistogramPlot();
plot.DataSource = source;
surface.Add(plot);
surface.Refresh();
bitmap.Save( “aaa.bmp”, ImageFormat.Bmp );
結果は下のように.

とりあえずはグラフが出せました.
色々と整形が必要ですね.
USBカメラその後
GPSログの処理 2
少し進展。
A, B点があった場合に、その距離をd(A, B)とする。
「d(A, C) * 1.2 < d(A, B) + d(B, C) の場合にはB点を省く。」 というルールでルートを縮約します。 結果、少し改善されたようです。
→ 
上記の方法だと、コーナーではどうしてもルートを丸めてしまうので、
距離が少なめに評価されてしまいます。
ログそのままだと距離が長めに評価されるので、それよりはいいと思ってますが。
// total distance
20.064 km → 19.774 km
走行距離は1.5%くらい短くなりました。
春はじめました
手取キャニオンロード 往路 20km分
金曜日には金沢でも桜の開花宣言がでました。
土曜日にようやく自転車で走れました!
13度くらいまで気温はあがったけど、体質なのか、
走り出しても体温が上がらず、筋肉が硬く悪循環。
帰ってからすぐに風呂に入りました。
ログ出力は未完成もいいところですが、使用を始めます。
現在は走行距離の計算ルーチンを作成中。
どうしても多めに積算されるので、インテリジェントに処理したいところ。
USBカメラ デビュー

興味本位で共立電子の「USBカメラ フラット モジュール」を買ってみた。
3,360円 + 送料。
製品ページ: WR-UC32
前情報どおり、ubuntuでも差すだけで使えた。
とりあえず、Skypeでも動作を確認できるが、
cheeseというアプリでも簡単に遊べる。
> sudo apt-get install cheese
静止画や動画をキャプチャできる。
カメラはいい感じに小さくて、
カバーを付けれて、ケーブルをなんとかすれば、そのまま外付けUSBカメラになる。
何となれば、HP 2133(スタンダード モデル)に内臓できそうなサイズです。
分解できればやってみたい気もする。
IE でJSONPを使うとき、2,083文字を超えると無視される。
IE でJSONPを使うとき、2,083文字を超えると無視される。
参考: Maximum URL length is 2,083 characters in Internet Explorer
参考: IEのGETクエリの最大長制限を思い知る – F.Ko-Jiの「一秒後は未来」
脱Windowsまで何マイル?
MonoDevelop面白いですね。
でもブレークポイント(ブックマーク)が効かない…
ubuntu 8.10では MonoDevelop 1.9が入るらしいです。
# バージョン表示は1.0
2.0 alpha 2ではブレークできるらしいので、しばらくの辛抱かな?
それまでは、Console.WriteLineでなんとかしましょう。
とりあえず、GPS-CS3のログを読み込んで、ルートを整形するだけはできました。
→ ログ
コースは正常にとれているようですね、
って、位置が全然違うよ。
正しくは→ ログ の赤線です。
データはWGS84、Google MapsのデフォルトもWGS84だったはず?
まぁ、とりあえず、ubuntuだけでできるメドが立ったので、
これからゆっくり進めていきます。
追記:
緯度経度の度分秒の分秒を変換していなかったので、修正。
テストではWadachiが吐き出したhtmlをベースにしているので、
ここら辺は、自分用にカスタマイズ可能な形で作りたい。
また、時々ポイントがピョッとワープするので、これをインテリジェントに取り除きたい。

