Geant4  10.00.p01
G4TheRayTracer Class Reference

#include <G4TheRayTracer.hh>

+ Inheritance diagram for G4TheRayTracer:
+ Collaboration diagram for G4TheRayTracer:

Public Member Functions

 G4TheRayTracer (G4VFigureFileMaker *figMaker=0, G4VRTScanner *scanner=0)
 
virtual ~G4TheRayTracer ()
 
virtual void Trace (const G4String &fileName)
 
void SetFigureFileMaker (G4VFigureFileMaker *figMaker)
 
G4VFigureFileMakerGetFigureFileMaker ()
 
void SetScanner (G4VRTScanner *scanner)
 
G4VRTScannerGetScanner ()
 
void SetNColumn (G4int val)
 
G4int GetNColumn () const
 
void SetNRow (G4int val)
 
G4int GetNRow () const
 
void SetEyePosition (const G4ThreeVector &val)
 
G4ThreeVector GetEyePosition () const
 
void SetTargetPosition (const G4ThreeVector &val)
 
G4ThreeVector GetTargetPosition () const
 
void SetLightDirection (const G4ThreeVector &val)
 
G4ThreeVector GetLightDirection () const
 
void SetUpVector (const G4ThreeVector &val)
 
G4ThreeVector GetUpVector () const
 
void SetHeadAngle (G4double val)
 
G4double GetHeadAngle () const
 
void SetViewSpan (G4double val)
 
G4double GetViewSpan () const
 
void SetAttenuationLength (G4double val)
 
G4double GetAttenuationLength () const
 
void SetDistortion (G4bool val)
 
G4bool GetDistortion () const
 
void SetBackgroundColour (const G4Colour &val)
 
G4Colour GetBackgroundColour () const
 

Protected Member Functions

virtual G4bool CreateBitMap ()
 
void CreateFigureFile (const G4String &fileName)
 
G4bool GenerateColour (G4Event *anEvent)
 
virtual void StoreUserActions ()
 
virtual void RestoreUserActions ()
 
G4Colour GetSurfaceColour (G4RayTrajectoryPoint *point)
 
G4Colour GetMixedColour (const G4Colour &surfCol, const G4Colour &transCol, G4double weight=0.5)
 
G4Colour Attenuate (G4RayTrajectoryPoint *point, const G4Colour &sourceCol)
 
G4bool ValidColour (const G4VisAttributes *visAtt)
 

Protected Attributes

G4RayShootertheRayShooter
 
G4VFigureFileMakertheFigMaker
 
G4RTMessengertheMessenger
 
G4VRTScannertheScanner
 
G4EventManagertheEventManager
 
G4UserEventActiontheUserEventAction
 
G4UserStackingActiontheUserStackingAction
 
G4UserTrackingActiontheUserTrackingAction
 
G4UserSteppingActiontheUserSteppingAction
 
G4UserEventActiontheRayTracerEventAction
 
G4UserStackingActiontheRayTracerStackingAction
 
G4RTTrackingActiontheRayTracerTrackingAction
 
G4RTSteppingActiontheRayTracerSteppingAction
 
unsigned char * colorR
 
unsigned char * colorG
 
unsigned char * colorB
 
G4int nColumn
 
G4int nRow
 
G4ThreeVector eyePosition
 
G4ThreeVector targetPosition
 
G4ThreeVector eyeDirection
 
G4ThreeVector lightDirection
 
G4ThreeVector up
 
G4double headAngle
 
G4double viewSpan
 
G4double attenuationLength
 
G4bool distortionOn
 
G4bool antialiasingOn
 
G4Colour rayColour
 
G4Colour backgroundColour
 

Detailed Description

Definition at line 72 of file G4TheRayTracer.hh.

Constructor & Destructor Documentation

G4TheRayTracer::G4TheRayTracer ( G4VFigureFileMaker figMaker = 0,
G4VRTScanner scanner = 0 
)
G4TheRayTracer::~G4TheRayTracer ( )
virtual

Member Function Documentation

G4Colour G4TheRayTracer::Attenuate ( G4RayTrajectoryPoint point,
const G4Colour sourceCol 
)
protected

Definition at line 385 of file G4TheRayTracer.cc.

References G4Colour::GetAlpha(), G4Colour::GetBlue(), G4VisAttributes::GetColour(), G4Colour::GetGreen(), G4RayTrajectoryPoint::GetPreStepAtt(), G4Colour::GetRed(), and G4RayTrajectoryPoint::GetStepLength().

Referenced by GenerateColour().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4TheRayTracer::CreateBitMap ( )
protectedvirtual

Reimplemented in G4TheMTRayTracer.

