35#include <vtkMatrix4x4.h>
42 double transformArray[16] = {g4Trans.
xx(), g4Trans.
xy(), g4Trans.
xy(), g4Trans.
dx(),
43 g4Trans.
yx(), g4Trans.
yy(), g4Trans.
yy(), g4Trans.
dy(),
44 g4Trans.
zx(), g4Trans.
zy(), g4Trans.
zy(), g4Trans.
dz(),
46 transform->DeepCopy(transformArray);
54 auto g4normal = g4plane.
normal();
55 auto g4point = g4plane.
point();
57 plane->SetNormal(g4normal.x(), g4normal.y(), g4normal.z());
58 plane->SetOrigin(g4point.x(), g4point.y(), g4point.z());
65 auto point = vtkPlane->GetOrigin();
66 auto normal = vtkPlane->GetNormal();
75 if (boundToCheck[0] < maxBound[0]) maxBound[0] = boundToCheck[0];
76 if (boundToCheck[1] > maxBound[1]) maxBound[1] = boundToCheck[1];
78 if (boundToCheck[2] < maxBound[2]) maxBound[2] = boundToCheck[2];
79 if (boundToCheck[3] > maxBound[3]) maxBound[3] = boundToCheck[3];
81 if (boundToCheck[4] < maxBound[4]) maxBound[4] = boundToCheck[4];
82 if (boundToCheck[5] > maxBound[5]) maxBound[5] = boundToCheck[5];
89 std::size_t xhash = std::hash<G4double>{}(v.
x());
90 std::size_t yhash = std::hash<G4double>{}(v.
y());
91 std::size_t zhash = std::hash<G4double>{}(v.
z());
102 std::size_t rhash = std::hash<G4double>{}(c.
GetRed());
103 std::size_t ghash = std::hash<G4double>{}(c.
GetGreen());
104 std::size_t bhash = std::hash<G4double>{}(c.
GetBlue());
105 std::size_t ahash = std::hash<G4double>{}(c.
GetAlpha());
HepGeom::Normal3D< G4double > G4Normal3D
HepGeom::Plane3D< G4double > G4Plane3D
HepGeom::Point3D< G4double > G4Point3D
G4Plane3D VtkPlaneToG4Plane3D(vtkPlane *vtkPlane)
void MaxBounds(G4double *maxBound, G4double *boundToCheck)
std::size_t MakeHash(const G4ThreeVector &v)
vtkSmartPointer< vtkPlane > G4Plane3DToVtkPlane(const G4Plane3D &g4plane)
vtkSmartPointer< vtkMatrix4x4 > G4Transform3DToVtkMatrix4x4(const G4Transform3D &g4Trans)
G4double GetAlpha() const
G4double GetGreen() const
Point3D< T > point(const Point3D< T > &p) const
Normal3D< T > normal() const
void hash_combine(std::size_t)