36#ifndef G4TWISTTUBSSIDE_HH
37#define G4TWISTTUBSSIDE_HH
71 G4bool isGlobal =
false)
override ;
84 G4int areacode[])
override;
87 G4bool isglobal =
false)
const ;
90 G4bool isGlobal =
false)
override ;
114 G4bool withTol =
true)
override;
116 void SetCorners()
override;
118 void SetCorners(
G4double endInnerRad[2],
123 void SetBoundaries()
override;
144 if (isglobal) {
return (
fRot * xx +
fTrans); }
154 if (isGlobal) {
return (
fRot * SurfPoint +
fTrans); }
G4double D(G4double temp)
HepRotation inverse() const
G4double GetBoundaryMax(G4double phi) override
G4ThreeVector ProjectAtPXPZ(const G4ThreeVector &p, G4bool isglobal=false) const
G4double GetBoundaryMin(G4double phi) override
G4ThreeVector SurfacePoint(G4double, G4double, G4bool isGlobal=false) override
~G4TwistTubsSide() override
G4double GetSurfaceArea() override
void GetFacets(G4int m, G4int n, G4double xyz[][3], G4int faces[][4], G4int iside) override
G4ThreeVector GetNormal(const G4ThreeVector &xx, G4bool isGlobal=false) override
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)
G4int DistanceToSurface(const G4ThreeVector &gp, const G4ThreeVector &gv, G4ThreeVector gxx[], G4double distance[], G4int areacode[], G4bool isvalid[], EValidate validate=kValidateWithTol) override