忍者ブログ
日々の活動記録や、暇つぶしなどなど
[292]  [291]  [290]  [289]  [288]  [287]  [286]  [285]  [284]  [283]  [282
2024/04/25 (Thu) 00:15
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

2009/06/12 (Fri) 01:43
今日は結構進んだからイメージでもアップするか…
と思ったんだけど、見た目にはまったく変化なかったからやめたorz

VC++で作ってたんだけども、いろいろめんどくさくなってVC#に移行。
Windowsで計算速度を気にしないアプリ作るならC#に限ると思う。

それはさておき、無事にOpenGLの描画をC#でできた。
前に作ったビューワも全部移植完了。
けどソースを見直すと頭が悪いところが何箇所か…
とりあえず動いてるから後回し。
C#でOpenGL使うときに参考にしたところ。
http://sky.geocities.jp/freakish_osprey/opengl/opengl_menu.htm
HTMLは省略気味に書かれているのでサンプルソースを見るほうが理解が早い。
けど、引っかかったのがユーザコントロール関係。
ここの例ではOpenGLを描画する領域をユーザコントロールとして作っているのだけれどもVS2008でユーザコントロールが表示されない。
いろいろぐぐった結果VSの
ツール→オプション→Windowsフォームデザイナ→全般
にあるAutoToolboxPopulateがFalseになっていたため、ユーザコントロールが追加されなかったらしい。
ここをtrueにして解決。つーか標準でtrueにしとけよなぁ。

次にやったのが設定ファイル関係。
UDPのポート情報とかシリアルの設定とかを保存できるようにしたかったので、それを設定ファイルとしておくことにした。
最初はiniファイルをテキストで作ればいいかなぁ、と思ってたけど調べてみるC#にはxmlをいじるクラスがあるではないか。
ということでxmlで設定ファイルを記述するようにしてみた。
参考は
http://msdn.microsoft.com/ja-jp/academic/cc987569.aspx
とか
http://msdn.microsoft.com/ja-jp/academic/cc987570.aspx
とか。
意外とC#でXMLを扱う方法について記述されているホームページが少なかった。
まともなサンプルが載っているところがあったんだけども、MSDNのやつを読むと非常に無駄なソースだった。どう考えても新しいクラスを使いこなせてないかんじ。旧来のiniファイルをいじるのと同じ手法でxmlを使うメリットがどこにも感じられなかった。
それに比べてMSDNの資料は結構有用だった。つーかこれだけあれば十分。
しかもかなり便利。要素の追加・削除とかが簡単にできるのはいい。

現状ではこんな感じ。
UDPトランシーバはコマンド解釈部分以外はできてる。
シリアルトランシーバは未完成だけどUDPのからいろいろ流用できるし。

問題は腕の表示。
もうちょっと賢く表示させる方法を検討中。

とりあえずXMLが片付いたから腕を表示できるようにしてシリアルトランシーバを整備してH8のプログラム書いてポテンショの値から絵が動くようにしよう。
というか、それができればコントローラはほぼ完成か。UDPで投げる部分なんて表示に使ってる角度データをコマンドに組み込んで送るだけだしな。
PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
<< 手ごたえ HOME どつぼ >>
カウンター
委託案内
アンプ基板や同人誌を委託販売しています.リンクからどうぞ.(外部サイト)
HA10mini基板セット
HA10mini終段基板
HA10miniハイパワーキット
HPA&Analog vol.6冊子版
同人誌DL委託
同人誌DL委託(旧サークル名)
ブログ内検索
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
最新コメント
[03/08 NONAME]
[01/19 gun534]
[12/14 NONAME]
[12/12 mike]
[12/06 mike]
最新トラックバック
SilverLight
アクセス解析
広告
忍者ブログ [PR]