あるプロジェクトの本番投入

今日は、あるプロジェクトの本番投入で、投入後の動作確認、打ち合わせの席上でユーザ皆さんから”分かりやすいユーザインターフェースですね”とお褒めの言葉を頂きました。またシステムフロー資料も良くできて分かりやすいと評価を頂きました。
(まあ、実際作成したのは私ではなくて、担当SE(女の子)なんですが)

作成時は、さりげないユーザインターフェース(ユーザが何も疑問を抱かないようなインターフェース)をこういうふうに作ってと、サンプルコードを担当SEに渡して、作ってくれました。(良くできています。ありがとです。)

また、システムフロー資料もユーザが理解でき、かつ作る側にも有用な資料を作ってくれました。
(何回の指導でここまでできたので、素養は十二分にあるかな。)

で、内心良くできてるなー、でもユーザさんは気が付かないだろうなーと思っていたのですが、なんと、”分かりやすいユーザインターフェースですね”と言って頂けたので嬉しかったです。

すごいですね、とかいいですねとか言われても、それほど感動しません、そういう仕様を満たすものを作ってるので。
こういうことは、過去たくさんのプロジェクトをやってきましたがそうは滅多に言われません。

ということで、ブログにメモ。。。

移転テスト

Bloggerにブログ移転しました。
[メモ]重要
BloggerのプロフィールをGoogle+ プロフィールに関連付けると、投稿者名が全て、本名に;;

・元に戻すには、
http://blog.m-y-p.com/2011/10/googlebloggergoogle.html
を参考に、
http://www.blogger.com/revert-profile.g で元に戻せた。 

・ウェブマスター ツールのサイトマップの追加は、
https://op.gy/blog_testatom.xml?redirect=false&max-results=1000
というようにすればOK
記事数をmax-results=に指定する。

SMAIL v4.16にバージョンアップしました。

UTF8に変換して送信できるようにしました。エンコードは8bitだけの予定でしたが、他の、メールクライアントを見てみるとbase64やquoted printableも対応しているようなのでこれも対応しました。SMAIL
【バージョンアップ内容】
 1) キャラクターセット:UTF8,エンコード 8bit/base64/quoted printableで送信対応


-c: -c
キャラクターセット:ISO-2022-JP エンコード 7bit (-c未指定時のデフォルトです。)
-cj
キャラクターセット:ISO-2022-JP エンコード 7bit
-cu8
キャラクターセット:UTF8 エンコード 8bit
-cub
キャラクターセット:UTF8 エンコード base64
-cuq
キャラクターセット:UTF8 エンコード quoted printable

[参考]
http://www.atmarkit.co.jp/ait/articles/0104/10/news002.html
http://ja.wikipedia.org/wiki/Quoted-printable

なばなの里 ウィンターイルミネーション 見てきました。

混雑を予想して、3時前に到着し園内を散策。今の時期は、しだれ梅が開花しています。
ぽかぽかようきだったので、ベンチでうとうと。
ウィンターイルミネーションは、6時10分点灯でした。相当な混雑&花粉症による涙目とくしゃみ・・・

SMAIL UTF8の対応

前回、「IBM拡張文字->NEC選定IBM拡張文字変換」に対応して、拡張文字の文字化け対応致しましたが、今度はUTF8変換にも対応予定です。
とりあえず目途がたったので、また週末に改修予定。。。あ、週末は旅行に行くんだった・・
[窓の杜ダイジェストニュース3/4]
http://www.forest.impress.co.jp/docs/digest/index201303.html

SMAIL改修方針:メモ
【utf-8対応】

1.本文:
1) charset=”utf-8″ 、content-Transfer-Encoding:は 8bitにして、
  8ビットバイナリ―コードで出力。

2.サブジェクト、漢字添付ファイル名、漢字ニックネーム
1) utf-8でMIMEエンコード
=?utf-8?B?xxxxxxxxxxxxxxxx=?=

※漢字ニックネームはフリー版では使えません。

3.添付ファイルは今まで通り。
1) content-transfer-encoding:base64

肝心のsjisからutf8への変換ですが、MultiByteToWideCharでCodePageにCP_UTF8を指定すればOK。
Windows CEは、CP_UTF8は未サポート。

