Из следующей программы мне нужно найти координаты x и y из значения cvPoint.
for(int i=0; i<nomdef; i++)
{
if(defectArray[i].depth > 40 )
{
con=con+1;
cvLine(src, *(defectArray[i].start), *(defectArray[i].depth_point),CV_RGB(255,255,0),1, CV_AA, 0 );
cvCircle(src, *(defectArray[i].depth_point), 5, CV_RGB(0,0,255), 2, 8,0);
cvCircle(src, *(defectArray[i].start), 5, CV_RGB(0,255,0), 2, 8,0);
cvLine(src, *(defectArray[i].depth_point), *(defectArray[i].end),CV_RGB(0,255,255),1, CV_AA, 0 );
cvDrawContours(src,defects,CV_RGB(0,0,0),CV_RGB(255,0,0),-1,CV_FILLED,8);
}
}
Круг нарисован с использованием точек. Мне нужно получить координаты X и Y из точек. Дефектный массив создан CvConvexityDefect* defectArray
,
Если имя вашего точечного объекта — myPoint, вы можете получить доступ к его значениям x и y как
int x = myPoint.x ;
int y = myPoint.y ;
в вашем случае вы можете написать
int x = *(defectArray[i].start).x ;
int y = *(defectArray[i].start).y ;
Других решений пока нет …