求两点间距离
/***** 求两点间距离*****/
float getDistance(CvPoint pointO, CvPoint pointA)
{
float distance;
distance = powf((pointO.x - pointA.x), 2) + powf((pointO.y - pointA.y), 2);
distance = sqrtf(distance);
return distance;
}
点到直线的距离:P到AB的距离
/***** 点到直线的距离:P到AB的距离*****/
float getDist_P2L(CvPoint pointP, CvPoint pointA, CvPoint pointB)
{
int A = 0, B = 0, C = 0;
A = pointA.y - pointB.y;
B = pointB.x - pointA.x;
C = pointA.x*pointB.y - pointA.y*pointB.x;
float distance = 0;
distance = ((float)abs(A*pointP.x + B*pointP.y + C)) / ((float)sqrtf(A*A + B*B));
return distance;
}