bool pt_in_positive(CvPoint pt,CvPoint input_pt1,CvPoint input_pt2) { double A,B,C; double k_t; k_t=input_pt2.x - input_pt1.x; if (k_t==0.) { A=1; B=0; C=input_pt1.x; } else { double k,b; k=((double)input_pt2.y - input_pt1.y) /(input_pt2.x - input_pt1.x); b=input_pt1.y - k*input_pt1.x; A=k; B=-1; C=b; } if (A*pt.x+B*pt.y+C>0) return true; else return false; }