ユーザインタフェース ============================== .. highlight:: cpp .. index:: createTrackbar cv::createTrackbar ------------------ .. cfunction:: int createTrackbar( const string\& trackbarname, const string\& winname, int* value, int count, TrackbarCallback onChange CV_DEFAULT(0), void* userdata CV_DEFAULT(0)) トラックバーを作成し,指定されたウィンドウに追加します. :param trackbarname: 作成されるトラックバーの名前 :param winname: 作成されるトラックバーの親として用いられるウィンドウの名前 :param value: オプション.整数型変数へのポインタ.この値はスライダの位置を反映します.作成時,作成時のスライダ位置は,この変数によって定義されます :param count: スライダの最大値.最小値は常に 0です :param onChange: スライダの位置が変更されるたびに呼び出される関数のポインタ.この関数のプロトタイプは, ``void Foo(int,void*);`` となり,最初の引数はトラックバーの位置,2番目引数はユーザデータ(次の引数説明を参照してください)を表します.このコールバックがNULLポインタの場合,コールバック関数は呼び出されませんが, ``value`` だけは更新されます :param userdata: コールバック関数に渡されることになるユーザデータ.グローバル変数に頼らずにトラックバーイベントを扱うために利用されます 関数 ``createTrackbar`` は,指定された名前と範囲のトラックバー(スライダ,レンジコントロールとも呼ばれます)を作成します.また,トラックバーの位置と同期する変数 ``value`` を割り当て,トラックバーの位置が変更されたときに呼び出されるコールバック関数 ``onChange`` を指定します.作成されたトラックバーは,指定されたウィンドウの上部に表示されます. .. index:: getTrackbarPos cv::getTrackbarPos ------------------ .. cfunction:: int getTrackbarPos( const string\& trackbarname, const string\& winname ) トラックバーの位置を返します. :param trackbarname: トラックバーの名前 :param winname: トラックバーの親ウィンドウの名前 この関数は,指定されたトラックバーの現在位置を返します. .. index:: imshow cv::imshow ---------- .. cfunction:: void imshow( const string\& winname, const Mat\& image ) 指定したウィンドウ内に画像を表示します. :param winname: ウィンドウの名前 :param image: 表示される画像 関数 ``imshow`` は,指定したウィンドウ内に画像を表示します.そのウィンドウ作成時にフラグに ``CV_WINDOW_AUTOSIZE`` が指定されていた場合は,画像はオリジナルサイズで表示されます.それ以外の場合,ウィンドウサイズに合わせて 表示画像サイズが変更されます.この関数は,ビット深度に応じて,画像をスケーリングします: * 画像が8ビット符号なし整数の場合,そのま表示します. * 画像が16ビット符号なし整数,または32ビット整数の場合,ピクセル値は256で割られます.つまり,[0,255*256] の範囲が [0,255] にマップされます. * 画像が32ビット浮動小数点数の場合,ピクセルは255倍されます.つまり,[0,1] の範囲が [0,255] にマップされます. .. index:: namedWindow cv::namedWindow --------------- .. cfunction:: void namedWindow( const string\& winname, int flags ) ウィンドウを作成します. :param name: ウィンドウの識別などに用いられるウィンドウ名で,ウィンドウのタイトルバーに表示されます :param flags: ウィンドウのフラグ.現在サポートされているフラグは ``CV_WINDOW_AUTOSIZE`` のみです.これがセットされている場合,表示される画像サイズに合わせてウィンドウサイズが自動的に調整され( :ref:`imshow` を参照してください),ユーザが手動でウィンドウサイズを変更することはできません 関数 ``namedWindow`` は,画像とトラックバーのプレースホルダとして利用されるウィンドウを作成します.このウィンドウは,その名前によって参照されます. 同じ名前のウィンドウが既に存在する場合は,この関数は何もしません. .. index:: setTrackbarPos cv::setTrackbarPos ------------------ .. cfunction:: void setTrackbarPos( const string\& trackbarname, const string\& winname, int pos ) トラックバーの位置をセットします. :param trackbarname: トラックバーの名前 :param winname: トラックバーの親ウィンドウの名前 :param pos: 新しい位置 この関数は,指定されたウィンドウの指定されたトラックバーの位置をセットします. .. index:: waitKey cv::waitKey ----------- .. cfunction:: int waitKey(int delay=0) キーが押されるまで待機します. :param delay: ミリ秒単位で表される遅延時間.0は,「無限」を意味する特別な値です 関数 ``waitKey`` は,無限に( :math:`\texttt{delay}\leq 0` の場合),あるいは ``delay`` ミリ秒(正値の場合)だけ,キーイベントを待ちます.キーが押された場合はそのキーコードが,キーが押されないまま指定された指定時間が過ぎてしまった場合は -1 が返されます. **注意:** この関数は,HighGUI においてイベントを取得して扱うための唯一の手段です.よって,実行環境がイベント処理を扱ってくれる場合を除けば,通常のイベント処理ではこの関数を周期的に呼び出す必要があります.