39#if ( defined(G4GEOM_USE_USOLIDS) || defined(G4GEOM_USE_PARTIAL_USOLIDS) )
41#include <VecGeom/volumes/UnplacedTet.h>
49class G4UTet :
public G4UAdapter<vecgeom::UnplacedTet>
52 using Shape_t = vecgeom::UnplacedTet;
53 using Base_t = G4UAdapter<vecgeom::UnplacedTet>;
66 G4UTet(
const G4String& pName,
71 G4bool* degeneracyFlag =
nullptr);
76 ~G4UTet()
override =
default;
82 void ComputeDimensions(G4VPVParameterisation* p,
84 const G4VPhysicalVolume* pRep)
override;
90 G4VSolid* Clone()
const override;
100 inline G4bool IsFaceted()
const override;
121 const G4VoxelLimits& pVoxelLimit,
122 const G4AffineTransform& pTransform,
128 G4Polyhedron* CreatePolyhedron()
const override;
137 G4bool* degeneracyFlag =
nullptr);
142 std::vector<G4ThreeVector> GetVertices()
const;
158 G4UTet(
const G4UTet& rhs);
175inline G4bool G4UTet::IsFaceted()
const
G4PVDivision & operator=(const G4PVDivision &)=delete
CLHEP::Hep3Vector G4ThreeVector