Nemohu přijít na to proč dostávám tuto hlášku.
drawing:hpp
namespace drawing
{
static void Circle( cv::Mat& img, cv::Point center, int radius, const void* color, int fill );
void circle( cv::InputOutputArray _img, cv::Point center, int radius,
const cv::Scalar& color, int thickness, int line_type, int shift );
}
void Drawing_Circle( CvArr* _img, CvPoint center, int radius,
CvScalar color, int thickness, int line_type, int shift );
drawing.cpp:
#include "precomp.hpp"
#include "drawing.hpp"
namespace drawing
{
// zde vynechám nějaké funkce...
void circle( cv::InputOutputArray _img, cv::Point center, int radius,
const cv::Scalar& color, int thickness, int line_type = cv::LINE_8, int shift = 0 )
{
cv::Mat img = _img.getMat();
if( line_type == CV_AA && img.depth() != CV_8U )
line_type = 8;
CV_Assert( radius >= 0 && thickness <= MAX_THICKNESS &&
0 <= shift && shift <= XY_SHIFT );
double buf[4];
// TADY BY TO MOHLO KRACHNOUT KDYŽ JSEM TO VYNECHAL:
// cv::scalarToRawData(color, buf, img.type(), 0);
if( thickness > 1 || line_type >= CV_AA || shift > 0 )
{
center.x <<= XY_SHIFT - shift;
center.y <<= XY_SHIFT - shift;
radius <<= XY_SHIFT - shift;
EllipseEx( img, center, cv::Size(radius, radius),
0, 0, 360, buf, thickness, line_type );
}
else
Circle( img, center, radius, buf, thickness < 0 );
}
} // konec namespace drawing
main.hpp:
#include "drawing.hpp"
main.cpp
#include "main.hpp"
#include "drawing.hpp"
// ve funkci main volám:
drawing::circle( I,
center,
radius,
cv::Scalar( 255, 255, 255 ), 0, 8);
a na konci to hodí chybu že funkce drawing::circle nemá 6 argumentů. Dobře má jich 7, ale 7 argument je nastaven jako nepovinný viz
int shift = 0
jak to opravit?