C++

矩形転送

矩形転送でコピー、アルファ、加算、乗算ができた。 画像は元画像に2つの矩形(青:乗算、ピンク:加算)で合成してみた。さりげなくアンチエイリアスの○をかいてあるのでなめらか! だんだんちゃんとグラフィックソフトっぽくなってきたw合成さえうまくい…

好きな言語と嫌いな言語

りょこたんの漫画から http://d.hatena.ne.jp/ryocotan/20080624そういえば一番嫌いな言語は? > そりゃまぁ、C++だね それじゃあ一番好きな言語は? > ・・・・・・C++かないや。名言だろこれ!!w

ロードの罠

C++

セーブ、ロードの罠 SetCurrentDirectory(path)プロセスのカレントパス位置を設定。 知ってれば常識 だけど知らないで苦労したさくさん。 知らないって罪なのかもしれない・・・。

OpenCVとの戦い、取り込みの高速化&&複数カメラからの入力。

C++

id:nyaxtさんid:inajobさんありがとう!。 彼らからの情報提供で複数カメラ入力&高速化ができました。 そもそもの罠 まず経緯からお話しすると。 OpenCVはそのままだと複数台カメラのキャプチャがうまくいかないらしい。様々なサイトを見て回ったんだけどど…

OpenCVとの戦い、動画にオプティカルフロー

C++

カメラに写ったものの動作ベクトルをとるものです。 以下のアドレスに画像でのサンプルがあります。 http://opencv.jp/sample/optical_flow.html#optflowBM 恒例の罠 カメラの画像で使う場合には少々罠があるのでそれだけ記録しておきます。 とりあえずさん…

OpenCVとの戦い、とりあえずピクセルの情報を入手する。

C++

↓の記事の最低限のコードのWhile部分のみを抜粋 http://d.hatena.ne.jp/sakusan_net/20080626/1214449256 while (1) { frame = cvQueryFrame (capture); cvShowImage ("Capture", frame); unsigned char **pimage = new unsigned char *[frame->height]; for…

OpenCVとの戦い、カメラ画像を表示する最低限のコード

C++

id:nyaxtさんからOpenCVを教えてもらってとりあえずニャンニャンしてみた。 ありがとう!!とりあえずOpenCVのカメラ入力方法OpenCVライブラリセットアップは↓ http://d.hatena.ne.jp/sakusan_net/20080625/1214371034とりあえずカメラ画像をウインドウに表…

オプティカルフロー

重すぎる・・・ 複数台に対して処理なんてまず不可だ・・・・CPUの問題みたいだから金で解決できなくもないけど時間が・・・

OpenCV

OpenCVがかなり優秀とのこと 以下がサイト。 何故かダウンロードへのリンクがクリックできない・・・ http://www.intel.com/technology/computing/opencv/index.htm ここにおいてある http://sourceforge.net/projects/opencvlibrary/ Open Computer Vision …

はえ〜

DirectXなめてました。 綺麗に処理書き直したら超速いです。 Let's Noteでキューブ1000個をダイナミックに動かし続けても普通にうごくし。あ、オレオレライブラリ作ってますw そのうち使う人に少しでもメリットがあるようなら公開するかも。 m_testCube…

新規DirectXプロジェクト

C++

Windowsのプログラムに舞い戻ってきました。 そう、あのコードのかさむウインドウ系の処理に・・・さて、以前Procが〜とかなんだかんだと愚痴っていた際にid:nyaxtさんが自分の作ったラッパーを紹介してくれていたのを思い出し使ってみることに。いやぁ。3…

SetFVF

