Linuxを中心とした話題を投稿予定。 使用ディストリビューションであるFedoraが中心になると思われます。http://oedipa.wiki.fc2.com/にてTips Wikiを公開してます。
完成形に近づいてきた(見た目だけ)
とりあえずGUI部分のひな形はほぼ完成。.NETだとMDIもこんなに簡単にできるのかとしばし放心w 唯一残念だったのはMDI子フォームをタイル状に配置する方法が分からなかったことくらいかなぁ。上下、水平方向に並べるのは用意されてるのになんでタイル状がないかね・・・。まぁそこはさほど問題にはならないと思うからほっとこう。
さて、見た目に関してはほぼ完成したので、いよいよ中身の実装ですね。今のところはC++で組もうと思っているけれど・・・、まーこの研究を後輩が引き継ぐこともないだろうし、後輩が私のプログラムを参考にすることもないだろう、うん。
あ~ついでにグラフ描画もやりやすいようにクラス化しておいた方がよさげやな~。いや、スケルトンをコメント化しておいとけばいいか。軸とかラベルさえ用意しておけばあとは配列受け取るだけだしな。
ま、問題は実装の方やけど・・・、あぁいやそれ以外にもグラフ描画をアニメーションさせるからFPSは考えないといけないし配列の要素番号と軸の目盛ラベルが一致しないからそこも動的に変化させないといけないし・・・。
ふむ、もう少し下準備が必要っぽいな。ま、ぼちぼちやりますかね!
[続きを読む...]
スポンサーサイト



少し文明人に近づいたんだぜ?
WAVEファイルの読み出し部分はできたので、今度はGUI部分。
ってなわけで、いかにしてグラフ描画をするか、そこを中心にずっと考えてたんですね。一応ベースとなるアプリというか、「これを作りたい!」ってアプリはあるのですが、そいつが中々ハードな作りしてるんですよねぇ。
研究で使ってるアプリなんですが、騒音源や制御音の周波数スペクトルやら何やらをグラフ表示できる作りになって居るんです。MDIで!
ハードルたけぇよほんとに・・・><
まー無理にクローンを作ろうとしなくてもいいのはいいんですが、どうせなら同等機能を持つ物を作りたいなと。
で、C#のGraphicsクラスとかを調べて、描画させる方法を覚えたはよかったけれど、実にめんどくさい!!!!
まぁ、私が流儀になれていないってのが一番大きいんですけれどね^^; 低レベル処理ってのはやっぱり面倒だ・・・。やっぱ慣れていかないといかんのだろうなぁ・・・。座標決めうちで処理するってのはどーも苦手だ。今までグラフィック系を扱ってこなかったってのもあるけどさ。座標変換をうまく使えばクライアント領域を好きに座標指定できるんだろうけど、座標軸やラベル、凡例とかのオフセットやらなんやらを考慮してたら頭こんがらがってきちゃった;;
で、ふと思ったわけですよ。
「グラフ描画なんて誰もが欲しがる機能なんだし、公開されてるんじゃね?」
あったよ普通に。
いやまぁあるよねそりゃやっぱり・・・^^; もっと早くに気づけよ自分Orz
と、いうことでNPlotという.NETクラスライブラリを見つけてきました。非常に手軽にグラフ描画が出来る優れもの。Graphicsクラスオブジェクトで描画してくれるってことで、画像保存もお手軽だったり(ただしBMP系だけで、ベクタ系が保存できないのが残念)。とりあえずMDIはよく分からないけどグラフ描画だけならこれで超お手軽に片付きそうなのでさくっと作ってしまおうかと思ってます。道具の使い方を覚えてちょっと文明人に近づいた!?
これでシミュレータのフロントエンドはかなり完成形が見えてきました。後は実装だなぁ。C++で組んで、C++/CLIでラップしてC#のGUIで動かすって手法が@itに載ってたから、最終的にはそこを目指してみようかしら。
とりあえず明日はグラフ部分の完成とできたら簡単なシミュレーションまで持って行くことを目標としよう^^