Definition at line 183 of file G4TheRayTracer.cc.

References backgroundColour, G4GeometryManager::CloseGeometry(), colorB, colorG, colorR, G4VRTScanner::Coords(), cp, distortionOn, G4VRTScanner::Draw(), eyeDirection, eyePosition, G4State_GeomClosed, G4State_Idle, G4Geantino::GeantinoDefinition(), GenerateColour(), G4Colour::GetBlue(), G4VVisManager::GetConcreteInstance(), G4Colour::GetGreen(), G4RegionStore::GetInstance(), G4GeometryManager::GetInstance(), G4VPhysicalVolume::GetLogicalVolume(), G4TransportationManager::GetNavigatorForTracking(), G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), G4ProductionCutsTable::GetProductionCutsTable(), G4Colour::GetRed(), G4LogicalVolume::GetSolid(), G4StateManager::GetStateManager(), G4TransportationManager::GetTransportationManager(), headAngle, G4VVisManager::IgnoreStateChanges(), G4VRTScanner::Initialize(), G4VSolid::Inside(), kInfinity, kInside, G4Navigator::LocateGlobalPointAndSetup(), nColumn, nRow, G4GeometryManager::OpenGeometry(), G4EventManager::ProcessOneEvent(), rayColour, G4StateManager::SetNewState(), G4RayShooter::Shoot(), G4ProcessVector::size(), G4InuclParticleNames::sp, theEventManager, theRayShooter, theScanner, up, G4ProductionCutsTable::UpdateCoupleTable(), G4RegionStore::UpdateMaterialList(), and viewSpan.

Referenced by Trace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4TheRayTracer::CreateFigureFile ( const G4String fileName)
protected

Definition at line 292 of file G4TheRayTracer.cc.

References colorB, colorG, colorR, G4VFigureFileMaker::CreateFigureFile(), nColumn, nRow, and theFigMaker.

Referenced by Trace(), and G4TheMTRayTracer::Trace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4TheRayTracer::GenerateColour ( G4Event anEvent)
protected

Definition at line 298 of file G4TheRayTracer.cc.

References Attenuate(), backgroundColour, G4Colour::GetAlpha(), GetMixedColour(), G4RayTrajectory::GetPointC(), G4RayTrajectory::GetPointEntries(), G4RayTrajectoryPoint::GetPostStepAtt(), GetSurfaceColour(), G4Event::GetTrajectoryContainer(), and rayColour.

Referenced by CreateBitMap().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4TheRayTracer::GetAttenuationLength ( ) const
inline

Definition at line 182 of file G4TheRayTracer.hh.

References attenuationLength.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4Colour G4TheRayTracer::GetBackgroundColour ( ) const
inline

Definition at line 186 of file G4TheRayTracer.hh.

References backgroundColour.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4bool G4TheRayTracer::GetDistortion ( ) const
inline

Definition at line 184 of file G4TheRayTracer.hh.

References distortionOn.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4ThreeVector G4TheRayTracer::GetEyePosition ( ) const
inline

Definition at line 170 of file G4TheRayTracer.hh.

References eyePosition.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4VFigureFileMaker* G4TheRayTracer::GetFigureFileMaker ( )
inline

Definition at line 117 of file G4TheRayTracer.hh.

References theFigMaker.

G4double G4TheRayTracer::GetHeadAngle ( ) const
inline

Definition at line 178 of file G4TheRayTracer.hh.

References headAngle.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4ThreeVector G4TheRayTracer::GetLightDirection ( ) const
inline

Definition at line 174 of file G4TheRayTracer.hh.

References lightDirection.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4Colour G4TheRayTracer::GetMixedColour ( const G4Colour surfCol,
const G4Colour transCol,
G4double  weight = 0.5 
)
protected

Definition at line 325 of file G4TheRayTracer.cc.

References alpha, blue, G4Colour::GetAlpha(), G4Colour::GetBlue(), G4Colour::GetGreen(), G4Colour::GetRed(), and red.

Referenced by GenerateColour(), and GetSurfaceColour().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4TheRayTracer::GetNColumn ( ) const
inline

Definition at line 166 of file G4TheRayTracer.hh.

References nColumn.

Referenced by G4RTMessenger::GetCurrentValue(), and G4RayTracerViewer::SetView().

+ Here is the caller graph for this function:

G4int G4TheRayTracer::GetNRow ( ) const
inline

Definition at line 168 of file G4TheRayTracer.hh.

References nRow.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4VRTScanner* G4TheRayTracer::GetScanner ( )
inline

Definition at line 122 of file G4TheRayTracer.hh.

References theScanner.

