31using std::initializer_list;
68 G4double V = LengthY * LengthX * LengthZ;
76 for(
size_t i = 0; i < 8; i++)
158 if(fxhi < other.fxlo || fxlo > other.
fxhi ||
fyhi < other.
fylo ||
159 fylo > other.
fyhi || fzhi < other.fzlo || fzlo > other.
fzhi)
200 if(num_less_extent > 1)
209 G4double norm = std::sqrt(x * x + y * y + z * z);
211 return (norm < Radius);
222 G4double norm = std::sqrt(x * x + y * y + z * z);
223 return (norm < Radius);
231 return (((query - Point).mag()) < Radius);
242 std::array<G4DNABoundingBox, 8> ret{ {
263 (std::isnan(
fxhi) && std::isnan(rhs.
fxhi) && std::isnan(
fxlo) &&
264 std::isnan(rhs.
fxlo) && std::isnan(
fyhi) && std::isnan(rhs.
fyhi) &&
265 std::isnan(
fylo) && std::isnan(rhs.
fylo) && std::isnan(
fzhi) &&
266 std::isnan(rhs.
fzhi) && std::isnan(
fzlo) && std::isnan(rhs.
fzlo));
const G4DNABoundingBox invalid
void resize(G4ThreeVector pics[8])
G4bool operator!=(const G4DNABoundingBox &rhs) const
G4ThreeVector middlePoint() const
G4double halfSideLengthInY() const
G4DNABoundingBox translate(const G4ThreeVector &trans) const
G4DNABoundingBox()=default
G4bool operator==(const G4DNABoundingBox &rhs) const
std::array< G4DNABoundingBox, 8 > partition() const
G4bool overlap(const G4DNABoundingBox &other, G4DNABoundingBox *out) const
G4DNABoundingBox & operator=(const G4DNABoundingBox &)=default
G4bool contains(const G4DNABoundingBox &other) const
G4double halfSideLengthInZ() const
G4double halfSideLengthInX() const
std::ostream & operator<<(std::ostream &, const BasicVector3D< float > &)
T max(const T t1, const T t2)
brief Return the largest of the two arguments
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
void copy(G4double dst[], const G4double src[], size_t size=G4FieldTrack::ncompSVEC)