最終更新: mikk_ni3_92 2008年08月26日(火) 13:13:59履歴
現在地 >> メニュー >> サンプルコード::OpenCV >> OpenCV::基本編03
INDEX: OpenCV::基本編02 << OpenCV::基本編03 >> OpenCV::基本編04
マウスの処理は以下のようになる。
もし、コールバック関数内に何か引数を与える必要がなければ、cvSetMouseCallback関数の第三引数は省略してもかまわない。
なお、OpenGLのようなドラッグ処理用のコールバック関数は用意されていない。
サンプルコード >>
INDEX: OpenCV::基本編02 << OpenCV::基本編03 >> OpenCV::基本編04
マウスの処理は以下のようになる。
- 対応するウィンドウに対してのコールバック関数を登録
- コールバック関数の内容をを記述
... ... //ウィンドウを作成して描画 cvNamedWindow("Hello OpenCV",CV_WINDOW_AUTOSIZE); cvShowImage("Hello OpenCV",imgA); cvSetMouseCallback("Hello OpenCV", Mouse); //[1]:コールバック関数の登録(第三引数の省略) ... ... //----- [2]:コールバック関数の中身 ------// void Mouse( int event, int x, int y, int flags ,void *param = NULL) { switch(event) { case CV_EVENT_LBUTTONDOWN: printf("(%d,%d) \n",x,y); break; default: break; } } ... ...
もし、コールバック関数内に何か引数を与える必要がなければ、cvSetMouseCallback関数の第三引数は省略してもかまわない。
なお、OpenGLのようなドラッグ処理用のコールバック関数は用意されていない。
サンプルコード >>
- OpenCVとマウス入力(第3引数のない場合)
- OpenCV::クリック地点と線描画(第3引数のある場合)