OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
Euclid3DGeometry Class Reference

#include <Euclid3DGeometry.h>

Inheritance diagram for Euclid3DGeometry:
Inheritance graph
Collaboration diagram for Euclid3DGeometry:
Collaboration graph

Public Member Functions

 Euclid3DGeometry (Euclid3D transformation)
 
 Euclid3DGeometry (const Euclid3DGeometry &right)
 
virtual ~Euclid3DGeometry ()
 
const Euclid3DGeometryoperator= (const Euclid3DGeometry &right)
 
virtual double getArcLength () const
 Get arc length.
 
virtual double getElementLength () const
 Get geometry length.
 
virtual void setElementLength (double length)
 Set geometry length.
 
virtual Euclid3D getTransform (double fromS, double toS) const
 
virtual Euclid3D getTransform (double fromS) const
 Get transform.
 
virtual Euclid3D getTotalTransform () const
 Get total transform from beginning to end.
 
virtual double getOrigin () const
 Get origin position.
 
virtual double getEntrance () const
 Get entrance position.
 
virtual double getExit () const
 Get exit position.
 
virtual Euclid3D getEntranceFrame () const
 Get transform.
 
virtual Euclid3D getExitFrame () const
 Get transform.
 
virtual Euclid3D getEntrancePatch () const
 Get patch.
 
virtual Euclid3D getExitPatch () const
 Get patch.
 

Private Attributes

Euclid3D transformation_m
 

Detailed Description

class Euclid3DGeometry

Euclid3DGeometry is a straight line from input to output followed by a rotation.

Definition at line 43 of file Euclid3DGeometry.h.

Constructor & Destructor Documentation

◆ Euclid3DGeometry() [1/2]

Euclid3DGeometry::Euclid3DGeometry ( Euclid3D  transformation)

Definition at line 34 of file Euclid3DGeometry.cpp.

◆ Euclid3DGeometry() [2/2]

Euclid3DGeometry::Euclid3DGeometry ( const Euclid3DGeometry right)

Definition at line 37 of file Euclid3DGeometry.cpp.

◆ ~Euclid3DGeometry()

Euclid3DGeometry::~Euclid3DGeometry ( )
virtual

Definition at line 40 of file Euclid3DGeometry.cpp.

Member Function Documentation

◆ getArcLength()

double Euclid3DGeometry::getArcLength ( ) const
virtual

Get arc length.

Implements BGeometryBase.

Definition at line 49 of file Euclid3DGeometry.cpp.

References dot(), Euclid3D::getVector(), and transformation_m.

Referenced by getElementLength(), and setElementLength().

Here is the call graph for this function:

◆ getElementLength()

double Euclid3DGeometry::getElementLength ( ) const
virtual

Get geometry length.

Implements BGeometryBase.

Definition at line 53 of file Euclid3DGeometry.cpp.

References getArcLength().

Here is the call graph for this function:

◆ getEntrance()

double BGeometryBase::getEntrance ( ) const
virtualinherited

Get entrance position.

Reimplemented in PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.

Definition at line 33 of file Geometry.cpp.

References BGeometryBase::getOrigin().

Referenced by ElementBase::getEntrance(), BGeometryBase::getEntranceFrame(), and BGeometryBase::getTotalTransform().

Here is the call graph for this function:

◆ getEntranceFrame()

Euclid3D BGeometryBase::getEntranceFrame ( ) const
virtualinherited

Get transform.

Reimplemented in PlanarArcGeometry, RBendGeometry, StraightGeometry, and BeamlineGeometry.

Definition at line 41 of file Geometry.cpp.

References BGeometryBase::getEntrance(), and BGeometryBase::getTransform().

Referenced by ElementBase::getEntranceFrame().

Here is the call graph for this function:

◆ getEntrancePatch()

Euclid3D BGeometryBase::getEntrancePatch ( ) const
virtualinherited

Get patch.

Reimplemented in RBendGeometry.

Definition at line 45 of file Geometry.cpp.

References Euclid3D::identity().

Referenced by ElementBase::getEntrancePatch().

Here is the call graph for this function:

◆ getExit()

double BGeometryBase::getExit ( ) const
virtualinherited

Get exit position.

Reimplemented in PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.

Definition at line 35 of file Geometry.cpp.

References BGeometryBase::getArcLength(), and BGeometryBase::getOrigin().

Referenced by ElementBase::getExit(), BGeometryBase::getExitFrame(), and BGeometryBase::getTotalTransform().

Here is the call graph for this function:

◆ getExitFrame()

Euclid3D BGeometryBase::getExitFrame ( ) const
virtualinherited

Get transform.

Reimplemented in PlanarArcGeometry, RBendGeometry, StraightGeometry, and BeamlineGeometry.

Definition at line 43 of file Geometry.cpp.

References BGeometryBase::getExit(), and BGeometryBase::getTransform().

Referenced by ElementBase::getExitFrame().

Here is the call graph for this function:

◆ getExitPatch()

Euclid3D BGeometryBase::getExitPatch ( ) const
virtualinherited

Get patch.

Reimplemented in RBendGeometry.

Definition at line 47 of file Geometry.cpp.

References Euclid3D::identity().

Referenced by ElementBase::getExitPatch().

Here is the call graph for this function:

◆ getOrigin()

double BGeometryBase::getOrigin ( ) const
virtualinherited

Get origin position.

Reimplemented in NullGeometry, PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.

Definition at line 31 of file Geometry.cpp.

References BGeometryBase::getArcLength().

Referenced by BGeometryBase::getEntrance(), BGeometryBase::getExit(), and ElementBase::getOrigin().

Here is the call graph for this function:

◆ getTotalTransform()

Euclid3D Euclid3DGeometry::getTotalTransform ( ) const
virtual

Get total transform from beginning to end.

Reimplemented from BGeometryBase.

Definition at line 73 of file Euclid3DGeometry.cpp.

References transformation_m.

◆ getTransform() [1/2]

Euclid3D Euclid3DGeometry::getTransform ( double  s) const
virtual

Get transform.

Reimplemented from BGeometryBase.

Definition at line 69 of file Euclid3DGeometry.cpp.

◆ getTransform() [2/2]

Euclid3D Euclid3DGeometry::getTransform ( double  fromS,
double  toS 
) const
virtual

Not Implemented - raises GeneralOpalException Get transform.

Implements BGeometryBase.

Definition at line 65 of file Euclid3DGeometry.cpp.

◆ operator=()

const Euclid3DGeometry & Euclid3DGeometry::operator= ( const Euclid3DGeometry right)

Definition at line 42 of file Euclid3DGeometry.cpp.

References transformation_m.

◆ setElementLength()

void Euclid3DGeometry::setElementLength ( double  length)
virtual

Set geometry length.

Reimplemented from BGeometryBase.

Definition at line 55 of file Euclid3DGeometry.cpp.

References getArcLength(), Euclid3D::getVector(), Euclid3D::setDisplacement(), and transformation_m.

Here is the call graph for this function:

Member Data Documentation

◆ transformation_m

Euclid3D Euclid3DGeometry::transformation_m
private

Definition at line 79 of file Euclid3DGeometry.h.

Referenced by getArcLength(), getTotalTransform(), operator=(), and setElementLength().


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