Fix tautologies in calibfilter.cpp which cause a build failure when using -Werror=address with clang-3.5

http://code.opencv.org/issues/4048

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
pull/3488/head
Jeremy Huddleston Sequoia 10 years ago
parent c5b6c0456d
commit 35f96d6da7
  1. 98
      modules/legacy/src/calibfilter.cpp

@ -95,11 +95,8 @@ bool CvCalibFilter::SetEtalon( CvCalibEtalonType type, double* params,
Stop(); Stop();
if (latestPoints != NULL) for( i = 0; i < MAX_CAMERAS; i++ )
{ cvFree( latestPoints + i );
for( i = 0; i < MAX_CAMERAS; i++ )
cvFree( latestPoints + i );
}
if( type == CV_CALIB_ETALON_USER || type != etalonType ) if( type == CV_CALIB_ETALON_USER || type != etalonType )
{ {
@ -523,64 +520,61 @@ void CvCalibFilter::DrawPoints( CvMat** dstarr )
return; return;
} }
if( latestCounts ) for( i = 0; i < cameraCount; i++ )
{ {
for( i = 0; i < cameraCount; i++ ) if( dstarr[i] && latestCounts[i] )
{ {
if( dstarr[i] && latestCounts[i] ) CvMat dst_stub, *dst;
{ int count = 0;
CvMat dst_stub, *dst; bool found = false;
int count = 0; CvPoint2D32f* pts = 0;
bool found = false;
CvPoint2D32f* pts = 0;
GetLatestPoints( i, &pts, &count, &found ); GetLatestPoints( i, &pts, &count, &found );
dst = cvGetMat( dstarr[i], &dst_stub ); dst = cvGetMat( dstarr[i], &dst_stub );
static const CvScalar line_colors[] = static const CvScalar line_colors[] =
{ {
{{0,0,255}}, {{0,0,255}},
{{0,128,255}}, {{0,128,255}},
{{0,200,200}}, {{0,200,200}},
{{0,255,0}}, {{0,255,0}},
{{200,200,0}}, {{200,200,0}},
{{255,0,0}}, {{255,0,0}},
{{255,0,255}} {{255,0,255}}
}; };
const int colorCount = sizeof(line_colors)/sizeof(line_colors[0]); const int colorCount = sizeof(line_colors)/sizeof(line_colors[0]);
const int r = 4; const int r = 4;
CvScalar color = line_colors[0]; CvScalar color = line_colors[0];
CvPoint prev_pt = { 0, 0}; CvPoint prev_pt = { 0, 0};
for( j = 0; j < count; j++ ) for( j = 0; j < count; j++ )
{ {
CvPoint pt; CvPoint pt;
pt.x = cvRound(pts[j].x); pt.x = cvRound(pts[j].x);
pt.y = cvRound(pts[j].y); pt.y = cvRound(pts[j].y);
if( found ) if( found )
{ {
if( etalonType == CV_CALIB_ETALON_CHESSBOARD ) if( etalonType == CV_CALIB_ETALON_CHESSBOARD )
color = line_colors[(j/cvRound(etalonParams[0]))%colorCount]; color = line_colors[(j/cvRound(etalonParams[0]))%colorCount];
else else
color = CV_RGB(0,255,0); color = CV_RGB(0,255,0);
if( j != 0 ) if( j != 0 )
cvLine( dst, prev_pt, pt, color, 1, CV_AA ); cvLine( dst, prev_pt, pt, color, 1, CV_AA );
} }
cvLine( dst, cvPoint( pt.x - r, pt.y - r ), cvLine( dst, cvPoint( pt.x - r, pt.y - r ),
cvPoint( pt.x + r, pt.y + r ), color, 1, CV_AA ); cvPoint( pt.x + r, pt.y + r ), color, 1, CV_AA );
cvLine( dst, cvPoint( pt.x - r, pt.y + r), cvLine( dst, cvPoint( pt.x - r, pt.y + r),
cvPoint( pt.x + r, pt.y - r), color, 1, CV_AA ); cvPoint( pt.x + r, pt.y - r), color, 1, CV_AA );
cvCircle( dst, pt, r+1, color, 1, CV_AA ); cvCircle( dst, pt, r+1, color, 1, CV_AA );
prev_pt = pt; prev_pt = pt;
}
} }
} }
} }

Loading…
Cancel
Save