2011年3月22日火曜日

Processing環境が戻りつつ

震災関連で仕事が多忙を極めてたので、なかなかProcessing関連手を付けられずにいたのですが、
ようやく落ち着きが戻って来て、こちらの作業もできるようになってきたました。

とりあえず一部ですが昔のProcesssingのソースが動くことを確認。
さて、これから開発環境を立て直す必要が。。。
かなり忘れてる。。。。1つ1つ思いだしながらなので、時間がかかってます。

メタセコライブラリが変な件を直すのとProcessing1.2でもBullet動かすのが目標なので、
地道にやっていきます。
あの頃なんで出来てたんだろう。神がかってたのかな自分(汗

2011年3月16日水曜日

バッチファイルあれこれ

最近のバッチファイルはいろいろできるなあと関心。

日付時間をファイル名につける方法(※1)

普通にやると、1ケタの時は十の位にスペースが入るので、

===========================================
>echo %time:~0,2%%time:~3,2%%time:~6,2%
11204 …置換しない場合は、このように先頭に空白文字が含まれる

>set time2=%time: =0% …いったん一時変数に入れて置換する

>echo %time2:~0,2%%time2:~3,2%%time2:~6,2%
011204 …先頭に空白文字は含まれず、必ず数字が入る
===========================================
てな感じにしてやると良い。

で、結局は、
===========================================
set datef=%date:~-10,4%%date:~-5,2%%date:~-2,2%
set time2=%time: =0% …いったん一時変数に入れて置換する
set hh=%time2:~0,2%
set fname=%datef%%time2:~0,2%%time2:~3,2%%time2:~6,2%
===========================================
とすると、ファイル名が自動生成できる。


昔は演算できたのかな?と思うのだけど、
イマドキのバッチファイルは演算が可能(※2)

==============
set /a %a% -2
==============
の用に、「/a」オプションをつけてやることで、演算ができる。

==============
set a=10
set /a %a% -2
echo %a%
==============
→8が表示される。

そのほか、条件文も結構ちゃんと書けます。
条件演算子が不等号ではなく、
-----
EQU - 等しい
NEQ - 等しくない
LSS - より小さい
LEQ - 以下
GTR - より大きい
GEQ - 以上
--------
となるのが、普通と違うところ。要チェックですね。。
等しいは、”==”でも行けるみたいですがね。(※3)


「コマンドプロンプトで1行に複数のコマンドを書くには、&を使う」
==========
dir /? & dir
==========
とかね(※4)


「ファイルの内容を比較して、相違があったら(なかったら)処理をする動作」
 FCの場合だと、2つのファイルがまったく同一なら2行目に「FC: 相違点は検出されませんでした」という文字列が出力される事を利用して、ファイル内容が同一だったら分岐という事を考えます。

=============
FC TEST1.TXT TEST2.TXT>RESULT.TXT
FOR /F "skip=1 tokens=2" %%F IN (RESULT.TXT) DO IF %%F.==相違点は検出されませんでした. ECHO SAM
=============
てな感じ。ECHO SAMの所を処理に置き換えればOK(※5)

(参考文献)
※1:バッチ・ファイル中で日付をファイル名に使用する
http://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html

※2:DOSバッチファイルでの計算(算術演算)方法
DOSバッチファイルでの足し算、引き算、掛け算、割り算の方法。
http://www.ylw.mmtr.or.jp/~jkondou/program/doskeisan.htm

※3:バッチ プログラム中で条件処理を実行します。
http://www.colorconsole.de/console/ja/038.htm

※4:コマンドプロンプトで1行に複数のコマンドを書くには、&を使う
http://d.hatena.ne.jp/ku__ra__ge/20081009/p7

※5:比較したファイルの内容が異なるかどうかで条件分岐させるには
http://fpcu.on.coocan.jp/dosvcmd/bbs/log/fccomp/1-0456.html

2011年3月2日水曜日

復活します。。。

ご無沙汰しております。。。。

米国留学から日本へもどり、職場へ復帰して結構な時間が経つのですが、
ソースコードを扱う機会が出てきたのと、ちょい無償開発とかしてる関係で、こちらも復帰しようかと思っています。

現在公開している、Processing用のメタセコライブラリも、動作の問い合わせなど頂いていますので、
自宅の環境を再構築しつつ、メンテナンス再開していこうと思います。

Processingも1.2となったり、自宅の環境が64ビット化したりと、
開発をしていた頃の状況にもどすにはちょっと時間を要しそうですが、(脳みそも)
別件で行っていたc#を用いた画像処理ちょいコマンドラインツール(バッチファイルでの利用目的)開発など、
何個か公開できるものがあるので、そちらも平行していこうと思っています。

にしても、JBulletがうまく動かない・・・・・。
そこではまってても意味が無いので、BPSGRやメタセコローダの環境だけでも早く元にもどそうかな。。。

ついでなので、Win7環境でのProcessingの開発環境の整え方とかも、
書いていけばいいんだなと思う今日この頃です。
本業もなかなか多忙なので、マイペースになりますが、
今後ともよろしくお願いいたします