46#ifndef G4VINTERSECTIONLOCATOR_HH
47#define G4VINTERSECTIONLOCATOR_HH
70 G4bool& recalculatedEndPoint,
93 G4bool *calledNavigator=0 );
182 G4bool &validNormal)
const;
210#include "G4VIntersectionLocator.icc"
G4double fiDeltaIntersection
G4ThreeVector GetGlobalSurfaceNormal(const G4ThreeVector &CurrentE_Point, G4bool &validNormal)
G4Navigator * fiNavigator
G4Navigator * fHelpingNavigator
G4Navigator * GetNavigatorFor()
void AddAdjustementOfFoundIntersection(G4bool UseCorrection)
G4ChordFinder * GetChordFinderFor()
G4TouchableHistory * fpTouchable
void AdjustIntersections(G4bool UseCorrection)
void SetDeltaIntersectionFor(G4double deltaIntersection)
virtual ~G4VIntersectionLocator()
G4ThreeVector GetSurfaceNormal(const G4ThreeVector &CurrentInt_Point, G4bool &validNormal)
void SetVerboseFor(G4int fVerbose)
void SetNavigatorFor(G4Navigator *fNavigator)
G4bool AreIntersectionsAdjusted()
void ReportTrialStep(G4int step_no, const G4ThreeVector &ChordAB_v, const G4ThreeVector &ChordEF_v, const G4ThreeVector &NewMomentumDir, const G4ThreeVector &NormalAtEntry, G4bool validNormal)
virtual G4bool EstimateIntersectionPoint(const G4FieldTrack &curveStartPointTangent, const G4FieldTrack &curveEndPointTangent, const G4ThreeVector &trialPoint, G4FieldTrack &intersectPointTangent, G4bool &recalculatedEndPoint, G4double &fPreviousSafety, G4ThreeVector &fPreviousSftOrigin)=0
G4bool IntersectChord(const G4ThreeVector &StartPointA, const G4ThreeVector &EndPointB, G4double &NewSafety, G4double &PreviousSafety, G4ThreeVector &PreviousSftOrigin, G4double &LinearStepLength, G4ThreeVector &IntersectionPoint, G4bool *calledNavigator=0)
G4double GetEpsilonStepFor()
G4ChordFinder * fiChordFinder
G4FieldTrack ReEstimateEndpoint(const G4FieldTrack &CurrentStateA, const G4FieldTrack &EstimtdEndStateB, G4double linearDistSq, G4double curveDist)
G4bool GetAdjustementOfFoundIntersection()
void SetSafetyParametersFor(G4bool UseSafety)
G4bool fUseNormalCorrection
G4double GetDeltaIntersectionFor()
G4bool AdjustmentOfFoundIntersection(const G4ThreeVector &A, const G4ThreeVector &CurrentE_Point, const G4ThreeVector &CurrentF_Point, const G4ThreeVector &MomentumDir, const G4bool IntersectAF, G4ThreeVector &IntersectionPoint, G4double &NewSafety, G4double &fPrevSafety, G4ThreeVector &fPrevSftOrigin)
void SetChordFinderFor(G4ChordFinder *fCFinder)
void printStatus(const G4FieldTrack &startFT, const G4FieldTrack ¤tFT, G4double requestStep, G4double safety, G4int step)
void SetEpsilonStepFor(G4double EpsilonStep)