Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ScaleTransform Class Reference

G4ScaleTransform is a class for geometric scaling transformations. It supports efficient arbitrary transformation of points, vectors and normals and the computation of compound and inverse transformations. More...

#include <G4ScaleTransform.hh>

Public Member Functions

 G4ScaleTransform ()
 G4ScaleTransform (G4double sx, G4double sy, G4double sz)
 G4ScaleTransform (const G4ThreeVector &scale)
 G4ScaleTransform (const G4Scale3D &scale)
 G4ScaleTransform (const G4ScaleTransform &right)
G4ScaleTransformoperator= (const G4ScaleTransform &right)
void Init ()
const G4ThreeVectorGetScale () const
const G4ThreeVectorGetInvScale () const
void SetScale (const G4ThreeVector &scale)
void SetScale (const G4Scale3D &scale)
void SetScale (G4double sx, G4double sy, G4double sz)
void Transform (const G4ThreeVector &global, G4ThreeVector &local) const
G4ThreeVector Transform (const G4ThreeVector &global) const
void InverseTransform (const G4ThreeVector &local, G4ThreeVector &global) const
G4ThreeVector InverseTransform (const G4ThreeVector &local) const
void TransformNormal (const G4ThreeVector &global, G4ThreeVector &local) const
G4ThreeVector TransformNormal (const G4ThreeVector &global) const
void InverseTransformNormal (const G4ThreeVector &local, G4ThreeVector &global) const
G4ThreeVector InverseTransformNormal (const G4ThreeVector &local) const
G4double TransformDistance (G4double dist, const G4ThreeVector &dir) const
G4double TransformDistance (G4double safety) const
G4double InverseTransformDistance (G4double dist, const G4ThreeVector &dir) const
G4double InverseTransformDistance (G4double safety) const

Detailed Description

G4ScaleTransform is a class for geometric scaling transformations. It supports efficient arbitrary transformation of points, vectors and normals and the computation of compound and inverse transformations.

Definition at line 63 of file G4ScaleTransform.hh.

Constructor & Destructor Documentation

◆ G4ScaleTransform() [1/5]

G4ScaleTransform::G4ScaleTransform ( )
inline

Default Constructor.

Referenced by G4ScaleTransform(), and operator=().

◆ G4ScaleTransform() [2/5]

G4ScaleTransform::G4ScaleTransform ( G4double sx,
G4double sy,
G4double sz )
inline

Constructor with scale parameters on each axis.

Parameters
[in]sxScaling in X.
[in]syScaling in Y.
[in]szScaling in Z.

◆ G4ScaleTransform() [3/5]

G4ScaleTransform::G4ScaleTransform ( const G4ThreeVector & scale)
inline

Constructor taking a 3-vector.

Parameters
[in]scaleScaling transformation.

◆ G4ScaleTransform() [4/5]

G4ScaleTransform::G4ScaleTransform ( const G4Scale3D & scale)
inline

Constructor taking a Scale3D.

Parameters
[in]scaleScaling transformation.

◆ G4ScaleTransform() [5/5]

G4ScaleTransform::G4ScaleTransform ( const G4ScaleTransform & right)
inline

Copy constructor and assignment operator.

Member Function Documentation

◆ GetInvScale()

const G4ThreeVector & G4ScaleTransform::GetInvScale ( ) const
inline

◆ GetScale()

const G4ThreeVector & G4ScaleTransform::GetScale ( ) const
inline

Accessors returning a reference to the scale and inverse scale transformations.

◆ Init()

void G4ScaleTransform::Init ( )
inline

Updates the backed-up inverse scale and special conversion factors based on the values of the scale. Needed at initialisation and whenever the scale has changed value.

◆ InverseTransform() [1/2]

G4ThreeVector G4ScaleTransform::InverseTransform ( const G4ThreeVector & local) const
inline

◆ InverseTransform() [2/2]

void G4ScaleTransform::InverseTransform ( const G4ThreeVector & local,
G4ThreeVector & global ) const
inline

Methods to transform a point from local to global frame.

◆ InverseTransformDistance() [1/2]

G4double G4ScaleTransform::InverseTransformDistance ( G4double dist,
const G4ThreeVector & dir ) const
inline

Transforms a distance 'dist' along a given direction 'dir' from local to global frame.

◆ InverseTransformDistance() [2/2]

G4double G4ScaleTransform::InverseTransformDistance ( G4double safety) const
inline

Transforms a 'safety' distance from local to global frame (conservative).

◆ InverseTransformNormal() [1/2]

G4ThreeVector G4ScaleTransform::InverseTransformNormal ( const G4ThreeVector & local) const
inline

◆ InverseTransformNormal() [2/2]

void G4ScaleTransform::InverseTransformNormal ( const G4ThreeVector & local,
G4ThreeVector & global ) const
inline

Methods to transform a normal from local to global frame.

◆ operator=()

G4ScaleTransform & G4ScaleTransform::operator= ( const G4ScaleTransform & right)
inline

◆ SetScale() [1/3]

void G4ScaleTransform::SetScale ( const G4Scale3D & scale)
inline

◆ SetScale() [2/3]

void G4ScaleTransform::SetScale ( const G4ThreeVector & scale)
inline

Modifiers for the scale transformation.

◆ SetScale() [3/3]

void G4ScaleTransform::SetScale ( G4double sx,
G4double sy,
G4double sz )
inline

◆ Transform() [1/2]

G4ThreeVector G4ScaleTransform::Transform ( const G4ThreeVector & global) const
inline

◆ Transform() [2/2]

void G4ScaleTransform::Transform ( const G4ThreeVector & global,
G4ThreeVector & local ) const
inline

Methods to transform a point from global to local frame.

◆ TransformDistance() [1/2]

G4double G4ScaleTransform::TransformDistance ( G4double dist,
const G4ThreeVector & dir ) const
inline

Transforms a distance 'dist' along a given direction 'dir' from global to local frame.

◆ TransformDistance() [2/2]

G4double G4ScaleTransform::TransformDistance ( G4double safety) const
inline

Transforms a 'safety' distance from global to local frame (conservative).

◆ TransformNormal() [1/2]

G4ThreeVector G4ScaleTransform::TransformNormal ( const G4ThreeVector & global) const
inline

◆ TransformNormal() [2/2]

void G4ScaleTransform::TransformNormal ( const G4ThreeVector & global,
G4ThreeVector & local ) const
inline

Methods to transform a normal from global to local frame.


The documentation for this class was generated from the following file: