00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00024
00025 #ifndef QVKEYPOINT_H
00026 #define QVKEYPOINT_H
00027
00028 #include <QPointF>
00029
00039 class QVKeypoint
00040 {
00041 private:
00042 double _x, _y, _scale, _orientation;
00043
00044 public:
00045
00054 QVKeypoint(const double x = 0.0, const double y = 0.0, const double scale = 0.0, const double orientation = 0.0):
00055 _x(x), _y(y), _scale(scale), _orientation(orientation)
00056 { }
00057
00066 QVKeypoint(const QVKeypoint &other): _x(other._x), _y(other._y), _scale(other._scale), _orientation(other._orientation)
00067 { }
00068
00069 QVKeypoint(const QPointF &location, const double scale = 0.0, const double orientation = 0.0):
00070 _x(location.x()), _y(location.y()), _scale(scale), _orientation(orientation)
00071 { }
00072
00075 operator QPointF() const { return location(); }
00076
00079 QPointF location() const { return QPointF(_x,_y); }
00080
00082 double &x() { return _x; }
00083
00085 double x() const { return _x; }
00086
00088 double &y() { return _y; }
00089
00091 double y() const { return _y; }
00092
00094 double &scale() { return _scale; }
00095
00097 double scale() const { return _scale; }
00098
00100 double &orientation() { return _orientation; }
00101
00103 double orientation() const { return _orientation; }
00104 };
00105
00106 #endif