Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4RayTracerSceneHandler Class Reference

#include <G4RayTracerSceneHandler.hh>

+ Inheritance diagram for G4RayTracerSceneHandler:

Classes

struct  PathLessThan
 

Public Member Functions

 G4RayTracerSceneHandler (G4VGraphicsSystem &system, const G4String &name="")
 
virtual ~G4RayTracerSceneHandler ()
 
void BuildVisAttsMap (const G4VSolid &solid)
 
void RequestPrimitives (const G4VSolid &solid)
 
void AddPrimitive (const G4Polyline &)
 
void AddPrimitive (const G4Text &)
 
void AddPrimitive (const G4Circle &)
 
void AddPrimitive (const G4Square &)
 
void AddPrimitive (const G4Polyhedron &)
 
void AddPrimitive (const G4Polymarker &)
 
void AddPrimitive (const G4Scale &)
 
void ClearStore ()
 
const std::map< G4ModelingParameters::PVPointerCopyNoPath, G4VisAttributes, PathLessThan > & GetSceneVisAttsMap () const
 
- Public Member Functions inherited from G4VSceneHandler
 G4VSceneHandler (G4VGraphicsSystem &system, G4int id, const G4String &name="")
 
virtual ~G4VSceneHandler ()
 
virtual void PreAddSolid (const G4Transform3D &objectTransformation, const G4VisAttributes &)
 
virtual void PostAddSolid ()
 
virtual void AddSolid (const G4Box &)
 
virtual void AddSolid (const G4Cons &)
 
virtual void AddSolid (const G4Orb &)
 
virtual void AddSolid (const G4Para &)
 
virtual void AddSolid (const G4Sphere &)
 
virtual void AddSolid (const G4Torus &)
 
virtual void AddSolid (const G4Trap &)
 
virtual void AddSolid (const G4Trd &)
 
virtual void AddSolid (const G4Tubs &)
 
virtual void AddSolid (const G4Ellipsoid &)
 
virtual void AddSolid (const G4Polycone &)
 
virtual void AddSolid (const G4Polyhedra &)
 
virtual void AddSolid (const G4TessellatedSolid &)
 
virtual void AddSolid (const G4VSolid &)
 
virtual void AddCompound (const G4VTrajectory &)
 
virtual void AddCompound (const G4VHit &)
 
virtual void AddCompound (const G4VDigi &)
 
virtual void AddCompound (const G4THitsMap< G4double > &)
 
virtual void AddCompound (const G4THitsMap< G4StatDouble > &)
 
virtual void BeginModeling ()
 
virtual void EndModeling ()
 
virtual void BeginPrimitives (const G4Transform3D &objectTransformation=G4Transform3D())
 
virtual void EndPrimitives ()
 
virtual void BeginPrimitives2D (const G4Transform3D &objectTransformation=G4Transform3D())
 
virtual void EndPrimitives2D ()
 
virtual void AddPrimitive (const G4Polyline &)=0
 
virtual void AddPrimitive (const G4Scale &)
 
virtual void AddPrimitive (const G4Text &)=0
 
virtual void AddPrimitive (const G4Circle &)=0
 
virtual void AddPrimitive (const G4Square &)=0
 
virtual void AddPrimitive (const G4Polymarker &)
 
virtual void AddPrimitive (const G4Polyhedron &)=0
 
virtual const G4VisExtentGetExtent () const
 
const G4StringGetName () const
 
G4int GetSceneHandlerId () const
 
G4int GetViewCount () const
 
G4VGraphicsSystemGetGraphicsSystem () const
 
G4SceneGetScene () const
 
const G4ViewerListGetViewerList () const
 
G4VModelGetModel () const
 
G4VViewerGetCurrentViewer () const
 
G4bool GetMarkForClearingTransientStore () const
 
G4bool IsReadyForTransients () const
 
G4bool GetTransientsDrawnThisEvent () const
 
G4bool GetTransientsDrawnThisRun () const
 
const G4Transform3DGetObjectTransformation () const
 
void SetName (const G4String &)
 
void SetCurrentViewer (G4VViewer *)
 
virtual void SetScene (G4Scene *)
 
G4ViewerListSetViewerList ()
 
void SetModel (G4VModel *)
 
void SetMarkForClearingTransientStore (G4bool)
 
void SetTransientsDrawnThisEvent (G4bool)
 
void SetTransientsDrawnThisRun (G4bool)
 
void SetObjectTransformation (const G4Transform3D &)
 
const G4ColourGetColour ()
 
const G4ColourGetColor ()
 
const G4ColourGetTextColour (const G4Text &)
 
const G4ColourGetTextColor (const G4Text &)
 
G4double GetLineWidth (const G4VisAttributes *)
 
G4ViewParameters::DrawingStyle GetDrawingStyle (const G4VisAttributes *)
 
G4int GetNumberOfCloudPoints (const G4VisAttributes *) const
 
G4bool GetAuxEdgeVisible (const G4VisAttributes *)
 
G4int GetNoOfSides (const G4VisAttributes *)
 
G4double GetMarkerSize (const G4VMarker &, MarkerSizeType &)
 