G4Colour G4TheRayTracer::GetSurfaceColour ( G4RayTrajectoryPoint point)
protected

Definition at line 334 of file G4TheRayTracer.cc.

References blue, G4Colour::GetAlpha(), G4Colour::GetBlue(), G4VisAttributes::GetColour(), G4Colour::GetGreen(), GetMixedColour(), G4RayTrajectoryPoint::GetPostStepAtt(), G4RayTrajectoryPoint::GetPreStepAtt(), G4Colour::GetRed(), G4RayTrajectoryPoint::GetSurfaceNormal(), lightDirection, CLHEP::normal(), red, and ValidColour().

Referenced by GenerateColour().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ThreeVector G4TheRayTracer::GetTargetPosition ( ) const
inline

Definition at line 172 of file G4TheRayTracer.hh.

References targetPosition.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4ThreeVector G4TheRayTracer::GetUpVector ( ) const
inline

Definition at line 176 of file G4TheRayTracer.hh.

References up.

G4double G4TheRayTracer::GetViewSpan ( ) const
inline

Definition at line 180 of file G4TheRayTracer.hh.

References viewSpan.

Referenced by G4RTMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::RestoreUserActions ( )
protectedvirtual

Reimplemented in G4TheMTRayTracer.

Definition at line 167 of file G4TheRayTracer.cc.

References G4SDManager::Activate(), G4SDManager::GetSDMpointerIfExist(), G4EventManager::SetUserAction(), theEventManager, theUserEventAction, theUserStackingAction, theUserSteppingAction, and theUserTrackingAction.

Referenced by Trace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4TheRayTracer::SetAttenuationLength ( G4double  val)
inline

Definition at line 181 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetBackgroundColour ( const G4Colour val)
inline

Definition at line 185 of file G4TheRayTracer.hh.

Referenced by G4RayTracerViewer::SetView().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetDistortion ( G4bool  val)
inline

Definition at line 183 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetEyePosition ( const G4ThreeVector val)
inline

Definition at line 169 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue(), and G4RayTracerViewer::SetView().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetFigureFileMaker ( G4VFigureFileMaker figMaker)
inline

Definition at line 113 of file G4TheRayTracer.hh.

References theFigMaker.

void G4TheRayTracer::SetHeadAngle ( G4double  val)
inline

Definition at line 177 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetLightDirection ( const G4ThreeVector val)
inline

Definition at line 173 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue(), and G4RayTracerViewer::SetView().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetNColumn ( G4int  val)
inline

Definition at line 165 of file G4TheRayTracer.hh.

Referenced by G4RayTracerViewer::G4RayTracerViewer(), and G4RTMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetNRow ( G4int  val)
inline

Definition at line 167 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetScanner ( G4VRTScanner scanner)
inline

Definition at line 118 of file G4TheRayTracer.hh.

References theScanner.

void G4TheRayTracer::SetTargetPosition ( const G4ThreeVector val)
inline

Definition at line 171 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue(), and G4RayTracerViewer::SetView().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetUpVector ( const G4ThreeVector val)
inline

Definition at line 175 of file G4TheRayTracer.hh.

Referenced by G4RayTracerViewer::SetView().

+ Here is the caller graph for this function:

void G4TheRayTracer::SetViewSpan ( G4double  val)
inline

Definition at line 179 of file G4TheRayTracer.hh.

Referenced by G4RTMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4TheRayTracer::StoreUserActions ( )
protectedvirtual

Reimplemented in G4TheMTRayTracer.

Definition at line 143 of file G4TheRayTracer.cc.

References G4SDManager::Activate(), G4GeometryManager::CloseGeometry(), G4GeometryManager::GetInstance(), G4SDManager::GetSDMpointerIfExist(), G4EventManager::GetUserEventAction(), G4EventManager::GetUserStackingAction(), G4EventManager::GetUserSteppingAction(), G4EventManager::GetUserTrackingAction(), G4GeometryManager::OpenGeometry(), G4EventManager::SetUserAction(), theEventManager, theRayTracerEventAction, theRayTracerStackingAction, theRayTracerSteppingAction, theRayTracerTrackingAction, theUserEventAction, theUserStackingAction, theUserSteppingAction, and theUserTrackingAction.

Referenced by Trace().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4TheRayTracer::Trace ( const G4String fileName)
virtual

Reimplemented in G4TheMTRayTracer.

Definition at line 100 of file G4TheRayTracer.cc.

