CLHEP 2.4.7.1
C++ Class Library for High Energy Physics
Transform3D.icc
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id: Transform3D.icc,v 1.1 2003/07/17 09:05:28 garren Exp $
3// ---------------------------------------------------------------------------
4
10
11namespace HepGeom {
12
13// I N L I N E S F O R T R A N S F O R M A T I O N
14
15inline
17(const Transform3D & r, int i) : rr(r), ii(i) {}
18
19inline
21 return rr(ii,jj);
22}
23
24inline
26 return Transform3D_row(*this, i);
27}
28
29inline
31 xx_= mt.xx(); xy_= mt.xy(); xz_= mt.xz();
32 yx_= mt.yx(); yy_= mt.yy(); yz_= mt.yz();
33 zx_= mt.zx(); zy_= mt.zy(); zz_= mt.zz();
34 dx_= v.x(); dy_= v.y(); dz_= v.z();
35}
36
37inline
45
46inline
51
52// I N L I N E S F O R R O T A T I O N
53
54inline
56 xx_= mt.xx(); xy_= mt.xy(); xz_= mt.xz();
57 yx_= mt.yx(); yy_= mt.yy(); yz_= mt.yz();
58 zx_= mt.zx(); zy_= mt.zy(); zz_= mt.zz();
59 dx_= 0; dy_= 0; dz_= 0;
60}
61
62inline
64 *this =
65 Rotate3D(a, Point3D<double>(0,0,0), Point3D<double>(v.x(),v.y(),v.z()));
66}
67
68inline
70 const Point3D<double> & to1, const Point3D<double> & to2)
71 : Transform3D(Point3D<double>(0,0,0),fr1,fr2,
72 Point3D<double>(0,0,0),to1,to2) {}
73
74// I N L I N E S F O R T R A N S L A T I O N
75
76inline
78 : Transform3D(1,0,0,v.x(), 0,1,0,v.y(), 0,0,1,v.z()) {}
79
80// I N L I N E S F O R R E F L E C T I O N
81
82inline
84 *this = Reflect3D(n.x(), n.y(), n.z(), -n*p);
85}
86
87} /* namespace HepGeom */
double z() const
double x() const
double y() const
double zz() const
Definition Rotation.icc:23
double yz() const
Definition Rotation.icc:20
HepRotation & rotateAxes(const Hep3Vector &newX, const Hep3Vector &newY, const Hep3Vector &newZ)
double zx() const
Definition Rotation.icc:21
double yx() const
Definition Rotation.icc:18
double zy() const
Definition Rotation.icc:22
double xx() const
Definition Rotation.icc:15
double yy() const
Definition Rotation.icc:19
double xz() const
Definition Rotation.icc:17
double xy() const
Definition Rotation.icc:16
Transform3D_row(const Transform3D &, int)
const Transform3D_row operator[](int) const
CLHEP::HepRotation getRotation() const
CLHEP::Hep3Vector getTranslation() const