120 #ifndef HEP_TRANSFROM3D_H 121 #define HEP_TRANSFROM3D_H 124 #include "CLHEP/Vector/ThreeVector.h" 128 template<
class T>
class Point3D;
129 template<
class T>
class Vector3D;
130 template<
class T>
class Normal3D;
180 double YX,
double YY,
double YZ,
double DY,
181 double ZX,
double ZY,
double ZZ,
double DZ)
182 : xx_(XX), xy_(XY), xz_(XZ), dx_(DX),
183 yx_(YX), yy_(YY), yz_(YZ), dy_(DY),
184 zx_(ZX), zy_(ZY), zz_(ZZ), dz_(DZ) {}
188 double YX,
double YY,
double YZ,
double DY,
189 double ZX,
double ZY,
double ZZ,
double DZ) {
190 xx_ = XX; xy_ = XY; xz_ = XZ; dx_ = DX;
191 yx_ = YX; yy_ = YY; yz_ = YZ; dy_ = DY;
192 zx_ = ZX; zy_ = ZY; zz_ = ZZ; dz_ = DZ;
213 : xx_(1), xy_(0), xz_(0), dx_(0),
214 yx_(0), yy_(1), yz_(0), dy_(0),
215 zx_(0), zy_(0), zz_(1), dz_(0) {}
233 : xx_(m.xx_), xy_(m.xy_), xz_(m.xz_), dx_(m.dx_),
234 yx_(m.yx_), yy_(m.yy_), yz_(m.yz_), dy_(m.dy_),
235 zx_(m.zx_), zy_(m.zy_), zz_(m.zz_), dz_(m.dz_) {}
291 xx_= m.xx_; xy_= m.xy_; xz_= m.xz_; dx_= m.dx_;
292 yx_= m.yx_; yy_= m.yy_; yz_= m.yz_; dy_= m.dy_;
293 zx_= m.zx_; zy_= m.zy_; zz_= m.zz_; dz_= m.dz_;
300 xy_= xz_= dx_= yx_= yz_= dy_= zx_= zy_= dz_= 0; xx_= yy_= zz_= 1;
439 double cosa = std::cos(a), sina = std::sin(a);
440 setTransform(1,0,0,0, 0,cosa,-sina,0, 0,sina,cosa,0);
467 double cosa = std::cos(a), sina = std::sin(a);
468 setTransform(cosa,0,sina,0, 0,1,0,0, -sina,0,cosa,0);
495 double cosa = std::cos(a), sina = std::sin(a);
496 setTransform(cosa,-sina,0,0, sina,cosa,0,0, 0,0,1,0);
529 :
Transform3D(1,0,0,x, 0,1,0,y, 0,0,1,z) {}
626 double YX,
double YY,
double YZ,
double DY,
627 double ZX,
double ZY,
double ZZ,
double DZ)
628 :
Transform3D(XX,XY,XZ,DX, YX,YY,YZ,DY, ZX,ZY,ZZ,DZ) {}
665 ReflectX3D(
double x=0) :
Reflect3D(-1,0,0,x+x, 0,1,0,0, 0,0,1,0) {}
686 ReflectY3D(
double y=0) :
Reflect3D(1,0,0,0, 0,-1,0,y+y, 0,0,1,0) {}
707 ReflectZ3D(
double z=0) :
Reflect3D(1,0,0,0, 0,1,0,0, 0,0,-1,z+z) {}
736 :
Transform3D(x,0,0,0, 0,y,0,0, 0,0,z,0) {}
741 :
Transform3D(s,0,0,0, 0,s,0,0, 0,0,s,0) {}
819 #ifdef ENABLE_BACKWARDS_COMPATIBILITY 840 #include "CLHEP/Geometry/Transform3D.icc"
Scale3D(double x, double y, double z)
Reflect3D(double XX, double XY, double XZ, double DX, double YX, double YY, double YZ, double DY, double ZX, double ZY, double ZZ, double DZ)
Translate3D(double x, double y, double z)