SMAIL v4.15にバージョンアップしました。

SMAIL v4.15にバージョンアップしました。

【バージョンアップ内容】
 1) IBM拡張文字をNEC選定IBM拡張文字に自動変換する。(文字化け対策)
これの「mail : IBM拡張文字->NEC選定IBM拡張文字変換」対応です。
 2) openSSL 1.0.1eにライブラリをバージョンアップ。
セキュリティー対策
 3) -Bオプション 文字列を暗号化して表示するオプションを追加。
4) -xオプション htm,htmlの添付ファイルは、Content-Type:text/htmlとして出力する。

ここのところ忙しかったですが、やっとバージョンアップできました。

FireStorm Viewer のビルド & サイズ制限解除(1024mまでok,メッシュも)

前回、OSgrid(OpenSim)にインポートしたメッシュオブジェクトの東京スカイツリー(244m)をLSLスクリプトでなんとか643mにしましたが、今回スケールが250mオーバーのMESH対応のViewerをFireStorm Viewerを改造しビルドして1024mまで拡大できるようにしました。(これでどんなものでも、ほぼ好きに拡大できます。)

まず、FireStorm Viewerのソースコードとそれをコンパイルする環境が必要です。
こちらを参考に必要なソフトウエア
http://www.metaverse.jp.net/reports/recompile-of-sl-viewer/needed-software/
FireStorm Viewer のビルド環境の構築
http://www.metaverse.jp.net/reports/recompile-of-sl-viewer/firestorm/

・FireStorm の fmod(オーディオ関係のライブラリ)関連は手当しなくてもエラーしなかったので何もせず。ですのでオーディオがもしかして鳴らないかも。
・QuickTime SDKは入れなかったけどエラーしなかったので何もせず。
(もしかして、既に入れていたかも)で、ビルドバージョンは、4.3.1.32323ができました。
1024mまで拡大できます。無論secondlifeでは通用しませんが・・
opensim系で巨大建造物を作る方で欲しい方はこちらからダウンロードできます。
http://dip.picolix.jp/free/soft/firestorm-bin.zip
回答して、FireStorm ViewerのFirestorm-Release.exeにあるフォルダーにコピーして下さい。firestorm-bin.exeを実行すると、初期設定の後、普通に使えます。

改修内容:
C:tempttphoenix-firestorm-lgplindrallmathxform.h

元:
const F32 SL_DEFAULT_MAX_PRIM_SCALE = 64.f;
const F32 SL_DEFAULT_MAX_PRIM_SCALE_NO_MESH = 10.f;
const F32 OS_DEFAULT_MAX_PRIM_SCALE = 256.f;

修正:
const F32 SL_DEFAULT_MAX_PRIM_SCALE = 1024.f;
const F32 SL_DEFAULT_MAX_PRIM_SCALE_NO_MESH = 1024.f;
const F32 OS_DEFAULT_MAX_PRIM_SCALE = 1024.f;

↓REZ直後(左側のオブジェクト)

↓643mに拡大できます(目盛が800m以上あります。通常版は240mぐらいまで)

OSgirdのログイン&テレポートチェッカーを作ってみた

LibOpenMetaverseで、OSgirdのログイン&テレポートチェッカーlogininfo.exeを作ってみた
この前、OSGridの予期しないリスタートで、それにたまたま気が付いて、自プロセスも再スタートさせましたが、
もし気が付かなかったら、OSGridの中心街(10000,10000)に近いこともあり、場所を他の人にとられることもあります。
(その後気づいたのですが、MANIAXXのOSG48からもリスタート連絡が来ていました。ありがとうございます。)

logininfo.exeは、logintime.txt(テレポート時間とSIM名が記載)を生成するので、この内容を見て一定時間ログインできてなかったらメールするなり、プロセスを再起動するなりのスクリプトを作成すればいいかと思います。
(また、後ほど作成する予定)

[logininfo.exe] ダウンロードはこちら
1.OpenSim.exeのある場所にコピーする。
2.起動方法:
【Windows】
1) OpenSim.exeのある場所に移動。
2) logininfo.exe firstname secondname password “simname/128/128/40” “http://login.osgrid.org”
を実行。成功した場合、戻り値0が返ります。また同フォルダーにlogintime.txt(テレポート時間とSIM名が記載)を生成。
戻り値:
0:成功
1:失敗(ログインタイムアウト)
2:ログインできたものの該当SIMに行けず
3:失敗(その他の例外エラー)