G4double GetMarkerDiameter (const G4VMarker &, MarkerSizeType &)
 
G4double GetMarkerRadius (const G4VMarker &, MarkerSizeType &)
 
G4ModelingParametersCreateModelingParameters ()
 
void DrawEvent (const G4Event *)
 
void DrawEndOfRunModels ()
 
template<class T >
void AddSolidT (const T &solid)
 
template<class T >
void AddSolidWithAuxiliaryEdges (const T &solid)
 
G4int IncrementViewCount ()
 
virtual void ClearStore ()
 
virtual void ClearTransientStore ()
 
void AddViewerToList (G4VViewer *pView)
 
void RemoveViewerFromList (G4VViewer *pView)
 
- Public Member Functions inherited from G4VGraphicsScene
 G4VGraphicsScene ()
 
virtual ~G4VGraphicsScene ()
 
virtual void PreAddSolid (const G4Transform3D &objectTransformation, const G4VisAttributes &visAttribs)=0
 
virtual void PostAddSolid ()=0
 
virtual void AddSolid (const G4Box &)=0
 
virtual void AddSolid (const G4Cons &)=0
 
virtual void AddSolid (const G4Orb &)=0
 
virtual void AddSolid (const G4Para &)=0
 
virtual void AddSolid (const G4Sphere &)=0
 
virtual void AddSolid (const G4Torus &)=0
 
virtual void AddSolid (const G4Trap &)=0
 
virtual void AddSolid (const G4Trd &)=0
 
virtual void AddSolid (const G4Tubs &)=0
 
virtual void AddSolid (const G4Ellipsoid &)=0
 
virtual void AddSolid (const G4Polycone &)=0
 
virtual void AddSolid (const G4Polyhedra &)=0
 
virtual void AddSolid (const G4TessellatedSolid &)=0
 
virtual void AddSolid (const G4VSolid &)=0
 
virtual void AddCompound (const G4VTrajectory &)=0
 
virtual void AddCompound (const G4VHit &)=0
 
virtual void AddCompound (const G4VDigi &)=0
 
virtual void AddCompound (const G4THitsMap< G4double > &)=0
 
virtual void AddCompound (const G4THitsMap< G4StatDouble > &)=0
 
virtual void BeginPrimitives (const G4Transform3D &objectTransformation=G4Transform3D())=0
 
virtual void EndPrimitives ()=0
 
virtual void BeginPrimitives2D (const G4Transform3D &objectTransformation=G4Transform3D())=0
 
virtual void EndPrimitives2D ()=0
 
virtual void AddPrimitive (const G4Polyline &)=0
 
virtual void AddPrimitive (const G4Scale &)=0
 
virtual void AddPrimitive (const G4Text &)=0
 
virtual void AddPrimitive (const G4Circle &)=0
 
virtual void AddPrimitive (const G4Square &)=0
 
virtual void AddPrimitive (const G4Polymarker &)=0
 
virtual void AddPrimitive (const G4Polyhedron &)=0
 
virtual const G4VisExtentGetExtent () const
 

Additional Inherited Members

- Public Types inherited from G4VSceneHandler
enum  MarkerSizeType { world , screen }
 
- Protected Member Functions inherited from G4VSceneHandler
virtual void ProcessScene ()
 
virtual void RequestPrimitives (const G4VSolid &solid)
 
virtual G4DisplacedSolidCreateSectionSolid ()
 
virtual G4DisplacedSolidCreateCutawaySolid ()
 
void LoadAtts (const G4Visible &, G4AttHolder *)
 
- Protected Attributes inherited from G4VSceneHandler
G4VGraphicsSystemfSystem
 
const G4int fSceneHandlerId
 
G4String fName
 
G4int fViewCount
 
G4ViewerList fViewerList
 
G4VViewerfpViewer
 
G4ScenefpScene
 
G4bool fMarkForClearingTransientStore
 
G4bool fReadyForTransients
 
G4bool fTransientsDrawnThisEvent
 
G4bool fTransientsDrawnThisRun
 
G4bool fProcessingSolid
 
G4bool fProcessing2D
 
G4VModelfpModel
 
G4Transform3D fObjectTransformation
 
G4int fNestingDepth
 
const G4VisAttributesfpVisAttribs
 
const G4Transform3D fIdentityTransformation
 

Detailed Description

Definition at line 38 of file G4RayTracerSceneHandler.hh.

Constructor & Destructor Documentation

◆ G4RayTracerSceneHandler()

G4RayTracerSceneHandler::G4RayTracerSceneHandler ( G4VGraphicsSystem system,
const G4String name = "" 
)

Definition at line 35 of file G4RayTracerSceneHandler.cc.

