Geant4  v4-10.4-release
 모두 클래스 네임스페이스들 파일들 함수 변수 타입정의 열거형 타입 열거형 멤버 Friends 매크로 그룹들 페이지들
Vector3D.cc
이 파일의 문서화 페이지로 가기
1 // -*- C++ -*-
2 // $Id:$
3 // ---------------------------------------------------------------------------
4 
7 
8 namespace HepGeom {
9  //--------------------------------------------------------------------------
10  Vector3D<float> &
12  double vx = x(), vy = y(), vz = z();
13  set(m.xx()*vx + m.xy()*vy + m.xz()*vz,
14  m.yx()*vx + m.yy()*vy + m.yz()*vz,
15  m.zx()*vx + m.zy()*vy + m.zz()*vz);
16  return *this;
17  }
18 
19  //--------------------------------------------------------------------------
21  operator*(const Transform3D & m, const Vector3D<float> & v) {
22  double vx = v.x(), vy = v.y(), vz = v.z();
23  return Vector3D<float>
24  (m.xx()*vx + m.xy()*vy + m.xz()*vz,
25  m.yx()*vx + m.yy()*vy + m.yz()*vz,
26  m.zx()*vx + m.zy()*vy + m.zz()*vz);
27  }
28 
29  //--------------------------------------------------------------------------
30  Vector3D<double> &
32  double vx = x(), vy = y(), vz = z();
33  set(m.xx()*vx + m.xy()*vy + m.xz()*vz,
34  m.yx()*vx + m.yy()*vy + m.yz()*vz,
35  m.zx()*vx + m.zy()*vy + m.zz()*vz);
36  return *this;
37  }
38 
39  //--------------------------------------------------------------------------
41  operator*(const Transform3D & m, const Vector3D<double> & v) {
42  double vx = v.x(), vy = v.y(), vz = v.z();
43  return Vector3D<double>
44  (m.xx()*vx + m.xy()*vy + m.xz()*vz,
45  m.yx()*vx + m.yy()*vy + m.yz()*vz,
46  m.zx()*vx + m.zy()*vy + m.zz()*vz);
47  }
48 } /* namespace HepGeom */
double xy() const
Definition: Transform3D.h:255
double yz() const
Definition: Transform3D.h:267
double zy() const
Definition: Transform3D.h:273
double yy() const
Definition: Transform3D.h:264
static constexpr double m
Definition: G4SIunits.hh:129
double zz() const
Definition: Transform3D.h:276
double yx() const
Definition: Transform3D.h:261
double xx() const
Definition: Transform3D.h:252
double xz() const
Definition: Transform3D.h:258
void set(T x1, T y1, T z1)
Normal3D< float > operator*(const Transform3D &m, const Normal3D< float > &v)
Definition: Normal3D.cc:24
double zx() const
Definition: Transform3D.h:270