47 #ifndef __G4TWISTTUBSSIDE__
48 #define __G4TWISTTUBSSIDE__
98 G4bool isglobal =
false)
const ;
101 G4bool isGlobal =
false) ;
160 if (isglobal) {
return (
fRot * xx +
fTrans); }
170 if (isGlobal) {
return (
fRot * SurfPoint +
fTrans); }
virtual void GetFacets(G4int m, G4int n, G4double xyz[][3], G4int faces[][4], G4int iside)
virtual G4ThreeVector GetNormal(const G4ThreeVector &xx, G4bool isGlobal=false)
static const G4double kInfinity
CLHEP::Hep3Vector G4ThreeVector
CLHEP::HepRotation G4RotationMatrix
virtual ~G4TwistTubsSide()
virtual void SetCorners()
virtual void SetBoundaries()
virtual G4double GetSurfaceArea()
virtual G4double GetBoundaryMax(G4double phi)
virtual G4ThreeVector SurfacePoint(G4double, G4double, G4bool isGlobal=false)
static const G4double A[nN]
virtual G4double GetBoundaryMin(G4double phi)
virtual G4int DistanceToSurface(const G4ThreeVector &gp, const G4ThreeVector &gv, G4ThreeVector gxx[], G4double distance[], G4int areacode[], G4bool isvalid[], EValidate validate=kValidateWithTol)
G4TwistTubsSide(const G4String &name, const G4RotationMatrix &rot, const G4ThreeVector &tlate, G4int handedness, const G4double kappa, const EAxis axis0=kXAxis, const EAxis axis1=kZAxis, G4double axis0min=-kInfinity, G4double axis1min=-kInfinity, G4double axis0max=kInfinity, G4double axis1max=kInfinity)
virtual G4int GetAreaCode(const G4ThreeVector &xx, G4bool withTol=true)
virtual G4double DistanceToPlane(const G4ThreeVector &p, const G4ThreeVector &A, const G4ThreeVector &B, const G4ThreeVector &C, const G4ThreeVector &D, const G4int parity, G4ThreeVector &xx, G4ThreeVector &n)
G4ThreeVector ProjectAtPXPZ(const G4ThreeVector &p, G4bool isglobal=false) const