fltk
syoyo さんに、fltk ネタをリクエストされたが...ない。 とりあえず、久しぶりに行ったらチュートリアルのビデオがあったので、紹介します。英語が分からない方でも、VC++ の操作方法が分かるので、ぜんぜん問題無しです。ライブラリでのこういった取り組み…
メッセージにハメがあるので、忘れないうちにメモ。 FL_MOVE マウスのドラッグを、このメッセージで処理することはできない FL_DRAG マウスのドラッグを得る場合はこの関数を使う。int handle() 関数FL_PUSH, FL_RELEASE, FL_DRAG が来た場合、1 を返さない…
fltk、特に fluid を「素直」に使うと、グローバル変数が大量発生してさながら C プログラムになってしまう。fltk は C になってしまうのはしょうがないのかとあきらめていたが、やっと解決法が見つかった。とても fltk らしい方法だ。fluid でクラスを作り…
サンプルだとファイル名を直打ちしているが、マクロを使って綺麗に書きたい。 fluid -c $(InputFileName) あと、さっきの#include "stdafx.h" を追加するやつをかませるには、さっきのスクリプトをmodifyFluid.py として、以下のように書き換える。 fluid -c…
fluid を使っても C++ コードがかけるので、しばらくそれを使っていたが、レイアウト以外はテキストエディタを使いたい。fluidが便利なのは、せいぜいレイアウトどまりだ。そんなときは、各種イベント関数を「function (丸いアイコンのやつ)として作った後、…
コマンドラインから第一引数で受け取ったファイルの先頭に #include "stdafx.h" を挿入。 import sys f = open( sys.argv[ 1 ], 'r' ) t = f.read() f.close() f = open( sys.argv[ 1 ], 'w' ) f.write( '#include "stdafx.h"\n' ) f.write( t ) f.close() …
読みやすさより、書きやすさ優先ではあるが、Perlほど汚くはないと思う。利点 すごく拡張しやすい すごく書きやすい 速い 小さい 出来上がるコードサイズが小さい ライブラリのソースコード量が少ない GL との親和性が異常に高い GLUT エミュレーションまで…
仮想サイズを持っていて、実際のウインドウサイズよりも仮想サイズの方が大きい場合はスクロールバーを出すというよくあるWidgetがない。MFC でいうところのhttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vclib/html…
画像を使って説明すれば楽なのですが、はてなはじゃんじゃん画像を置けないので、文字で許してください。一般的な GUI ライブラリには、たいてい ALIGN_LEFT, ALIGN_RIGHT ... など、ウインドウが拡祝された際のアルゴリズムを指定できるようになっている。…
プロジェクション行列は一定なので、起動時に一回作るだけで終わろうと思ったのですが、うまく行きませんでした。原因は、 std::auto_ptr window( new Fl_Gl_Window( 640, 480 ) ); window->show(argc,argv); glMatrixMode( GL_PROJECTION ); glLoadIdentity…
Windows専用。 DWORD lastTime = timeGetTime(); while ( 1 ) { ... // 何かの処理 window->redraw(); Fl::check(); DWORD curTime = timeGetTime(); const DWORD frameTime = 1000 / 60; // 1フレームの長さ const DWORD strictWaitTime = 2; // 頻繁に Sl…
左キーを検出する場合は、こんな感じ。 if ( Fl::get_key( FL_Left ) ) { printf( "l" ); }
こんな感じ。 Fl_Gl_Window *window = new Fl_Gl_Window( 640, 480 );
fltk でダブルバッファリング & 線を引くってのをやってみました。 #include #include #include #include #include class TestWindow : public Fl_Double_Window { void draw() { fl_color( FL_WHITE ); fl_line( 0, 0, w(), h() ); } public: TestWindow( i…
fltk をいじり始めた。いきなり無謀にも RC1 というのがあったので、ダウンロード。 libpng zlib libjpeg をインストールして、コンパイル。なんかこれらのライブラリの基本事項なのかもしれませんが、libpng??.zip を png.zip に、libjpeng.lib を jpeg.lib…