JG ROOT Tools libraries
version 5.0 - august 2014
|
#include <RAffine2D.hh>
Public Member Functions | |
RAffine2D () | |
RAffine2D (const RMatrix2D &m) | |
RAffine2D (const RVector2D &t, const RMatrix2D &m=RMatrix2D::id) | |
RAffine2D (const RVector2D &v0, const RVector2D &v1, const RVector2D &v2, const RMatrixDef type=axisVector) | |
RAffine2D (const RAffine2D &a) | |
RAffine2D & | operator= (const RAffine2D &a) |
RAffine2D & | operator= (const RMatrix2D &m) |
RAffine2D & | operator= (const RVector2D &v) |
virtual | ~RAffine2D () |
virtual RMatrix2D | GetMatrix () const |
virtual RVector2D | GetTranslation () const |
virtual RVector2D | GetVector () const |
virtual RPoint2D | GetOrigin () const |
virtual void | SetOrigin (const RPoint2D ctr) |
virtual void | SetAxis (const u_int n, const RPoint2D v) |
RAffine2D | Inverse () const |
RVector2D | Transform (const RVector2D &v) const |
RAffine2D | operator+ () const |
RAffine2D | operator- () const |
RAffine2D | operator+= (const RAffine2D &t) |
RAffine2D | operator-= (const RAffine2D &t) |
RAffine2D | operator*= (const RAffine2D &t) |
RAffine2D | operator*= (const Double_t r) |
RAffine2D | operator/= (const Double_t r) |
RAffine2D | operator+ (const RAffine2D &t) const |
RAffine2D | operator- (const RAffine2D &t) const |
RAffine2D | operator* (const RAffine2D &t) const |
RVector2D | operator* (const RVector2D &v) const |
RAffine2D | operator* (const Double_t r) const |
RAffine2D | operator/ (const Double_t r) const |
ClassDef (RAffine2D, 0) | |
![]() | |
RMatrix2D (const Double_t diag=1.) | |
RMatrix2D (const Double_t m00, const Double_t m01, const Double_t m10, const Double_t m11) | |
RMatrix2D (const RVector2D v1, const RVector2D v2, const RMatrixDef type=columnVector) | |
RMatrix2D (const RMatrix2D &m) | |
virtual RVector2D | operator[] (const u_int n) const |
virtual RVector2D | GetColumn (const u_int n) const |
virtual RVector2D | GetLine (const u_int n) const |
virtual RVector2D | GetAxis (const u_int n) const |
virtual void | SetColumn (const u_int n, const RPoint2D v) |
virtual void | SetLine (const u_int n, const RPoint2D v) |
Double_t | Determinant () const |
RMatrix2D | Inverse () const |
RVector2D | Transform (const RVector2D &v) const |
RMatrix2D | operator+ () const |
RMatrix2D | operator- () const |
RMatrix2D | operator+= (const RMatrix2D &m) |
RMatrix2D | operator-= (const RMatrix2D &m) |
RMatrix2D | operator*= (const RMatrix2D &m) |
RMatrix2D | operator*= (const Double_t r) |
RMatrix2D | operator/= (const Double_t r) |
RMatrix2D | operator+ (const RMatrix2D &m) const |
RMatrix2D | operator- (const RMatrix2D &m) const |
RMatrix2D | operator* (const RMatrix2D &m) const |
RVector2D | operator* (const RVector2D &v) const |
RMatrix2D | operator* (const Double_t r) const |
RMatrix2D | operator/ (const Double_t r) const |
ClassDef (RMatrix2D, 0) | |
Protected Attributes | |
RVector2D | tr |
Translation vector (new center) | |
![]() | |
Double_t | me [4] |
Eléménts de matrice. | |
Private Member Functions | |
GObject (RAffine2D) | |
Additional Inherited Members | |
![]() | |
enum | RMatrixDef { columnVector = 0, lineVector = 1, axisVector = 2 } |
Interprétation des vecteurs à la création d'une matrice. More... | |
![]() | |
static RMatrix2D | Rotation (const Double_t angle) |
![]() | |
static const RMatrix2D | null = RMatrix2D(0.) |
Matrice nulle. | |
static const RMatrix2D | id = RMatrix2D(1.) |
Matrice identité | |
static const Double_t | zero = RVector2D::zero |
Limites de test du zéro | |
This class defines a transformation corresponding to a matrix product and a vector translation. It corresponds to a referential change (in position and orientation).
It can be defined from:
This transformation can also be used to define an ellipse.
|
inline |
Default constructor: identity transformation.
References RVector2D::null, and tr.
|
inline |
|
inline |
Constructor from vector and matrix.
t | translation vector |
m | transformation matrix |
References tr.
RAffine2D::RAffine2D | ( | const RVector2D & | v0, |
const RVector2D & | v1, | ||
const RVector2D & | v2, | ||
const RMatrixDef | type = axisVector |
||
) |
Constructor from 3 vectors: either the translation and the matrix vectors, either the center and the axis vectors, depending on type argument (see RMatrix2D class for vectors v1 et v2 interpretation).
If v1 and v2 are axis of the new frame, v0 is considered as the center, else v0 is considered as the translation vector (which is just the opposite).
v0 | translation or center |
v1 | first axis or matrix vector |
v2 | second axis or matrix vector |
type | vectors interpretation |
|
inline |
|
inlinevirtual |
Destructor.
|
private |
Macro from GCpp library that defines the following functions:
Affectation from a matrix (null translation).
m | matrix to set |
Reimplemented from RMatrix2D.
References RVector2D::null, and tr.
Affectation from a vector (identity matrix).
v | vector to set |
References RMatrix2D::id, and tr.
|
inlinevirtual |
Get the transformation matrix.
Referenced by GetOrigin(), operator*(), operator+(), operator-(), SetOrigin(), and Transform().
|
inlinevirtual |
Get the translation vector.
References tr.
|
inlinevirtual |
|
inlinevirtual |
Get the origin point (opposite to the translation).
References GetMatrix(), Inverse(), and tr.
Referenced by RContourBaseEllipse::GetCenter(), and SetAxis().
|
inlinevirtual |
Set the transformation centre.
ctr | new ellipse center |
References GetMatrix(), and tr.
Referenced by RContourBaseEllipse::SetCenter().
|
virtual |
Set transformation axis, with no change of the center (which means that the translation vector may be modified).
n | axis number (0 or 1) |
v | new axis vector |
Reimplemented from RMatrix2D.
References RMatrix2D::axisVector, RMatrix2D::GetAxis(), GetOrigin(), and RAffine2D().
|
inline |
Invert transformation.
References RMatrix2D::Inverse(), RAffine2D(), and tr.
Referenced by GetOrigin().
Applay the transformation to a vector.
v | vector |
References GetMatrix(), and GetVector().
Referenced by RContourBaseEllipse::CheckPoint(), and RContourBaseEllipse::NormalisedDistance().
|
inline |
Unary sign operator +.
|
inline |
Unary sign operator +.
References GetMatrix(), and tr.
Transformations addition and affectation.
t | operand transformation |
Transformations subtraction and affectation.
t | operand transformation |
Transformations composition and affectation.
t | operand transformation |
|
inline |
Transformations product with scalar value and affectation.
r | real value (scalar) |
|
inline |
Transformations division by scalar value and affectation.
r | real value (scalar) |
Transformations composition.
t | operand transformation |
References GetMatrix(), and GetVector().
|
inline |
Multiplication with a scalar value.
r | real value (scalar) |
References GetMatrix(), and GetVector().
|
inline |
Division by a scalar value.
r | real value (scalar) |
RAffine2D::ClassDef | ( | RAffine2D | , |
0 | |||
) |
For ROOT dictionary.