Od jakiegoś czasu uczę się biblioteki OpenCv do tej pory korzystałem z obsługi kliknięć myszką w poniższy sposób:
Do tej pory używałem w swoim programie
void mouseEvent(int evt, int x, int y, int flags, void* param){
if(evt==CV_EVENT_LBUTTONDOWN){
printf("DOWN %d %d\n",x,y);
}
if(evt==CV_EVENT_LBUTTONUP){
printf("UP %d %d\n",x,y);
}
}
int MojaKlasa::Photo()
// Pobranie obrazu z Kamery
{
cvNamedWindow("MyWindow");
//assigning the callback function for mouse events
cvSetMouseCallback("MyWindow", mouseEvent, 0);
.....
}
Jednakże w chwili obecnej potrzebowałbym żeby MojaKlasa zapamiętywała współrzędne punktu naciśnięcia myszki próbowałem to zrobić tak
public:
int Down_x;
int Down_y;
void mouseEvent( int event, int x, int y, int flags, void* param );
void MojaKlasa::mouseEvent(int evt, int x, int y, int flags, void* param){
if(evt==CV_EVENT_LBUTTONDOWN){
printf("DOWN %d %d\n",x,y);
Down_x = x;
Down_y = y;
}
if(evt==CV_EVENT_LBUTTONUP){
printf("UP %d %d\n",x,y);
}
}
Po dopisaniu poniższego kodu program nie kompiluje się, próbowałem go poprawiać ale za każdym razem coś jest nie tak. Prosiłbym o pomoc.