码迷,mamicode.com
首页 > 其他好文 > 详细

Opencv鼠标事件

时间:2015-05-01 10:42:14      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:opencv   鼠标事件   on-mouse   cvsetmouse   

opencv的鼠标事件主要涉及两个函数

回调函数cvSetMouseCallback

void cvSetMouseCallback( const char* window_name, CvMouseCallback on_mouse, void* param CV_DEFAULT(NULL));

window_name:鼠标执行的窗口名

on_mouse:每次指定窗口鼠标事件发生时被调用的函数指针

param :传递到回调函数的参数


on_mouse的原型

void Foo(int event, int x, int y, int flags, void* param);

param:传递到cvSetMouseCallback函数调用的参数

x、y:鼠标指针在图像坐标系的坐标

event: CV_EVENT_*变量之一

enum
{
    CV_EVENT_MOUSEMOVE      =0,//滑动
    CV_EVENT_LBUTTONDOWN    =1,//左键点击
    CV_EVENT_RBUTTONDOWN    =2,//右键点击
    CV_EVENT_MBUTTONDOWN    =3,//中键点击
    CV_EVENT_LBUTTONUP      =4,//左键放开
    CV_EVENT_RBUTTONUP      =5,//右键放开
    CV_EVENT_MBUTTONUP      =6,//中键放开
    CV_EVENT_LBUTTONDBLCLK  =7,//左键双击
    CV_EVENT_RBUTTONDBLCLK  =8,//右键双击
    CV_EVENT_MBUTTONDBLCLK  =9//中键双击
};

flags:是CV_EVENT_FLAG的组合

enum
{
    CV_EVENT_FLAG_LBUTTON   =1,//左键拖曳
    CV_EVENT_FLAG_RBUTTON   =2,//右键拖曳
    CV_EVENT_FLAG_MBUTTON   =4,//中键拖曳
    CV_EVENT_FLAG_CTRLKEY   =8,//按CTRL
    CV_EVENT_FLAG_SHIFTKEY  =16,//按SHIFT
    CV_EVENT_FLAG_ALTKEY    =32//按ALT
};

Opencv鼠标事件

标签:opencv   鼠标事件   on-mouse   cvsetmouse   

原文地址:http://blog.csdn.net/u013298384/article/details/45418069

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!