44 #ifndef __G4TWISTBOXSIDE__
45 #define __G4TWISTBOXSIDE__
187 Xcoef(u,phi) * std::sin(phi)
191 if (isGlobal) {
return (
fRot * SurfPoint +
fTrans); }
223 4*
fDz*(-(
fTAlph*std::cos(phi)) + std::sin(phi)),
G4ThreeVector NormAng(G4double phi, G4double u)
G4ThreeVector ProjectPoint(const G4ThreeVector &p, G4bool isglobal=false)
virtual void SetCorners()
virtual void SetBoundaries()
virtual ~G4TwistBoxSide()
void GetPhiUAtX(G4ThreeVector p, G4double &phi, G4double &u)
virtual G4double GetSurfaceArea()
virtual G4ThreeVector SurfacePoint(G4double phi, G4double u, G4bool isGlobal=false)
static constexpr double m
virtual G4double GetBoundaryMin(G4double phi)
G4double GetValueB(G4double phi)
G4double GetValueA(G4double phi)
virtual G4double GetBoundaryMax(G4double phi)
G4double Xcoef(G4double u, G4double phi)
virtual G4ThreeVector GetNormal(const G4ThreeVector &xx, G4bool isGlobal=false)
virtual G4int GetAreaCode(const G4ThreeVector &xx, G4bool withTol=true)
virtual G4int DistanceToSurface(const G4ThreeVector &gp, const G4ThreeVector &gv, G4ThreeVector gxx[], G4double distance[], G4int areacode[], G4bool isvalid[], EValidate validate=kValidateWithTol)
G4TwistBoxSide(const G4String &name, G4double PhiTwist, G4double pDz, G4double pTheta, G4double pPhi, G4double pDy1, G4double pDx1, G4double pDx2, G4double pDy2, G4double pDx3, G4double pDx4, G4double pAlph, G4double AngleSide)
virtual void GetFacets(G4int m, G4int n, G4double xyz[][3], G4int faces[][4], G4int iside)