ScatterDraw: Removed multiple warnings got using compiler pedantic options

git-svn-id: svn://ultimatepp.org/upp/trunk@13568 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
koldo 2019-09-02 06:29:04 +00:00
parent a33f198359
commit 06e1c9883e
14 changed files with 216 additions and 169 deletions

View file

@ -1,6 +1,8 @@
#include "ScatterDraw.h"
#include <ScatterDraw/Unpedantic.h>
#include <plugin/Eigen/Eigen.h>
#include <ScatterDraw/Pedantic.h>
namespace Upp {

View file

@ -326,9 +326,9 @@ private:
double x0, deltaX;
public:
CArray(double *yData, int numData, double x0, double deltaX) : yData(yData), numData(numData), x0(x0), deltaX(deltaX) {xData = NULL;}
CArray(double *yData, double *xData, int numData) : yData(yData), xData(xData), numData(numData) {zData = NULL; x0 = deltaX = 0;}
CArray(double *yData, double *xData, double *zData, int numData) : yData(yData), xData(xData), zData(zData), numData(numData) {x0 = deltaX = 0;}
CArray(double *_yData, int _numData, double _x0, double _deltaX) : yData(_yData), numData(_numData), x0(_x0), deltaX(_deltaX) {xData = NULL;}
CArray(double *_yData, double *_xData, int _numData) : yData(_yData), xData(_xData), numData(_numData) {zData = NULL; x0 = deltaX = 0;}
CArray(double *_yData, double *_xData, double *_zData, int _numData) : yData(_yData), xData(_xData), zData(_zData), numData(_numData) {x0 = deltaX = 0;}
virtual inline double y(int64 id) {return yData[ptrdiff_t(id)];}
virtual inline double x(int64 id) {return xData ? xData[ptrdiff_t(id)] : id*deltaX + x0;}
virtual double znFixed(int n, int64 id);
@ -344,11 +344,11 @@ private:
public:
VectorY() : yData(0), x0(0), deltaX(0) {}
VectorY(Vector<Y> &yData, double x0, double deltaX) {Init(yData, x0, deltaX);}
void Init(Vector<Y> &yData, double x0, double deltaX) {
this->yData = &yData;
this->x0 = x0;
this->deltaX = deltaX;
VectorY(Vector<Y> &_yData, double _x0, double _deltaX) {Init(_yData, _x0, _deltaX);}
void Init(Vector<Y> &_yData, double _x0, double _deltaX) {
this->yData = &_yData;
this->x0 = _x0;
this->deltaX = _deltaX;
}
virtual inline double y(int64 id) {return (*yData)[int(id)];}
virtual inline double x(int64 id) {return id*deltaX + x0;}
@ -397,18 +397,18 @@ public:
bool _useRows = true, int _beginData = 0, int _numData = Null) {
Init(_data, _idx, _idy, _idsx, _idsy, _idsFixed, _useRows, _beginData, _numData);
}
void Init(Vector<Vector<Y> > &data, int idx, int idy, Vector<int> &idsx, Vector<int> &idsy, Vector<int> &idsFixed,
bool useRows = true, int beginData = 0, int numData = Null) {
this->data = &data;
this->useRows = useRows;
void Init(Vector<Vector<Y> > &_data, int _idx, int _idy, Vector<int> &_idsx, Vector<int> &_idsy, Vector<int> &_idsFixed,
bool _useRows = true, int _beginData = 0, int _numData = Null) {
this->data = &_data;
this->useRows = _useRows;
this->idx = idx;
this->idy = idy;
this->idsx = clone(idsx);
this->idsy = clone(idsy);
this->idsFixed = clone(idsFixed);
this->beginData = beginData;
this->numData = numData;
this->idx = _idx;
this->idy = _idy;
this->idsx = clone(_idsx);
this->idsy = clone(_idsy);
this->idsFixed = clone(_idsFixed);
this->beginData = _beginData;
this->numData = _numData;
if (IsNull(numData)) {
if (!useRows) {
if (data.IsEmpty())
@ -419,9 +419,9 @@ public:
this->numData = data.GetCount() - beginData;
}
}
void Init(Vector<Vector<Y> > &data, int idx, int idy, bool useRows = true, int beginData = 0, int numData = Null) {
void Init(Vector<Vector<Y> > &_data, int _idx, int _idy, bool _useRows = true, int _beginData = 0, int _numData = Null) {
static Vector<int> idsVoid;
Init(data, idx, idy, idsVoid, idsVoid, idsVoid, useRows, beginData, numData);
Init(_data, _idx, _idy, idsVoid, idsVoid, idsVoid, _useRows, _beginData, _numData);
}
virtual inline double y(int64 id) {
if (!IsNull(idy) && idy >= 0) {
@ -462,7 +462,7 @@ private:
const Vector<double> *xData, *yData;
public:
VectorDouble(const Vector<double> &yData, Vector<double> &xData) : xData(&xData), yData(&yData) {}
VectorDouble(const Vector<double> &_yData, Vector<double> &_xData) : xData(&_xData), yData(&_yData) {}
virtual inline double y(int64 id) {return (*yData)[int(id)];}
virtual inline double x(int64 id) {return (*xData)[int(id)];}
virtual inline int64 GetCount() {return min(xData->GetCount(), yData->GetCount());}
@ -473,7 +473,7 @@ private:
const Upp::Array<double> *xData, *yData;
public:
ArrayDouble(const Upp::Array<double> &yData, Upp::Array<double> &xData) : xData(&xData), yData(&yData) {}
ArrayDouble(const Upp::Array<double> &_yData, Upp::Array<double> &_xData) : xData(&_xData), yData(&_yData) {}
virtual inline double y(int64 id) {return (*yData)[int(id)];}
virtual inline double x(int64 id) {return (*xData)[int(id)];}
virtual inline int64 GetCount() {return min(xData->GetCount(), yData->GetCount());}
@ -485,13 +485,13 @@ private:
public:
VectorPointf() : data(0) {}
VectorPointf(const Vector<Pointf> &data){Init(&data);}
VectorPointf(Vector<Pointf> *data) {Init(data);}
void Init(const Vector<Pointf> *_data) {data = _data;}
void Init(const Vector<Pointf> &_data) {data = &_data;}
virtual inline double y(int64 id) {return (*data)[int(id)].y;}
virtual inline double x(int64 id) {return (*data)[int(id)].x;}
virtual inline int64 GetCount() {return data->GetCount();}
VectorPointf(const Vector<Pointf> &_data) {Init(&_data);}
VectorPointf(Vector<Pointf> *_data) {Init(_data);}
void Init(const Vector<Pointf> *_data) {data = _data;}
void Init(const Vector<Pointf> &_data) {data = &_data;}
virtual inline double y(int64 id) {return (*data)[int(id)].y;}
virtual inline double x(int64 id) {return (*data)[int(id)].x;}
virtual inline int64 GetCount() {return data->GetCount();}
};
class ArrayPointf : public DataSource {
@ -499,7 +499,7 @@ private:
Upp::Array<Pointf> *data;
public:
ArrayPointf(Upp::Array<Pointf> &data) : data(&data) {}
ArrayPointf(Upp::Array<Pointf> &_data) : data(&_data) {}
virtual inline double y(int64 id) {return (*data)[int(id)].y;}
virtual inline double x(int64 id) {return (*data)[int(id)].x;}
virtual inline int64 GetCount() {return data->GetCount();}
@ -511,7 +511,7 @@ private:
VectorMap<X, Y> *data;
public:
VectorMapXY(VectorMap<X, Y> &data) : data(&data) {}
VectorMapXY(VectorMap<X, Y> &_data) : data(&_data) {}
virtual inline double y(int64 id) {return (*data)[int(id)];}
virtual inline double x(int64 id) {return (*data).GetKey(int(id));}
virtual inline int64 GetCount() {return data->GetCount();}
@ -523,7 +523,7 @@ private:
ArrayMap<X, Y> *data;
public:
ArrayMapXY(ArrayMap<X, Y> &data) : data(&data) {}
ArrayMapXY(ArrayMap<X, Y> &_data) : data(&_data) {}
virtual inline double y(int64 id) {return (*data)[int(id)];}
virtual inline double x(int64 id) {return (*data).GetKey(int(id));}
virtual inline int64 GetCount() {return data->GetCount();}
@ -535,7 +535,7 @@ protected:
public:
FuncSource() {isExplicit = true;}
FuncSource(Function <double(double)> function) : function(function) {isExplicit = true;}
FuncSource(Function <double(double)> _function) : function(_function) {isExplicit = true;}
virtual inline double f(double x) {return function(x);}
};
@ -544,7 +544,7 @@ private:
Event<double&, double> function;
public:
FuncSourceV(Event<double&, double> function) : function(function) {isExplicit = true;}
FuncSourceV(Event<double&, double> _function) : function(_function) {isExplicit = true;}
virtual inline double f(double x) {double y; function(y, x); return y;}
};
@ -557,8 +557,8 @@ private:
double minT, maxT;
public:
FuncSourcePara(Function <Pointf(double)> function, int np, double from, double to) :
function(function), numPoints(np), minT(from), maxT(to) {
FuncSourcePara(Function <Pointf(double)> _function, int np, double from, double to) :
function(_function), numPoints(np), minT(from), maxT(to) {
isParam = true;
lastT = Null;
}
@ -588,7 +588,7 @@ private:
PlotExplicFunc function;
public:
PlotExplicFuncSource(PlotExplicFunc &function) : function(function) {isExplicit = true;}
PlotExplicFuncSource(PlotExplicFunc &_function) : function(_function) {isExplicit = true;}
virtual inline double f(double t) {double y; function(y, t); return y;}
};
@ -601,8 +601,8 @@ private:
double minT, maxT;
public:
PlotParamFuncSource(PlotParamFunc function, int np, double from, double to) :
function(function), numPoints(np), minT(from), maxT(to) {
PlotParamFuncSource(PlotParamFunc _function, int np, double from, double to) :
function(_function), numPoints(np), minT(from), maxT(to) {
isParam = true;
lastT = Null;
}
@ -697,7 +697,7 @@ public:
TableData() : lendata(0), lenxAxis(0), lenyAxis(0), areas(false) {};
Interpolate Inter() {return inter;}
void Inter(Interpolate inter) {this->inter = inter;}
void Inter(Interpolate _inter) {this->inter = _inter;}
double z_area(Getdatafun getdataX, Getdatafun getdataY, Getdatafun getdata,
double x, double y);
@ -747,19 +747,19 @@ class TableDataVector : public TableData {
public:
TableDataVector() : pdata(0), pxAxis(0), pyAxis(0) {}
TableDataVector(Vector<double> &data, Vector<double> &xAxis, Vector<double> &yAxis,
Interpolate inter, bool areas) {Init(data, xAxis, yAxis, inter, areas);}
Interpolate _inter, bool _areas) {Init(data, xAxis, yAxis, _inter, _areas);}
void Init(Vector<double> &data, Vector<double> &xAxis, Vector<double> &yAxis,
Interpolate inter, bool areas) {
ASSERT(areas ? (data.GetCount() == (xAxis.GetCount() - 1)*(yAxis.GetCount() - 1)) : true);
ASSERT(!areas ? (data.GetCount() == xAxis.GetCount()*yAxis.GetCount()) : true);
Interpolate _inter, bool _areas) {
ASSERT(_areas ? (data.GetCount() == (xAxis.GetCount() - 1)*(yAxis.GetCount() - 1)) : true);
ASSERT(!_areas ? (data.GetCount() == xAxis.GetCount()*yAxis.GetCount()) : true);
this->pdata = &data;
this->lendata = data.GetCount();
this->pxAxis = &xAxis;
this->lenxAxis = xAxis.GetCount();
this->pyAxis = &yAxis;
this->lenyAxis = yAxis.GetCount();
this->inter = inter;
this->areas = areas;
this->inter = _inter;
this->areas = _areas;
}
virtual inline double x(int id) {return (*pxAxis)[id];}
virtual inline double y(int id) {return (*pyAxis)[id];}
@ -773,21 +773,21 @@ private:
class TableDataCArray : public TableData {
public:
TableDataCArray() : pdata(0), pxAxis(0), pyAxis(0)/*, lendata(-23), lenxAxis(0), lenyAxis(0)*/ {}
TableDataCArray(double *data, int lendata, double *xAxis, int lenxAxis, double *yAxis, int lenyAxis,
Interpolate inter, bool areas) {Init(data, lendata, xAxis, lenxAxis, yAxis, lenyAxis, inter, areas);}
void Init(double *data, int lendata, double *xAxis, int lenxAxis, double *yAxis, int lenyAxis,
Interpolate inter, bool areas) {
ASSERT(areas ? (lendata == (lenxAxis - 1)*(lenyAxis - 1)) : true);
ASSERT(!areas ? (lendata == lenxAxis*lenyAxis) : true);
TableDataCArray() : pdata(0), pxAxis(0), pyAxis(0) {}
TableDataCArray(double *data, int _lendata, double *xAxis, int _lenxAxis, double *yAxis, int _lenyAxis,
Interpolate _inter, bool _areas) {Init(data, _lendata, xAxis, _lenxAxis, yAxis, _lenyAxis, _inter, _areas);}
void Init(double *data, int _lendata, double *xAxis, int _lenxAxis, double *yAxis, int _lenyAxis,
Interpolate _inter, bool _areas) {
ASSERT(_areas ? (_lendata == (_lenxAxis - 1)*(_lenyAxis - 1)) : true);
ASSERT(!_areas ? (_lendata == _lenxAxis*_lenyAxis) : true);
this->pdata = data;
this->lendata = lendata;
this->lendata = _lendata;
this->pxAxis = xAxis;
this->lenxAxis = lenxAxis;
this->lenxAxis = _lenxAxis;
this->pyAxis = yAxis;
this->lenyAxis = lenyAxis;
this->inter = inter;
this->areas = areas;
this->lenyAxis = _lenyAxis;
this->inter = _inter;
this->areas = _areas;
}
virtual inline double x(int id) {return pxAxis[id];}
virtual inline double y(int id) {return pyAxis[id];}

View file

@ -163,7 +163,7 @@ void ClipEnd(Draw &w) {
w.End();
}
void ClipEnd(Painter &w) {
void ClipEnd(Painter &) {
;
}
@ -201,7 +201,7 @@ void DashScaled(Painter& w, const String dash, double scale) {
void DrawLineOpa(Painter& w, double x0, double y0, double x1, double y1, double scale,
double opacity, double thick, const Color &color, String dash,
const Color &background) {
const Color &) {
w.Move(Pointf(x0, y0));
w.Line(Pointf(x1, y1));
DashScaled(w, dash, scale);
@ -211,7 +211,7 @@ void DrawLineOpa(Painter& w, double x0, double y0, double x1, double y1, double
void DrawCircleOpa(Painter& w, double x, double y, double r, double scale,
double opacity, double thick, const Color &color, String dash,
const Color &background) {
const Color &) {
w.Circle(x, y, r);
DashScaled(w, dash, scale);
w.Opacity(opacity); // Before Stroke()
@ -332,7 +332,7 @@ void DrawPolylineOpa(Draw& w, const Vector<Pointf> &p, double scale, double opac
}
void DrawPolylineOpa(Painter& w, const Vector<Pointf> &p, double scale, double opacity,
double thick, const Color &color, String dash, const Color &background) {
double thick, const Color &color, String dash, const Color &) {
ASSERT(!p.IsEmpty());
bool broken = true;
for (int i = 0; i < p.GetCount(); ++i) {
@ -351,7 +351,7 @@ void DrawPolylineOpa(Painter& w, const Vector<Pointf> &p, double scale, double o
w.Stroke(thick*scale, color);
}
void FillPolylineOpa(Draw& w, const Vector<Pointf> &p, double scale, double opacity,
void FillPolylineOpa(Draw& w, const Vector<Pointf> &p, double , double opacity,
const Color &background, const Color &fillColor) {
ASSERT(!p.IsEmpty());
Color opacolor = GetOpaqueColor(fillColor, background, opacity) ;
@ -359,14 +359,14 @@ void FillPolylineOpa(Draw& w, const Vector<Pointf> &p, double scale, double opac
Vector<Point> pi;
pi.SetCount(p.GetCount());
for (int i = 0; i < pi.GetCount(); ++i) {
pi[i].x = (int)p[i].x;
pi[i].y = (int)p[i].y;
pi[i].x = static_cast<int>(p[i].x);
pi[i].y = static_cast<int>(p[i].y);
}
w.DrawPolygon(pi, opacolor);
}
void FillPolylineOpa(Painter& w, const Vector<Pointf> &p, double scale, double opacity,
const Color &background, const Color &fillColor) {
void FillPolylineOpa(Painter& w, const Vector<Pointf> &p, double , double opacity,
const Color &, const Color &fillColor) {
ASSERT(!p.IsEmpty());
w.Move(p[0]);
for (int i = 1; i < p.GetCount(); ++i)

View file

@ -1,6 +1,8 @@
#include "ScatterDraw.h"
#include <ScatterDraw/Unpedantic.h>
#include <plugin/Eigen/Eigen.h>
#include <ScatterDraw/Pedantic.h>
namespace Upp {

View file

@ -30,8 +30,8 @@ public:
virtual String GetEquation(int numDigits = 3) = 0;
virtual inline int64 GetCount() {return Null;}
void SetNumDigits(int n) {numDigits = n;}
int GetNumDigits() {return numDigits;}
//void SetNumDigits(int n) {numDigits = n;}
//int GetNumDigits() {return numDigits;}
void SetMaxFitFunctionEvaluations(int n){maxFitFunctionEvaluations = n;}
int GetMaxFitFunctionEvaluations() {return maxFitFunctionEvaluations;}
@ -67,7 +67,7 @@ public:
protected:
Vector<double> coeff;
int degree;
static int numDigits, maxFitFunctionEvaluations;
static int /*numDigits,*/ maxFitFunctionEvaluations;
void SetNumCoeff(int num);
void SetCoeff(const Vector<double>& c) {coeff = clone(c);}
@ -88,11 +88,11 @@ public:
AvgEquation(double c0) {SetCoeff(c0);}
double f(double ) {return coeff[0];}
virtual String GetName() {return t_("Average");}
virtual String GetEquation(int numDigits = 3) {
String ret = Format("%s", FormatCoeff(0, numDigits));
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s", FormatCoeff(0, _numDigits));
return ret;
}
void SetDegree(int num) {NEVER();}
void SetDegree(int ) {NEVER();}
virtual void GuessCoeff(DataSource &series) {coeff[0] = series.AvgY();}
};
@ -104,8 +104,8 @@ public:
return coeff[0] + x*coeff[1];
}
virtual String GetName() {return t_("Linear");}
virtual String GetEquation(int numDigits = 3) {
String ret = Format("%s + %s*x", FormatCoeff(0, numDigits), FormatCoeff(1, numDigits));
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s + %s*x", FormatCoeff(0, _numDigits), FormatCoeff(1, _numDigits));
ret.Replace("+ -", "- ");
return ret;
}
@ -157,13 +157,13 @@ public:
void Init(double offset, double A, double w, double phi) {coeff.Clear(); coeff << offset << A << w << phi;}
double f(double x) {return coeff[0] + coeff[1]*sin(coeff[2]*x + coeff[3]);}
virtual String GetName() {return t_("Sine");}
virtual String GetEquation(int numDigits = 3) {
String ret = Format("%s + %s*sin(%s*t + %s)", FormatCoeff(0, numDigits), FormatCoeff(1, numDigits)
, FormatCoeff(2, numDigits), FormatCoeff(3, numDigits));
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s + %s*sin(%s*t + %s)", FormatCoeff(0, _numDigits), FormatCoeff(1, _numDigits)
, FormatCoeff(2, _numDigits), FormatCoeff(3, _numDigits));
ret.Replace("+ -", "- ");
return ret;
}
void SetDegree(int num) {NEVER();}
void SetDegree(int ) {NEVER();}
virtual void GuessCoeff(DataSource &series) {
coeff[0] = series.AvgY();
coeff[1] = series.SinEstim_Amplitude(coeff[0]);
@ -182,13 +182,13 @@ public:
void Init(double offset, double A, double lambda, double w, double phi) {coeff.Clear(); coeff << offset << A << lambda << w << phi;}
double f(double x) {return coeff[0] + coeff[1]*exp(-coeff[2]*x)*cos(coeff[3]*x + coeff[4]);}
virtual String GetName() {return t_("DampedSinusoidal");}
virtual String GetEquation(int numDigits = 3) {
String ret = Format("%s + %s*e^(-%s*t)*cos(%s*t + %s)", FormatCoeff(0, numDigits),
FormatCoeff(1, numDigits), FormatCoeff(2, numDigits), FormatCoeff(3, numDigits), FormatCoeff(4, numDigits));
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s + %s*e^(-%s*t)*cos(%s*t + %s)", FormatCoeff(0, _numDigits),
FormatCoeff(1, _numDigits), FormatCoeff(2, _numDigits), FormatCoeff(3, _numDigits), FormatCoeff(4, _numDigits));
ret.Replace("+ -", "- ");
return ret;
}
void SetDegree(int num) {NEVER();}
void SetDegree(int ) {NEVER();}
virtual void GuessCoeff(DataSource &series) {
coeff[0] = series.AvgY();
coeff[2] = series.SinEstim_Amplitude(coeff[0]);
@ -210,15 +210,15 @@ public:
coeff << offset << A1 << w1 << phi1 << A2 << lambda << w2 << phi2;}
double f(double x) {return coeff[0] + coeff[1]*cos(coeff[2]*x + coeff[3]) + coeff[4]*exp(-coeff[5]*x)*cos(coeff[6]*x + coeff[7]);}
virtual String GetName() {return t_("Sin_DampedSinusoidal");}
virtual String GetEquation(int numDigits = 3) {
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s + %s*cos(%s*t + %s) + %s*e^(-%s*t)*cos(%s*t + %s)",
FormatCoeff(0, numDigits), FormatCoeff(1, numDigits), FormatCoeff(2, numDigits),
FormatCoeff(3, numDigits), FormatCoeff(4, numDigits), FormatCoeff(5, numDigits),
FormatCoeff(6, numDigits), FormatCoeff(7, numDigits));
FormatCoeff(0, _numDigits), FormatCoeff(1, _numDigits), FormatCoeff(2, _numDigits),
FormatCoeff(3, _numDigits), FormatCoeff(4, _numDigits), FormatCoeff(5, _numDigits),
FormatCoeff(6, _numDigits), FormatCoeff(7, _numDigits));
ret.Replace("+ -", "- ");
return ret;
}
void SetDegree(int num) {NEVER();}
void SetDegree(int ) {NEVER();}
virtual void GuessCoeff(DataSource &series) {
coeff[0] = series.AvgY();
coeff[1] = series.SinEstim_Amplitude(coeff[0]);
@ -273,8 +273,8 @@ public:
ret.Replace("+ -", "- ");
return ret;
}
virtual void GuessCoeff(DataSource &series) {}
void SetDegree(int num) {NEVER();}
virtual void GuessCoeff(DataSource &) {}
void SetDegree(int ) {NEVER();}
};
class RealExponentEquation : public ExplicitEquation {
@ -287,13 +287,13 @@ public:
return coeff[0]*pow(x, coeff[1]);
}
virtual String GetName() {return t_("RealExponent");}
virtual String GetEquation(int numDigits = 3) {
String ret = Format("%s*x^%s", FormatCoeff(0, numDigits), FormatCoeff(1, numDigits));
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s*x^%s", FormatCoeff(0, _numDigits), FormatCoeff(1, _numDigits));
ret.Replace("+ -", "- ");
return ret;
}
virtual void GuessCoeff(DataSource &series) {}
void SetDegree(int num) {NEVER();}
virtual void GuessCoeff(DataSource &) {}
void SetDegree(int ) {NEVER();}
};
class WeibullCumulativeEquation : public ExplicitEquation {
@ -315,8 +315,8 @@ public:
ret.Replace("+ -", "- ");
return ret;
}
virtual void GuessCoeff(DataSource &series) {}
void SetDegree(int num) {NEVER();}
virtual void GuessCoeff(DataSource &) {}
void SetDegree(int ) {NEVER();}
};
class WeibullEquation : public ExplicitEquation {
@ -339,7 +339,7 @@ public:
ret.Replace("+ -", "- ");
return ret;
}
virtual void GuessCoeff(DataSource &series) {}
virtual void GuessCoeff(DataSource &) {}
virtual void _GuessCoeff(DataSource &series) {
Vector<Pointf> cumulative = series.CumulativeY();
factor = cumulative.Top().y;
@ -359,7 +359,7 @@ public:
return ExplicitEquation::Fit(series, r2);
}
FitError Fit(DataSource &series) {double dummy; return Fit(series, dummy);}
void SetDegree(int num) {NEVER();}
void SetDegree(int ) {NEVER();}
private:
double factor;
};
@ -370,13 +370,13 @@ public:
Rational1Equation(double c0, double c1, double c2) {SetCoeff(c0, c1, c2);}
double f(double x) {return coeff[0]/(x + coeff[1]) + coeff[2];}
virtual String GetName() {return t_("Rational_1");}
virtual String GetEquation(int numDigits = 3) {
String ret = Format("%s/(x + %s) + %s", FormatCoeff(0, numDigits), FormatCoeff(1, numDigits), FormatCoeff(2, numDigits));
virtual String GetEquation(int _numDigits = 3) {
String ret = Format("%s/(x + %s) + %s", FormatCoeff(0, _numDigits), FormatCoeff(1, _numDigits), FormatCoeff(2, _numDigits));
ret.Replace("+ -", "- ");
return ret;
}
virtual void GuessCoeff(DataSource &series) {}
void SetDegree(int num) {NEVER();}
virtual void GuessCoeff(DataSource &) {}
void SetDegree(int ) {NEVER();}
};
class SplineEquation : public ExplicitEquation {
@ -384,8 +384,8 @@ public:
SplineEquation() {}
double f(double x);
virtual String GetName() {return t_("Spline");}
void SetDegree(int num) {NEVER();}
void GuessCoeff(DataSource &series) {NEVER();}
void SetDegree(int ) {NEVER();}
void GuessCoeff(DataSource &) {NEVER();}
String GetEquation(int) {return t_("Spline");}
FitError Fit(DataSource &series, double &r2);
FitError Fit(DataSource &series) {double dummy; return Fit(series, dummy);}
@ -401,7 +401,7 @@ class Unit : public Moveable<Unit> {
public:
Unit() {SetNull();}
Unit(const Nuller&) : Unit() {}
Unit(double m, double l, double t) : m(m), l(l), t(t) {}
Unit(double _m, double _l, double _t) : m(_m), l(_l), t(_t) {}
String GetString() {
if (IsNullInstance())
return String();
@ -459,7 +459,7 @@ public:
class doubleUnit : public Moveable<doubleUnit> {
public:
doubleUnit() : doubleUnit(0) {}
doubleUnit(double val) : val(val), unit(0, 0, 0) {}
doubleUnit(double _val) : val(_val), unit(0, 0, 0) {}
doubleUnit(const Nuller&) {SetNull();}
double val;

View file

@ -5,16 +5,16 @@ class MarkPlot {
public:
MarkPlot() : multiPlot(false), type(0) {}
virtual ~MarkPlot() {};
virtual void Paint(Draw &p, const double& scale, const Point& cp, const double& size,
virtual void Paint(Draw &p, const double& , const Point& cp, const double& size,
const Color& markColor, const double& markBorderWidth, const Color& markBorderColor) const = 0;
virtual void Paint(Draw &p, const double& scale, int x, int y, const Vector<int>& dataX,
const Vector<int>& dataY, const Vector<double>& dataFixed, const double& size,
const Color& markColor, const double& markBorderWidth, const Color& markBorderColor) const {NEVER();};
virtual void Paint(Painter &p, const double& scale, const Point& cp, const double& size,
virtual void Paint(Draw &, const double& , int , int , const Vector<int>& ,
const Vector<int>& , const Vector<double>& , const double& ,
const Color& , const double& , const Color& ) const {NEVER();};
virtual void Paint(Painter &p, const double& , const Point& cp, const double& size,
const Color& markColor, const double& markBorderWidth, const Color& markBorderColor) const = 0;
virtual void Paint(Painter &p, const double& scale, int x, int y, const Vector<int>& dataX,
const Vector<int>& dataY, const Vector<double>& dataFixed, const double& size,
const Color& markColor, const double& markBorderWidth, const Color& markBorderColor) const {NEVER();};
virtual void Paint(Painter &, const double& , int , int , const Vector<int>& ,
const Vector<int>& , const Vector<double>& , const double& ,
const Color& , const double& , const Color& ) const {NEVER();};
template<class T>
static void Register(const String& name)
{
@ -47,7 +47,7 @@ public:
virtual int GetTypeCount() {return 0;}
virtual const char **TypeString() {return NULL;}
void SetTypeType(int type) {this->type = type;}
void SetTypeType(int _type) {this->type = _type;}
int GetTypeType() {return type;}
protected:
@ -158,12 +158,12 @@ private:
public:
void Paint(Draw &p, const double& scale, const Point& cp, const double& size, const Color& markColor,
const double& markBorderWidth, const Color& markBorderColor) const
const double& , const Color& ) const
{
DoPaint(p, scale, cp, size, markColor);
}
void Paint(Painter &p, const double& scale, const Point& cp, const double& size, const Color& markColor,
const double& markBorderWidth, const Color& markBorderColor) const
const double& , const Color& ) const
{
DoPaint(p, scale, cp, size, markColor);
}
@ -182,12 +182,12 @@ private:
public:
void Paint(Draw &p, const double& scale, const Point& cp, const double& size, const Color& markColor,
const double& markBorderWidth, const Color& markBorderColor) const
const double& , const Color& ) const
{
DoPaint(p, scale, cp, size, markColor);
}
void Paint(Painter &p, const double& scale, const Point& cp, const double& size, const Color& markColor,
const double& markBorderWidth, const Color& markBorderColor) const
const double& , const Color& ) const
{
DoPaint(p, scale, cp, size, markColor);
}
@ -220,7 +220,7 @@ public:
}
};
void debug_h(); // Dummy function used to debug .h files
//void debug_h(); // Dummy function used to debug .h files
class RangePlot : public MarkPlot {
public:
@ -324,23 +324,23 @@ private:
public:
BubblePlot() {multiPlot = true;}
virtual void Paint(Draw &p, const double& scale, int x, int y, const Vector<int>& dataX,
const Vector<int>& dataY, const Vector<double>& dataFixed, const double& size,
virtual void Paint(Draw &p, const double& scale, int x, int y, const Vector<int>& ,
const Vector<int>& , const Vector<double>& dataFixed, const double& size,
const Color& markColor, const double& markBorderWidth, const Color& markBorderColor) const
{
DoPaint(p, scale, x, y, dataFixed, size, markColor, markBorderWidth, markBorderColor);
}
virtual void Paint(Painter &p, const double& scale, int x, int y, const Vector<int>& dataX,
const Vector<int>& dataY, const Vector<double>& dataFixed, const double& size,
virtual void Paint(Painter &p, const double& scale, int x, int y, const Vector<int>& ,
const Vector<int>& , const Vector<double>& dataFixed, const double& size,
const Color& markColor, const double& markBorderWidth, const Color& markBorderColor) const
{
DoPaint(p, scale, x, y, dataFixed, size, markColor, markBorderWidth, markBorderColor);
}
void Paint(Draw &p, const double& scale, const Point& cp, const double& size, const Color& markColor,
const double& markBorderWidth, const Color& markBorderColor) const
void Paint(Draw &, const double& , const Point& , const double& , const Color& ,
const double& , const Color& ) const
{}
void Paint(Painter &p, const double& scale, const Point& cp, const double& size, const Color& markColor,
const double& markBorderWidth, const Color& markBorderColor) const
void Paint(Painter &, const double& , const Point& , const double& , const Color& ,
const double& , const Color& ) const
{}
};

View file

@ -1,27 +1,33 @@
#ifndef _ScatterDraw_Pedantic_h_
#define _ScatterDraw_Pedantic_h_
#if defined(COMPILER_GCC) && defined(flagDEBUG) && defined(flagPEDANTIC)
#pragma GCC diagnostic warning "-Wall"
#pragma GCC diagnostic warning "-Wextra"
#pragma GCC diagnostic warning "-Wpedantic"
#pragma GCC diagnostic warning "-Wcast-align"
#pragma GCC diagnostic warning "-Wcast-qual"
#pragma GCC diagnostic warning "-Wctor-dtor-privacy"
#pragma GCC diagnostic warning "-Wdisabled-optimization"
#pragma GCC diagnostic warning "-Wformat=2"
#pragma GCC diagnostic warning "-Winit-self"
#pragma GCC diagnostic warning "-Wlogical-op"
#pragma GCC diagnostic warning "-Wmissing-include-dirs"
#pragma GCC diagnostic warning "-Wnoexcept"
#pragma GCC diagnostic warning "-Wold-style-cast"
//#pragma GCC diagnostic warning "-Woverloaded-virtual"
#pragma GCC diagnostic warning "-Wredundant-decls"
#pragma GCC diagnostic warning "-Wshadow"
#pragma GCC diagnostic warning "-Wsign-promo"
#pragma GCC diagnostic warning "-Wstrict-null-sentinel"
#pragma GCC diagnostic warning "-Wstrict-overflow=4"
#pragma GCC diagnostic warning "-Wundef"
#if defined(flagDEBUG) && defined(flagPEDANTIC)
#if defined(COMPILER_GCC)
#pragma GCC diagnostic push
#pragma GCC diagnostic warning "-Wall"
#pragma GCC diagnostic warning "-Wextra"
#pragma GCC diagnostic warning "-Wpedantic"
#pragma GCC diagnostic warning "-Wcast-align"
#pragma GCC diagnostic warning "-Wcast-qual"
#pragma GCC diagnostic warning "-Wctor-dtor-privacy"
#pragma GCC diagnostic warning "-Wdisabled-optimization"
#pragma GCC diagnostic warning "-Wformat=2"
#pragma GCC diagnostic warning "-Winit-self"
#pragma GCC diagnostic warning "-Wlogical-op"
#pragma GCC diagnostic warning "-Wmissing-include-dirs"
#pragma GCC diagnostic warning "-Wnoexcept"
#pragma GCC diagnostic warning "-Wold-style-cast"
//#pragma GCC diagnostic warning "-Woverloaded-virtual"
#pragma GCC diagnostic warning "-Wredundant-decls"
#pragma GCC diagnostic warning "-Wshadow"
#pragma GCC diagnostic warning "-Wsign-promo"
#pragma GCC diagnostic warning "-Wstrict-null-sentinel"
#pragma GCC diagnostic warning "-Wstrict-overflow=4"
#pragma GCC diagnostic warning "-Wundef"
#pragma GCC diagnostic warning "-Wunused-variable"
#endif
#endif
#endif

View file

@ -3,6 +3,8 @@
#include <Draw/Draw.h>
#include <Painter/Painter.h>
#include <ScatterDraw/Pedantic.h>
#include "DataSource.h"
using namespace Upp;

View file

@ -210,7 +210,7 @@ bool ScatterDraw::PointInBorder(Point &pt)
return !PointInPlot(pt);
}
bool ScatterDraw::PointInLegend(Point &pt)
bool ScatterDraw::PointInLegend(Point &)
{
return false;
}
@ -757,7 +757,6 @@ Value ScatterDraw::GetStringY(int index, int64 idata) {
double ret = GetValueY(index, idata);
if (IsNull(ret))
return Null;
String sret;
if (cbModifFormatY) {
String sret;
cbModifFormatY(sret, int(idata), ret);
@ -1144,7 +1143,7 @@ bool ScatterDraw::IsVisible(int index) {
return series[index].opacity > 0;
}
ScatterDraw &ScatterDraw::ShowAll(bool show) {
ScatterDraw &ScatterDraw::ShowAll(bool ) {
for (int i = 0; i < series.GetCount(); ++i)
series[i].opacity = 1;
return *this;
@ -1179,7 +1178,7 @@ void ScatterDraw::RemoveAllSeries() {
Drawing ScatterDraw::GetDrawing() {
DrawingDraw ddw(size);
SetDrawing(ddw, true);
SetDrawing<DrawingDraw>(ddw, true);
PlotTexts(ddw);
return ddw;

View file

@ -16,7 +16,7 @@ using namespace Upp;
Color GetOpaqueColor(const Color &color, const Color &background, double opacity);
void debug_h(); // Dummy function used to debug .h files
//void debug_h(); // Dummy function used to debug .h files
class DashStyle {
public:
@ -335,8 +335,8 @@ public:
return *this;
};
Size GetSize() const {return size;};
ScatterDraw& Responsive(bool responsive = true, double factor = 1) {
this->responsive = responsive;
ScatterDraw& Responsive(bool _responsive = true, double factor = 1) {
this->responsive = _responsive;
responsivenessFactor = factor;
plotScaleX = responsive ? responsivenessFactor*size.cx/600. : 1;
plotScaleY = responsive ? responsivenessFactor*size.cy/400. : 1;
@ -421,7 +421,7 @@ public:
Color& GetLegendFillColor() {return legendFillColor;}
Color& GetLegendBorderColor() {return legendBorderColor;}
ScatterDraw& SetMode(int mode = MD_ANTIALIASED) {this->mode = mode; Refresh(); return *this;};
ScatterDraw& SetMode(int _mode = MD_ANTIALIASED) {this->mode = _mode; Refresh(); return *this;};
int GetMode() {return mode;};
void ZoomToFit(bool horizontal = true, bool vertical = false, double factor = 0);
@ -1116,9 +1116,9 @@ protected:
void Scrolling(bool down, Point &pt, bool isOut = false);
void ExpFormat(String& s, int i, double d) {s = FormatDoubleExp(d, 1);}
void MonFormat(String& s, int i, double d) {s = Format("%Mon", int(d));}
void DyFormat(String& s, int i, double d) {s = Format("%Dy", int(d));}
void ExpFormat(String& s, int , double d) {s = FormatDoubleExp(d, 1);}
void MonFormat(String& s, int , double d) {s = Format("%Mon", int(d));}
void DyFormat(String& s, int , double d) {s = Format("%Dy", int(d));}
static String VariableFormat(double range, double d);
@ -1687,7 +1687,7 @@ void ScatterDraw::Plot(T& w)
for (int i = 0; i < points.GetCount() && i < series[j].labels->GetCount(); i++) {
String txt = (*(series[j].labels))[i];
Size sz = GetTextSizeSpace(txt, fnt);
int ddy = -sz.cy/2;
int ddy = static_cast<int>(-sz.cy/2.);
int ddx;
switch (series[j].labelsAlign) {
case ALIGN_LEFT: ddx = 0; break;

View file

@ -22,6 +22,7 @@ file
PieDraw.cpp,
PieDraw.h,
Pedantic.h,
Unpedantic.h,
ScatterDraw.t,
srcdoc.tpp,
src.tpp,

View file

@ -67,13 +67,13 @@ private:
public:
void Paint(Draw& w, Vector<Pointf> &p, const double &scale, const double opacity,
double thick, const Color &color, String pattern, const Color &background,
const Color &fillColor, double fx, double fy, double y0, double width, bool isClosed) const
const Color &fillColor, double , double , double y0, double , bool isClosed) const
{
DoPaint(w, p, scale, opacity, thick, color, pattern, background, fillColor, y0, isClosed);
}
void Paint(Painter& w, Vector<Pointf> &p, const double &scale, const double opacity,
double thick, const Color &color, String pattern, const Color &background,
const Color &fillColor, double fx, double fy, double y0, double width, bool isClosed) const
const Color &fillColor, double , double , double y0, double , bool isClosed) const
{
DoPaint(w, p, scale, opacity, thick, color, pattern, background, fillColor, y0, isClosed);
}
@ -111,13 +111,13 @@ private:
public:
void Paint(Draw& w, Vector<Pointf> &p, const double &scale, const double opacity,
double thick, const Color &color, String pattern, const Color &background,
const Color &fillColor, double fx, double fy, double y0, double width, bool isClosed) const
const Color &fillColor, double , double , double y0, double , bool ) const
{
DoPaint(w, p, scale, opacity, thick, color, pattern, background, fillColor, y0);
}
void Paint(Painter& w, Vector<Pointf> &p, const double &scale, const double opacity,
double thick, const Color &color, String pattern, const Color &background,
const Color &fillColor, double fx, double fy, double y0, double width, bool isClosed) const
const Color &fillColor, double , double , double y0, double , bool ) const
{
DoPaint(w, p, scale, opacity, thick, color, pattern, background, fillColor, y0);
}
@ -142,13 +142,13 @@ private:
public:
void Paint(Draw& w, Vector<Pointf> &p, const double &scale, const double opacity,
double thick, const Color &color, String pattern, const Color &background,
const Color &fillColor, double fx, double fy, double y0, double width, bool isClosed) const
const Color &fillColor, double fx, double , double y0, double width, bool ) const
{
DoPaint(w, p, scale, opacity, thick, color, pattern, background, fillColor, fx, y0, width);
}
void Paint(Painter& w, Vector<Pointf> &p, const double &scale, const double opacity,
double thick, const Color &color, String pattern, const Color &background,
const Color &fillColor, double fx, double fy, double y0, double width, bool isClosed) const
const Color &fillColor, double fx, double , double y0, double width, bool ) const
{
DoPaint(w, p, scale, opacity, thick, color, pattern, background, fillColor, fx, y0, width);
}

View file

@ -1,6 +1,5 @@
#include "ScatterDraw.h"
ScatterDraw& ScatterDraw::AddSurf(DataSourceSurf &_surf) {
surf = &_surf;
if (IsNull(surfMinZ))
@ -36,12 +35,16 @@ Color GetRainbowColor(double frac, RAINBOW rainbow, int numScales) {
frac = Filter01(frac);
switch (rainbow) {
case BLUE_YELLOW_RED: frac = 1 - frac;
return GetRainbowColor(frac, Color(255,0,0), Color(255,255,0), Color(0,0,255), numScales);
case RED_YELLOW_BLUE: return GetRainbowColor(frac, Color(255,0,0), Color(255,255,0), Color(0,0,255), numScales);
case GREEN_YELLOW_RED: frac = 1 - frac;
return GetRainbowColor(frac, Color(255,0,0), Color(255,255,0), Color(0,255,0), numScales);
case RED_YELLOW_GREEN: return GetRainbowColor(frac, Color(255,0,0), Color(255,255,0), Color(0,255,0), numScales);
case WHITE_BLACK: frac = 1 - frac;
return GetRainbowColor(frac, Color(0,0,0), Color(255,255,255), numScales);
case BLACK_WHITE: return GetRainbowColor(frac, Color(0,0,0), Color(255,255,255), numScales);
case BLUE_WHITE_RED: frac = 1 - frac;
return GetRainbowColor(frac, Color(255,0,0), Color(255,255,255), Color(0,0,255), numScales);
case RED_WHITE_BLUE: return GetRainbowColor(frac, Color(255,0,0), Color(255,255,255), Color(0,0,255), numScales);
}
return Null;

View file

@ -0,0 +1,32 @@
#ifndef _ScatterDraw_Unpedantic_h_
#define _ScatterDraw_Unpedantic_h_
#if defined(flagDEBUG) && defined(flagPEDANTIC)
#if defined(COMPILER_GCC)
#pragma GCC diagnostic ignored "-Wall"
#pragma GCC diagnostic ignored "-Wextra"
#pragma GCC diagnostic ignored "-Wpedantic"
#pragma GCC diagnostic ignored "-Wcast-align"
#pragma GCC diagnostic ignored "-Wcast-qual"
#pragma GCC diagnostic ignored "-Wctor-dtor-privacy"
#pragma GCC diagnostic ignored "-Wdisabled-optimization"
#pragma GCC diagnostic ignored "-Wformat=2"
#pragma GCC diagnostic ignored "-Winit-self"
#pragma GCC diagnostic ignored "-Wlogical-op"
#pragma GCC diagnostic ignored "-Wmissing-include-dirs"
#pragma GCC diagnostic ignored "-Wnoexcept"
#pragma GCC diagnostic ignored "-Wold-style-cast"
//#pragma GCC diagnostic ignored "-Woverloaded-virtual"
#pragma GCC diagnostic ignored "-Wredundant-decls"
#pragma GCC diagnostic ignored "-Wshadow"
#pragma GCC diagnostic ignored "-Wsign-promo"
#pragma GCC diagnostic ignored "-Wstrict-null-sentinel"
#pragma GCC diagnostic ignored "-Wstrict-overflow=4"
#pragma GCC diagnostic ignored "-Wundef"
#pragma GCC diagnostic ignored "-Wunused-variable"
#endif
#endif
#endif