Geant4
11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
Vector3D.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
// ---------------------------------------------------------------------------
3
4
#include "
CLHEP/Geometry/Vector3D.h
"
5
#include "
CLHEP/Geometry/Transform3D.h
"
6
7
namespace
HepGeom
{
8
//--------------------------------------------------------------------------
9
Vector3D<float> &
10
Vector3D<float>::transform
(
const
Transform3D
& m) {
11
double
vx = x(), vy = y(), vz = z();
12
set(m.xx()*vx + m.xy()*vy + m.xz()*vz,
13
m.yx()*vx + m.yy()*vy + m.yz()*vz,
14
m.zx()*vx + m.zy()*vy + m.zz()*vz);
15
return
*
this
;
16
}
17
18
//--------------------------------------------------------------------------
19
Vector3D<float>
20
operator*
(
const
Transform3D
& m,
const
Vector3D<float>
& v) {
21
double
vx = v.
x
(), vy = v.
y
(), vz = v.
z
();
22
return
Vector3D<float>
23
(m.xx()*vx + m.xy()*vy + m.xz()*vz,
24
m.yx()*vx + m.yy()*vy + m.yz()*vz,
25
m.zx()*vx + m.zy()*vy + m.zz()*vz);
26
}
27
28
//--------------------------------------------------------------------------
29
Vector3D<double>
&
30
Vector3D<double>::transform
(
const
Transform3D
& m) {
31
double
vx = x(), vy = y(), vz = z();
32
set(m.xx()*vx + m.xy()*vy + m.xz()*vz,
33
m.yx()*vx + m.yy()*vy + m.yz()*vz,
34
m.zx()*vx + m.zy()*vy + m.zz()*vz);
35
return
*
this
;
36
}
37
38
//--------------------------------------------------------------------------
39
Vector3D<double>
40
operator*
(
const
Transform3D
& m,
const
Vector3D<double>
& v) {
41
double
vx = v.
x
(), vy = v.
y
(), vz = v.
z
();
42
return
Vector3D<double>
43
(m.xx()*vx + m.xy()*vy + m.xz()*vz,
44
m.yx()*vx + m.yy()*vy + m.yz()*vz,
45
m.zx()*vx + m.zy()*vy + m.zz()*vz);
46
}
47
}
/* namespace HepGeom */
Transform3D.h
Vector3D.h
HepGeom::BasicVector3D::x
T x() const
Definition
BasicVector3D.h:147
HepGeom::BasicVector3D::y
T y() const
Definition
BasicVector3D.h:150
HepGeom::BasicVector3D::z
T z() const
Definition
BasicVector3D.h:153
HepGeom::Transform3D
Definition
Transform3D.h:170
HepGeom::Vector3D
Definition
Vector3D.h:33
HepGeom
Definition
BasicVector3D.h:18
HepGeom::operator*
Normal3D< float > operator*(const Transform3D &m, const Normal3D< float > &v)
Definition
Normal3D.cc:23
geant4-v11.2.2
source
externals
clhep
src
Vector3D.cc
Generated by
1.12.0