C:projetcsopensim>logininfo.exe xxxx xxxxx xxxxxxx “aska/128/128/40” “http://login.osgrid.org”
Login:…xxxx xxxxx
Login success Welcome to OSGrid…
Teleported [aska]
Logout:…
C:projetcsopensim>echo %ERRORLEVEL%
0
C:projetcsopensim>type logintime.txt
2013/02/09 22:11:47
aska

C:projetcsopensim>logininfo.exe xxxx xxxxx xxxxxxx “1aska/128/128/40” “http://login.osgrid.org”
Login:…xxxx xxxxx
Login success Welcome to OSGrid…
Cannot teleport [1aska] now [Lbsa Plaza]
Logout:…

C:projetcsopensim>echo %ERRORLEVEL%
2

3) Windowsのタスクスケジュールにセットするときは、
タスクスケジュールを起動してスケジュールを登録します。15分置きの場合。

引数の追加(オプション)には、firstname secondname password “simname/128/128/40” “http://login.osgrid.org”
をセット。
開始(オプション)には、OpenSim.exeがあるディレクトリーをセット

成功すれば15分置きに、OpenSim.exeがあるディレクトリーにlogintime.txtが生成されます。

【Linux】
1) OpenSim.exeのある場所に移動。
2) /usr/local/bin/mono logininfo.exe firstname secondname password “simname/128/128/40” “http://login.osgrid.org”
を実行。戻り値等、windowsと同様です。

[root@www8054ue opensim]# /usr/local/bin/mono logininfo.exe xxxx xxxxx xxxxxxx “aska/128/128/40” “http://login.osgrid.org”
Login:…xxxx xxxxx
Login success Welcome to OSGrid…
Teleported [aska]
Logout:…
[root@www8054ue opensim]# echo $?
0

[root@www8054ue opensim]# /usr/local/bin/mono logininfo.exe xxxx xxxxx xxxxxxx “1aska/128/128/40” “http://login.osgrid.org”
Login:…xxxx xxxxx
Login success Welcome to OSGrid…
Cannot teleport [1aska] now [Lbsa Plaza]
Logout:…
[root@www8054ue opensim]# echo $?
2

LinuxnのCRONにセットするとき、
このまま、セットすると場合によってプロセスが残ったままになります。一応、タイムアウトで必ず終了するように作ってあるのですが、どういうわけか,終了しない場合があるので、以下のperlスクリプトで必ず終了するようにします。 osgrid_login.plをCRONにセットすればOKです。

[osgrid_login.pl]

#!/usr/bin/perl
chdir “/projects/opensim/”;

$cmd = ‘/usr/local/bin/mono logininfo.exe firstname secondname password “simname/128/128/40” “http://login.osgrid.org”‘;

$cmd_flg = 1;
eval{
local $SIG{ALRM} = sub {
$cmd_flg = -1; #error
die “alarmn”;
};
alarm(100);
$pid = fork;
if ($pid == 0) {
exec($cmd);
#$result = `$cmd`;
#print $? . “n”;
#print $result;
}else{
wait;
}
alarm(0);
};
if($cmd_flg == -1){
kill(9,$pid);
print “Time outn”;
wait;
}

execコマンドに修正(2/10)

肺のCTスキャン撮ってきました。

健康診断で肺に影があるということで、CTスキャン検査(2度目のCTスキャン)を受けてきました。
前回と変わらず、左下に5mm程の丸いものが・・・(大きくはなってないようです。)
で、先生曰くどうしますか?
え?
間をあけてCTスキャンを撮るか、またはFDG-PETのCTスキャンを撮るか?FDG-PETではより正確な判断ができるとのこと。良性か悪性なのか。
では、お願いしますということで、今行ってる病院では設備がないので紹介状を頂いて来週行ってくることに。しかし、このFDG-PET検査3万円もします。

画像・Viewerが入ったDVDを頂いた。診断時の説明の時、先生は5mmぐらいっていってたので、
実際このツールで診断の時に見た画像まで動かして図ってみると5mmぐらいでした。