KExiv2

rotationmatrix.h
Go to the documentation of this file.
1 
28 #ifndef LIBKEXIV2_ROTATIONMATRIX_H
29 #define LIBKEXIV2_ROTATIONMATRIX_H
30 
31 // Qt includes
32 
33 #include <QMatrix>
34 
35 // Local includes
36 
37 #include "kexiv2.h"
38 #include "libkexiv2_export.h"
39 
40 namespace KExiv2Iface
41 {
42 
48 class LIBKEXIV2_EXPORT RotationMatrix
49 {
50 
51 public:
52 
60  {
61  NoTransformation = 0,
62  FlipHorizontal = 1,
63  FlipVertical = 2,
64  Rotate90 = 5,
65  Rotate180 = 6,
66  Rotate270 = 7
67  };
68 
69 public:
70 
77 
78  bool operator==(const RotationMatrix& ma) const;
79  bool operator!=(const RotationMatrix& ma) const;
80 
82  bool isNoTransform() const;
83 
84  RotationMatrix& operator*=(const RotationMatrix& ma);
85 
87  RotationMatrix& operator*=(TransformationAction action);
88 
90  RotationMatrix& operator*=(QList<TransformationAction> actions);
91 
93  RotationMatrix& operator*=(KExiv2::ImageOrientation exifOrientation);
94 
99  QList<TransformationAction> transformations() const;
100 
104  KExiv2::ImageOrientation exifOrientation() const;
105 
107  QMatrix toMatrix() const;
108 
110  static QMatrix toMatrix(KExiv2::ImageOrientation orientation);
111 
112  RotationMatrix(int m11, int m12, int m21, int m22);
113 
114 protected:
115 
116  void set(int m11, int m12, int m21, int m22);
117 
118 protected:
119 
120  int m[2][2];
121 };
122 
123 } // namespace KExiv2Iface
124 
125 #endif // LIBKEXIV2_ROTATIONMATRIX_H
KExiv2Iface.
Definition: kexiv2.cpp:36
ImageOrientation
The image orientation values given by Exif metadata.
Definition: kexiv2.h:101
TransformationAction
This describes single transform primitives.
===========================================================This file is a part of KDE project ...
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Thu Nov 26 2020 22:35:13 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.