References G4UImanager::ApplyCommand(), colorB, colorG, colorR, CreateBitMap(), CreateFigureFile(), eyeDirection, eyePosition, G4cerr, G4endl, G4State_Idle, G4UImanager::GetCurrentIntValue(), G4StateManager::GetCurrentState(), G4StateManager::GetStateManager(), G4UImanager::GetUIpointer(), nColumn, nRow, RestoreUserActions(), StoreUserActions(), targetPosition, and theFigMaker.

Referenced by G4RayTracerViewer::DrawView(), and G4RTMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4TheRayTracer::ValidColour ( const G4VisAttributes visAtt)
protected

Definition at line 413 of file G4TheRayTracer.cc.

References G4VisAttributes::GetForcedDrawingStyle(), G4VisAttributes::IsForceDrawingStyle(), G4VisAttributes::IsVisible(), and G4VisAttributes::wireframe.

Referenced by GetSurfaceColour().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4bool G4TheRayTracer::antialiasingOn
protected

Definition at line 159 of file G4TheRayTracer.hh.

Referenced by G4TheRayTracer().

G4double G4TheRayTracer::attenuationLength
protected

Definition at line 156 of file G4TheRayTracer.hh.

Referenced by G4RTRun::G4RTRun(), G4TheRayTracer(), and GetAttenuationLength().

G4Colour G4TheRayTracer::backgroundColour
protected
unsigned char* G4TheRayTracer::colorB
protected
unsigned char* G4TheRayTracer::colorG
protected
unsigned char* G4TheRayTracer::colorR
protected
G4bool G4TheRayTracer::distortionOn
protected
G4ThreeVector G4TheRayTracer::eyeDirection
protected
G4ThreeVector G4TheRayTracer::eyePosition
protected
G4double G4TheRayTracer::headAngle
protected

Definition at line 154 of file G4TheRayTracer.hh.

Referenced by CreateBitMap(), G4TheRayTracer(), and GetHeadAngle().

G4ThreeVector G4TheRayTracer::lightDirection
protected
G4Colour G4TheRayTracer::rayColour
protected

Definition at line 161 of file G4TheRayTracer.hh.

Referenced by CreateBitMap(), and GenerateColour().

G4ThreeVector G4TheRayTracer::targetPosition
protected
G4EventManager* G4TheRayTracer::theEventManager
protected
G4RTMessenger* G4TheRayTracer::theMessenger
protected

Definition at line 127 of file G4TheRayTracer.hh.

Referenced by G4TheRayTracer(), and ~G4TheRayTracer().

G4RayShooter* G4TheRayTracer::theRayShooter
protected

Definition at line 125 of file G4TheRayTracer.hh.

Referenced by CreateBitMap(), G4TheRayTracer(), and ~G4TheRayTracer().

G4UserEventAction* G4TheRayTracer::theRayTracerEventAction
protected

Definition at line 137 of file G4TheRayTracer.hh.

Referenced by G4TheRayTracer(), and StoreUserActions().

G4UserStackingAction* G4TheRayTracer::theRayTracerStackingAction
protected

Definition at line 138 of file G4TheRayTracer.hh.

Referenced by G4TheRayTracer(), and StoreUserActions().

G4RTSteppingAction* G4TheRayTracer::theRayTracerSteppingAction
protected

Definition at line 140 of file G4TheRayTracer.hh.

Referenced by G4TheRayTracer(), StoreUserActions(), and ~G4TheRayTracer().

G4RTTrackingAction* G4TheRayTracer::theRayTracerTrackingAction
protected

Definition at line 139 of file G4TheRayTracer.hh.

Referenced by G4TheRayTracer(), StoreUserActions(), and ~G4TheRayTracer().

G4VRTScanner* G4TheRayTracer::theScanner
protected
G4UserEventAction* G4TheRayTracer::theUserEventAction
protected

Definition at line 132 of file G4TheRayTracer.hh.

Referenced by RestoreUserActions(), and StoreUserActions().

G4UserStackingAction* G4TheRayTracer::theUserStackingAction
protected

Definition at line 133 of file G4TheRayTracer.hh.

Referenced by RestoreUserActions(), and StoreUserActions().

G4UserSteppingAction* G4TheRayTracer::theUserSteppingAction
protected

Definition at line 135 of file G4TheRayTracer.hh.

Referenced by RestoreUserActions(), and StoreUserActions().

G4UserTrackingAction* G4TheRayTracer::theUserTrackingAction
protected

Definition at line 134 of file G4TheRayTracer.hh.

Referenced by RestoreUserActions(), and StoreUserActions().

G4ThreeVector G4TheRayTracer::up
protected

Definition at line 153 of file G4TheRayTracer.hh.

Referenced by CreateBitMap(), G4TheRayTracer(), and GetUpVector().

G4double G4TheRayTracer::viewSpan
protected

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