Import Geant4 11.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2022-12-09 14:43:28 +01:00
parent c07cea1fe0
commit 9f34590941
3810 changed files with 200490 additions and 182326 deletions
@@ -419,6 +419,15 @@ protected:
// For a tetrahedron mesh, draw as surfaces by colour and material
// with inner shared faces removed.
G4ThreeVector GetPointInBox(const G4ThreeVector& pos,
G4double halfX,
G4double halfY,
G4double halfZ) const;
// Sample a random point inside the box
G4ThreeVector GetPointInTet(const std::vector<G4ThreeVector>& vertices) const;
// Sample a random point inside the tetrahedron
//////////////////////////////////////////////////////////////
// Data members
@@ -198,17 +198,17 @@ protected:
// Operations
void AddSplinePoint(const G4Vector3D& v);
G4Vector3D GetInterpolatedSplinePoint(float t); // t = 0...1; 0=vp[0] ... 1=vp[max]
int GetNumPoints();
G4Vector3D GetInterpolatedSplinePoint(G4float t); // t = 0...1; 0=vp[0] ... 1=vp[max]
G4int GetNumPoints();
G4Vector3D GetPoint(int);
// method for computing the Catmull-Rom parametric equation
// given a time (t) and a vector quadruple (p1,p2,p3,p4).
G4Vector3D CatmullRom_Eq(float t, const G4Vector3D& p1, const G4Vector3D& p2,
G4Vector3D CatmullRom_Eq(G4float t, const G4Vector3D& p1, const G4Vector3D& p2,
const G4Vector3D& p3, const G4Vector3D& p4);
private:
std::vector<G4Vector3D> vp;
float delta_t;
G4float delta_t;
};
//////////////////////////////////////////////////////////////
@@ -31,84 +31,86 @@
#ifndef G4VISEXECUTIVE_ICC
#define G4VISEXECUTIVE_ICC
// Supported drivers...
// Not needing external packages or libraries...
#include "G4ASCIITree.hh"
#include "G4DAWNFILE.hh"
#include "G4HepRepFile.hh"
#include "G4RayTracer.hh"
// Filter/Model Factories
#include "G4HitFilterFactories.hh"
#include "G4DigiFilterFactories.hh"
#include "G4TrajectoryFilterFactories.hh"
#include "G4TrajectoryModelFactories.hh"
#include "G4VRML2File.hh"
#include "G4GMocrenFile.hh"
// Supported drivers...
// Not needing external packages or libraries...
#include "G4ASCIITree.hh" // no_geant4_module_check
#include "G4DAWNFILE.hh" // no_geant4_module_check
#include "G4HepRepFile.hh" // no_geant4_module_check
#include "G4RayTracer.hh" // no_geant4_module_check
#include "G4VRML2File.hh" // no_geant4_module_check
#include "G4GMocrenFile.hh" // no_geant4_module_check
#include "G4ToolsSGOffscreen.hh" // no_geant4_module_check
// Needing external packages or libraries...
#ifdef G4VIS_USE_OPENGLX
#include "G4OpenGLImmediateX.hh"
#include "G4OpenGLStoredX.hh"
#include "G4OpenGLImmediateX.hh" // no_geant4_module_check
#include "G4OpenGLStoredX.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_OPENGLWIN32
#include "G4OpenGLImmediateWin32.hh"
#include "G4OpenGLStoredWin32.hh"
#include "G4OpenGLImmediateWin32.hh" // no_geant4_module_check
#include "G4OpenGLStoredWin32.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_OPENGLXM
#include "G4OpenGLImmediateXm.hh"
#include "G4OpenGLStoredXm.hh"
#include "G4OpenGLImmediateXm.hh" // no_geant4_module_check
#include "G4OpenGLStoredXm.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_OPENGLQT
#include "G4OpenGLImmediateQt.hh"
#include "G4OpenGLStoredQt.hh"
#include "G4OpenGLImmediateQt.hh" // no_geant4_module_check
#include "G4OpenGLStoredQt.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_OIX
#include "G4OpenInventorX.hh"
#include "G4OpenInventorXtExtended.hh"
#include "G4OpenInventorX.hh" // no_geant4_module_check
#include "G4OpenInventorXtExtended.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_OIQT
#include "G4OpenInventorQt.hh"
#include "G4OpenInventorQt.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_OIWIN32
#include "G4OpenInventorWin32.hh"
#include "G4OpenInventorWin32.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_RAYTRACERX
#include "G4RayTracerX.hh"
#include "G4RayTracerX.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_QT3D
#include "G4Qt3D.hh"
#include "G4Qt3D.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_TOOLSSG_X11_GLES
#include "G4ToolsSGX11GLES.hh"
#include "G4ToolsSGX11GLES.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_TOOLSSG_WINDOWS_GLES
#include "G4ToolsSGWindowsGLES.hh"
#include "G4ToolsSGWindowsGLES.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_TOOLSSG_XT_GLES
#include "G4ToolsSGXtGLES.hh"
#include "G4ToolsSGXtGLES.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_TOOLSSG_QT_GLES
#include "G4ToolsSGQtGLES.hh"
#include "G4ToolsSGQtGLES.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_VTK
#include "G4Vtk.hh"
#include "G4Vtk.hh" // no_geant4_module_check
#endif
#ifdef G4VIS_USE_VTK_QT
#include "G4VtkQt.hh"
#include "G4VtkQt.hh" // no_geant4_module_check
#endif
// The inline keyword prevents the compiler making an external
@@ -135,6 +137,11 @@ G4VisExecutive::RegisterGraphicsSystems () {
RegisterGraphicsSystem (new G4RayTracer);
RegisterGraphicsSystem (new G4VRML2File);
RegisterGraphicsSystem (new G4GMocrenFile);
RegisterGraphicsSystem (new G4ToolsSGOffscreen);
G4VGraphicsSystem* tsg_offscreen = new G4ToolsSGOffscreen;
RegisterGraphicsSystem(tsg_offscreen);
tsg_offscreen->AddNickname("TSG_FILE");
// Graphics systems needing external packages or libraries...
// Register OGL family of drivers with their normal names,
@@ -286,6 +286,10 @@ public: // With description
void Draw (const G4VSolid&, const G4VisAttributes&,
const G4Transform3D& objectTransformation = G4Transform3D());
void DrawGeometry
(G4VPhysicalVolume*, const G4Transform3D& t = G4Transform3D());
// Draws a geometry tree starting at the specified physical volume.
//////////////////////////////////////////////////////////////////////
// Optional methods that you may use to bracket a series of Draw
// messages that have identical objectTransformation to improve