レンダリングパイプラインの順序 OK! Vertex→法線→頂点カラー→テクスチャ = 成功 m_pD3DDevice->SetFVF(D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_DIFFUSE | D3DFVF_TEX1 ); NG!!! Vertex→法線→テクスチャ→頂点カラー = 失敗 m_pD3DDevice->SetFVF(D3DFVF_XYZ …

vectorのメモリ連続性について

std::vectorにていしてポイント構造体情報を動的に格納し、ラインを描画をしたい。 普通であれば POINT points[5]={ POINT, POINT, POINT, POINT, POINT} m_pD3DDevice->SetFVF(D3DFVF_XYZ | D3DFVF_DIFFUSE ); m_pD3DDevice->DrawPrimitiveUP(D3DPT_LINESTR…

汚!!!!

C++

一年前のコード汚い!!!;;DirectX系のユーティリティコード全部書き直しだよこりゃ! ひどすぐる・・・あまりにもひどいと思うこれは・・・ 計算だけやらせるコードもstaticで書けばいいものをいちいちインスタンス生成してるし・・・ ありえね〜・・・…

ファイルディスクリプタの実験

C++

サーバーのソケットでの挙動をテストする時 ワーカーチャイルドにダミーソケット(FD)を渡してテストをしたい。 で、ファイルディスクリプタをPIPEで作成、片方から入れたら片方から出る状態を作る。一応最低限のコードで片方から入れて片方から出すテスト。…

テストでエラーを出して見る

C++

とりあえずコンパイルは通ったので、今度はわざとエラーを報告させて見る この場合結局boolで報告すればいいっていうだけのもの。 この方法だけだと自分で条件でエラー報告するのと大差ないな。 #include <cppunit/extensions/HelperMacros.h> #include <cppunit/ui/text/TestRunner.h> #include <iostream> class MyClass{ }; class MyTe</iostream></cppunit/ui/text/testrunner.h></cppunit/extensions/helpermacros.h>…

CppUnitを使う

C++

C++のユニットテストライブラリであるCppUnitを使う。 なかなか最低限のコードが載っているサイトが無かったので、インストールからほんとにコンパイルが通るだけのところまでを1コードでまとめる。インストール # apt-get install libcppunit-dev以下最低…

C++のコードテスト

C++

CppUnitを使うべきか否か。 悩ましい。 実際ライブラリでたいしたテストまで出来ないなら自分で条件と結果を照らし合わせたほうが良いのではないかとも思う・・・ うーん

結局

C++

Mysqlの結果レコードは結局 list > にいれて以下のコードで参照するようにした。 list<map<string,string>* >*dat = DB::SQLfindAll(tablename); list<map<string,string>* >::iterator it = dat->begin(); while( it != dat->end() ) { map<string, string>::iterator i_msg = (*it)->find("message"); printf("%s\</string,></map<string,string></map<string,string>…

C++でのMysql苦悩

C++

c++でMysqlにアクセスしているわけですが、データをとりに行く部分。(以下コードのprintfの部分)の結果をどんな形で返したらいいのかが謎過ぎてここ数日最強に困っています・・・ MYSQL_ROW row; mysql_query(mysqld,SQL文); MYSQL_RES *res = mysql_store…

結果的に

C++

結果から言うとこの方法は悪くなかった。 たとえば帰ってきた結果を逆転したいときなんかlistのメソッドがそのまま使えた。 list<map<string,string>* >*dat =DB::SQLfindAll(tablename); dat->reverse();とてもらくてぃん</map<string,string>

さくさん的C++の魅力

最近スクリプト言語ばかり触っていて生ぬるい環境に飽きていたのもあり、C++でサーバーを書くのがとても楽しい感じです。 何がいいって、やはり呼び出すポインタが1バイトずれただけでとまってしまうようなデンジャラスでリスキーな感じがたまらないですよ…

関数ポインタなめてた

さて、Pagmoのサーバーを書き直しているわけですが Epollサーバー部分だけをうまく切り分けたいところ。 理想は Pserver server(port); addEventHandler(server.getRecvEvent()); server.start();とかAS3チックにいけるととてもニヤニヤなわけですが、いかん…

スピードアップ

C++

ピッカーの速度が遅いのの解決策をこうじていました。 ちょうど今下の記事でid:nyaxtさんに突っ込まれてましたが毎回SetPixelすると重いのでビットマップに描画しておいてBitBltする方法を取っています。 hdc = GetDC(hWnd); hdcTest = CreateCompatibleDC(h…

WinGDIでカラーピッカー

C++

SGのカラーピッカーがキューブピッカーだけとかいうお粗末さで困ったので普通のピッカーも作ることに。 さんざカラーピッカーの作り方を悩んだけど、単純にSetPixelでそれっぽい感じで表示できた。 ただちょっと重い・・・工夫しよう HDC hdc = GetDC(hWnd);…

アイテム消失

C++

ネトゲでアイテムが消失したわけじゃないです。 SGのツールボックス内のアイテムがたまに消失する・・・ それはもうきれいさっぱりと ***** とかいうこの日記をいま書いてたらコードにごみを発見! なんつーか都合のよいデバッグになってしまった。 意…

Render Target

C++

DirectXでレンダリングターゲットにしているテクスチャの左上の1ピクセルに色が乗ると、そのテクスチャにはそのレンダリングしたものの彩度情報が全部飛ぶんですが。 これは・・・・ どうしても理由がわからない・・・ それまで描画してたもののカラー情報…

初期化忘れ

C++

とりあえずリリースコンパイルで動くようになった初期化忘れが厄介すぎる・・・ほんとに デバッグビルドだと0リセットされるのにリリースビルドだとメモリの中ゴミだらけって・・・ どんだけ不親切な・・・・ むしろ全ライブラリがコンストラクタで引数ない…

やる気をそぐ実装

ひどい・・・・ デザインパターンもあったもんじゃない・・・・ 集約とか無視すぎる・・・・ 汎用性0・・・・ファイルアクセスクラスにキャンバスのポインタ投げてロードしながら格納しとる・・・ 当時結構綺麗に実装したつもりだっただけにへこむわ・・・…

無駄無駄無駄!な行数

C++

久々に自分のコードを呼んでて吹いたw for(int i = start;i