Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Point3D.cc
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id:$
3// ---------------------------------------------------------------------------
4
7
8namespace HepGeom {
9 //--------------------------------------------------------------------------
10 Point3D<float> &
12 double vx = x(), vy = y(), vz = z();
13 set(m.xx()*vx + m.xy()*vy + m.xz()*vz + m.dx(),
14 m.yx()*vx + m.yy()*vy + m.yz()*vz + m.dy(),
15 m.zx()*vx + m.zy()*vy + m.zz()*vz + m.dz());
16 return *this;
17 }
18
19 //--------------------------------------------------------------------------
21 operator*(const Transform3D & m, const Point3D<float> & v) {
22 double vx = v.x(), vy = v.y(), vz = v.z();
23 return Point3D<float>
24 (m.xx()*vx + m.xy()*vy + m.xz()*vz + m.dx(),
25 m.yx()*vx + m.yy()*vy + m.yz()*vz + m.dy(),
26 m.zx()*vx + m.zy()*vy + m.zz()*vz + m.dz());
27 }
28
29 //--------------------------------------------------------------------------
32 double vx = x(), vy = y(), vz = z();
33 set(m.xx()*vx + m.xy()*vy + m.xz()*vz + m.dx(),
34 m.yx()*vx + m.yy()*vy + m.yz()*vz + m.dy(),
35 m.zx()*vx + m.zy()*vy + m.zz()*vz + m.dz());
36 return *this;
37 }
38
39 //--------------------------------------------------------------------------
41 operator*(const Transform3D & m, const Point3D<double> & v) {
42 double vx = v.x(), vy = v.y(), vz = v.z();
43 return Point3D<double>
44 (m.xx()*vx + m.xy()*vy + m.xz()*vz + m.dx(),
45 m.yx()*vx + m.yy()*vy + m.yz()*vz + m.dy(),
46 m.zx()*vx + m.zy()*vy + m.zz()*vz + m.dz());
47 }
48} /* namespace HepGeom */
double dy() const
Definition: Transform3D.h:282
double zz() const
Definition: Transform3D.h:276
double yz() const
Definition: Transform3D.h:267
double dz() const
Definition: Transform3D.h:285
double dx() const
Definition: Transform3D.h:279
double xy() const
Definition: Transform3D.h:255
double zx() const
Definition: Transform3D.h:270
double yx() const
Definition: Transform3D.h:261
double zy() const
Definition: Transform3D.h:273
double xx() const
Definition: Transform3D.h:252
double yy() const
Definition: Transform3D.h:264
double xz() const
Definition: Transform3D.h:258
Normal3D< float > operator*(const Transform3D &m, const Normal3D< float > &v)
Definition: Normal3D.cc:24