39#if ( defined(G4GEOM_USE_USOLIDS) || defined(G4GEOM_USE_PARTIAL_USOLIDS) )
41#include <VecGeom/volumes/UnplacedCutTube.h>
50class G4UCutTubs :
public G4UAdapter<vecgeom::UnplacedCutTube>
52 using Shape_t = vecgeom::UnplacedCutTube;
53 using Base_t = G4UAdapter<vecgeom::UnplacedCutTube>;
68 G4UCutTubs(
const G4String& pName,
80 ~G4UCutTubs()
override =
default;
86 G4VSolid* Clone()
const override;
106 void SetInnerRadius (
G4double newRMin);
107 void SetOuterRadius (
G4double newRMax);
108 void SetZHalfLength (
G4double newDz);
110 void SetDeltaPhiAngle (
G4double newDPhi);
135 const G4VoxelLimits& pVoxelLimit,
136 const G4AffineTransform& pTransform,
142 G4Polyhedron* CreatePolyhedron()
const override;
147 G4UCutTubs(
const G4UCutTubs& rhs);
148 G4UCutTubs&
operator=(
const G4UCutTubs& rhs);
G4PVDivision & operator=(const G4PVDivision &)=delete
CLHEP::Hep3Vector G4ThreeVector