mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-06-01 22:03:40 -06:00
ScatterDraw: Replaced VectorDouble with VectorXY
git-svn-id: svn://ultimatepp.org/upp/trunk@15147 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
3524d46198
commit
ebacdb9e9b
3 changed files with 39 additions and 14 deletions
|
|
@ -360,15 +360,15 @@ public:
|
|||
|
||||
class EigenVector : public DataSource {
|
||||
private:
|
||||
const Eigen::VectorXd *yData, *xData, *zData;
|
||||
const Eigen::VectorXd *xData, *yData, *zData;
|
||||
double x0, deltaX;
|
||||
|
||||
public:
|
||||
EigenVector(const Eigen::VectorXd &_yData, double _x0, double _deltaX) : yData(&_yData), x0(_x0), deltaX(_deltaX) {xData = nullptr;}
|
||||
EigenVector(const Eigen::VectorXd &_yData, const Eigen::VectorXd &_xData) : yData(&_yData), xData(&_xData) {zData = nullptr; x0 = deltaX = 0;}
|
||||
EigenVector(const Eigen::VectorXd &_yData, const Eigen::VectorXd &_xData, const Eigen::VectorXd &_zData) : yData(&_yData), xData(&_xData), zData(&_zData) {x0 = deltaX = 0;}
|
||||
virtual inline double y(int64 id) {return (*yData)(Eigen::Index(id));}
|
||||
EigenVector(const Eigen::VectorXd &_xData, const Eigen::VectorXd &_yData) : xData(&_xData), yData(&_yData) {zData = nullptr; x0 = deltaX = 0;}
|
||||
EigenVector(const Eigen::VectorXd &_xData, const Eigen::VectorXd &_yData, const Eigen::VectorXd &_zData) : xData(&_xData), yData(&_yData), zData(&_zData) {x0 = deltaX = 0;}
|
||||
virtual inline double x(int64 id) {return xData ? (*xData)(Eigen::Index(id)) : id*deltaX + x0;}
|
||||
virtual inline double y(int64 id) {return (*yData)(Eigen::Index(id));}
|
||||
virtual double znFixed(int n, int64 id) {
|
||||
if (n == 0)
|
||||
return (*zData)(Eigen::Index(id));
|
||||
|
|
@ -502,6 +502,29 @@ public:
|
|||
virtual int GetznFixedCount() const {return idsFixed.GetCount();}
|
||||
};
|
||||
|
||||
class VectorXY : public DataSource {
|
||||
private:
|
||||
const Vector<double> *xData, *yData;
|
||||
|
||||
public:
|
||||
VectorXY(const Vector<double> &_xData, Vector<double> &_yData) : xData(&_xData), yData(&_yData) {}
|
||||
virtual inline double x(int64 id) {return (*xData)[int(id)];}
|
||||
virtual inline double y(int64 id) {return (*yData)[int(id)];}
|
||||
virtual inline int64 GetCount() const {return min(xData->GetCount(), yData->GetCount());}
|
||||
};
|
||||
|
||||
class ArrayXY : public DataSource {
|
||||
private:
|
||||
const Upp::Array<double> *xData, *yData;
|
||||
|
||||
public:
|
||||
ArrayXY(const Upp::Array<double> &_xData, Upp::Array<double> &_yData) : xData(&_xData), yData(&_yData) {}
|
||||
virtual inline double x(int64 id) {return (*xData)[int(id)];}
|
||||
virtual inline double y(int64 id) {return (*yData)[int(id)];}
|
||||
virtual inline int64 GetCount() const {return min(xData->GetCount(), yData->GetCount());}
|
||||
};
|
||||
|
||||
/* Replaced by VectorXY and ArrayXY
|
||||
class VectorDouble : public DataSource {
|
||||
private:
|
||||
const Vector<double> *xData, *yData;
|
||||
|
|
@ -522,7 +545,7 @@ public:
|
|||
virtual inline double y(int64 id) {return (*yData)[int(id)];}
|
||||
virtual inline double x(int64 id) {return (*xData)[int(id)];}
|
||||
virtual inline int64 GetCount() const {return min(xData->GetCount(), yData->GetCount());}
|
||||
};
|
||||
};*/
|
||||
|
||||
class VectorPointf : public DataSource {
|
||||
private:
|
||||
|
|
@ -1003,7 +1026,9 @@ typename T::PlainObject Convolution2D(const Eigen::MatrixBase<T>& orig, const Ei
|
|||
dest *= factor;
|
||||
return dest;
|
||||
}
|
||||
|
||||
|
||||
//#include "deprecated.h"
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -598,11 +598,11 @@ ScatterDraw &ScatterDraw::InsertSeries(int index, double *xData, double *yData,
|
|||
}
|
||||
|
||||
ScatterDraw &ScatterDraw::InsertSeries(int index, Vector<double> &xData, Vector<double> &yData) {
|
||||
return InsertSeries<VectorDouble>(index, xData, yData);
|
||||
return InsertSeries<VectorXY>(index, xData, yData);
|
||||
}
|
||||
|
||||
ScatterDraw &ScatterDraw::InsertSeries(int index, Upp::Array<double> &xData, Upp::Array<double> &yData) {
|
||||
return InsertSeries<ArrayDouble>(index, xData, yData);
|
||||
return InsertSeries<ArrayXY>(index, xData, yData);
|
||||
}
|
||||
|
||||
ScatterDraw &ScatterDraw::InsertSeries(int index, Vector<Pointf> &points) {
|
||||
|
|
|
|||
|
|
@ -479,11 +479,11 @@ public:
|
|||
ScatterDraw &AddSeries(Eigen::VectorXd &yData, double x0, double deltaX)
|
||||
{return AddSeries<EigenVector>(yData, x0, deltaX);}
|
||||
ScatterDraw &AddSeries(Eigen::VectorXd &xData, Eigen::VectorXd &yData)
|
||||
{return AddSeries<EigenVector>(yData, xData);}
|
||||
{return AddSeries<EigenVector>(xData, yData);}
|
||||
ScatterDraw &AddSeries(Vector<double> &xData, Vector<double> &yData)
|
||||
{return AddSeries<VectorDouble>(yData, xData);}
|
||||
{return AddSeries<VectorXY>(xData, yData);}
|
||||
ScatterDraw &AddSeries(Upp::Array<double> &xData, Upp::Array<double> &yData)
|
||||
{return AddSeries<ArrayDouble>(yData, xData);}
|
||||
{return AddSeries<ArrayXY>(xData, yData);}
|
||||
ScatterDraw &AddSeries(Vector<Pointf> &points) {return AddSeries<VectorPointf>(points);}
|
||||
ScatterDraw &AddSeries(Upp::Array<Pointf> &points) {return AddSeries<ArrayPointf>(points);}
|
||||
template <class Y>
|
||||
|
|
@ -684,9 +684,9 @@ public:
|
|||
ScatterDraw &SetDrawXReticleNumbers(bool set = true) {drawXReticleNumbers = set; return *this;}
|
||||
ScatterDraw &SetDrawYReticleNumbers(bool set = true) {drawYReticleNumbers = set; return *this;}
|
||||
ScatterDraw &SetDrawY2ReticleNumbers(bool set = true){drawY2ReticleNumbers = set; return *this;}
|
||||
bool GetDrawXReticleNumbers() {return drawXReticleNumbers;}
|
||||
bool GetDrawYReticleNumbers() {return drawYReticleNumbers;}
|
||||
bool GetDrawY2ReticleNumbers() {return drawY2ReticleNumbers;}
|
||||
bool GetDrawXReticleNumbers() {return drawXReticleNumbers;}
|
||||
bool GetDrawYReticleNumbers() {return drawYReticleNumbers;}
|
||||
bool GetDrawY2ReticleNumbers() {return drawY2ReticleNumbers;}
|
||||
ScatterDraw &SetReticleFont(const Font &fnt) {reticleFont = fnt; return *this;}
|
||||
Font &GetReticleFont() {return reticleFont;}
|
||||
ScatterDraw &SetReticleColor(const Color &col) {reticleColor = col; return *this;}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue