49 #if defined(G4GEOM_USE_USOLIDS)
54 class G4UTubs :
public G4USolid
74 inline UTubs* GetShape()
const;
76 inline G4double GetInnerRadius ()
const;
77 inline G4double GetOuterRadius ()
const;
78 inline G4double GetZHalfLength ()
const;
79 inline G4double GetStartPhiAngle ()
const;
80 inline G4double GetDeltaPhiAngle ()
const;
82 inline void SetInnerRadius (
G4double newRMin);
83 inline void SetOuterRadius (
G4double newRMax);
84 inline void SetZHalfLength (
G4double newDz);
86 inline void SetDeltaPhiAngle (
G4double newDPhi);
95 G4UTubs(
const G4UTubs& rhs);
96 G4UTubs& operator=(
const G4UTubs& rhs);
105 inline UTubs* G4UTubs::GetShape()
const
107 return (UTubs*) fShape;
110 inline G4double G4UTubs::GetInnerRadius()
const
112 return GetShape()->GetInnerRadius();
114 inline G4double G4UTubs::GetOuterRadius()
const
116 return GetShape()->GetOuterRadius();
118 inline G4double G4UTubs::GetZHalfLength()
const
120 return GetShape()->GetZHalfLength();
122 inline G4double G4UTubs::GetStartPhiAngle()
const
124 return GetShape()->GetStartPhiAngle();
126 inline G4double G4UTubs::GetDeltaPhiAngle()
const
128 return GetShape()->GetDeltaPhiAngle();
131 inline void G4UTubs::SetInnerRadius(
G4double newRMin)
133 GetShape()->SetInnerRadius(newRMin);
134 fRebuildPolyhedron =
true;
136 inline void G4UTubs::SetOuterRadius(
G4double newRMax)
138 GetShape()->SetOuterRadius(newRMax);
139 fRebuildPolyhedron =
true;
141 inline void G4UTubs::SetZHalfLength(
G4double newDz)
143 GetShape()->SetZHalfLength(newDz);
144 fRebuildPolyhedron =
true;
146 inline void G4UTubs::SetStartPhiAngle(
G4double newSPhi,
G4bool trig)
148 GetShape()->SetStartPhiAngle(newSPhi, trig);
149 fRebuildPolyhedron =
true;
151 inline void G4UTubs::SetDeltaPhiAngle(
G4double newDPhi)
153 GetShape()->SetDeltaPhiAngle(newDPhi);
154 fRebuildPolyhedron =
true;
157 #endif // G4GEOM_USE_USOLIDS