39#if ( defined(G4GEOM_USE_USOLIDS) || defined(G4GEOM_USE_PARTIAL_USOLIDS) )
41#include <VecGeom/volumes/UnplacedTet.h>
45class G4UTet :
public G4UAdapter<vecgeom::UnplacedTet>
48 using Shape_t = vecgeom::UnplacedTet;
49 using Base_t = G4UAdapter<vecgeom::UnplacedTet>;
53 G4UTet(
const G4String& pName,
58 G4bool* degeneracyFlag =
nullptr);
62 void ComputeDimensions( G4VPVParameterisation* p,
64 const G4VPhysicalVolume* pRep)
override;
66 G4VSolid* Clone()
const override;
70 inline G4bool IsFaceted()
const override;
77 G4UTet(
const G4UTet& rhs);
78 G4UTet& operator=(
const G4UTet& rhs);
85 const G4VoxelLimits& pVoxelLimit,
86 const G4AffineTransform& pTransform,
89 G4Polyhedron* CreatePolyhedron()
const override;
95 G4bool* degeneracyFlag =
nullptr);
102 std::vector<G4ThreeVector> GetVertices()
const;
125inline G4bool G4UTet::IsFaceted()
const
CLHEP::Hep3Vector G4ThreeVector