37: G4VSceneHandler(system, fSceneIdCount++, name)
38{
39 // Keep vis manager happy when someone opens a ray tracer with "/vis/open
40 // RayTracer" but uses the ray tracer with "/vis/rayTracer" commands
41 // before creating any scenes, for example, instead of using
42 // "/vis/drawVolume"...
44 if(visManager) {
45 G4Scene* pScene = visManager->GetCurrentScene();
46 if (!pScene) {
47 // Create new scene like /vis/scene/create...
48 fpScene = new G4Scene("dummy-ray-tracer-scene");
49 // Add dummy run-duration model to avoid world being added and
50 // notifyHandler being invoked...
52 // Add to vis manager list; ownership thereby passes to vis manager...
53 visManager->SetSceneList().push_back(fpScene);
54 // ...and make current...
55 visManager->SetCurrentScene(fpScene);
56 }
57 }
58}
G4bool AddWorldIfEmpty(G4bool warn=false)
Definition: G4Scene.cc:169
G4Scene * GetCurrentScene() const
void SetCurrentScene(G4Scene *)
G4SceneList & SetSceneList()
static G4VisManager * GetInstance()

◆ ~G4RayTracerSceneHandler()

G4RayTracerSceneHandler::~G4RayTracerSceneHandler ( )
virtual

Definition at line 60 of file G4RayTracerSceneHandler.cc.

61{}

Member Function Documentation

◆ AddPrimitive() [1/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Circle )
inlinevirtual

Implements G4VSceneHandler.

Definition at line 55 of file G4RayTracerSceneHandler.hh.

55{}

◆ AddPrimitive() [2/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Polyhedron )
inlinevirtual

Implements G4VSceneHandler.

Definition at line 57 of file G4RayTracerSceneHandler.hh.

57{}

◆ AddPrimitive() [3/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Polyline )
inlinevirtual

Implements G4VSceneHandler.

Definition at line 53 of file G4RayTracerSceneHandler.hh.

53{}

◆ AddPrimitive() [4/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Polymarker )
inlinevirtual

Reimplemented from G4VSceneHandler.

Definition at line 58 of file G4RayTracerSceneHandler.hh.

58{}

◆ AddPrimitive() [5/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Scale )
inlinevirtual

Reimplemented from G4VSceneHandler.

Definition at line 59 of file G4RayTracerSceneHandler.hh.

59{}

◆ AddPrimitive() [6/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Square )
inlinevirtual

Implements G4VSceneHandler.

Definition at line 56 of file G4RayTracerSceneHandler.hh.

56{}

◆ AddPrimitive() [7/7]

void G4RayTracerSceneHandler::AddPrimitive ( const G4Text )
inlinevirtual

Implements G4VSceneHandler.

Definition at line 54 of file G4RayTracerSceneHandler.hh.

54{}

◆ BuildVisAttsMap()

void G4RayTracerSceneHandler::BuildVisAttsMap ( const G4VSolid solid)

Definition at line 87 of file G4RayTracerSceneHandler.cc.

88{
89 // Build map of vis attributes
90
91 G4PhysicalVolumeModel* fpPVModel = dynamic_cast<G4PhysicalVolumeModel*>(fpModel);
92 if (fpPVModel) {
94 for (const auto& nodeID: fpPVModel->GetFullPVPath()) {
95 // Build an element from the nodeid.
96 temp.push_back(G4ModelingParameters::PVPointerCopyNo(nodeID.GetPhysicalVolume(),nodeID.GetCopyNo()));
97 }
98 const G4VisAttributes* pVisAtts = fpVisAttribs;
99 if (!pVisAtts) {
100 // Shouldn't happen.
102 G4cout <<
103 "WARNING: G4RayTracerSceneHandler::BuildVisAttsMap: null vis atts pointer."
104 "\n Using a default vis atts."
105 << G4endl;
106 }
107 static const G4VisAttributes defaultVisAtts;
108 pVisAtts = &defaultVisAtts;
109 }
110 // Copy vis atts into the vis atts map
111 fSceneVisAttsMap[temp] = *pVisAtts;
112 }
113}
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout
std::vector< PVPointerCopyNo > PVPointerCopyNoPath
const std::vector< G4PhysicalVolumeNodeID > & GetFullPVPath() const
const G4VisAttributes * fpVisAttribs
static Verbosity GetVerbosity()

Referenced by RequestPrimitives().

◆ ClearStore()

void G4RayTracerSceneHandler::ClearStore ( )
virtual

Reimplemented from G4VSceneHandler.

Definition at line 63 of file G4RayTracerSceneHandler.cc.

64{
65 fSceneVisAttsMap.clear();
66}

◆ GetSceneVisAttsMap()

const std::map< G4ModelingParameters::PVPointerCopyNoPath, G4VisAttributes, PathLessThan > & G4RayTracerSceneHandler::GetSceneVisAttsMap ( ) const
inline

Definition at line 71 of file G4RayTracerSceneHandler.hh.

72 {return fSceneVisAttsMap;}

Referenced by G4RayTrajectory::AppendStep(), and G4RTSteppingAction::UserSteppingAction().

◆ RequestPrimitives()

void G4RayTracerSceneHandler::RequestPrimitives ( const G4VSolid solid)
inlinevirtual

Reimplemented from G4VSceneHandler.

Definition at line 49 of file G4RayTracerSceneHandler.hh.

50 {BuildVisAttsMap(solid);}
void BuildVisAttsMap(const G4VSolid &solid)

The documentation for this class was generated from the following files: