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

#include <G4VisCommandsSceneAdd.hh>

Inheritance diagram for G4VisCommandSceneAddText:

Public Member Functions

 G4VisCommandSceneAddText ()
virtual ~G4VisCommandSceneAddText ()
G4String GetCurrentValue (G4UIcommand *command)
void SetNewValue (G4UIcommand *command, G4String newValue)
Public Member Functions inherited from G4VVisCommandScene
 G4VVisCommandScene ()
virtual ~G4VVisCommandScene ()
Public Member Functions inherited from G4VVisCommand
 G4VVisCommand ()
virtual ~G4VVisCommand ()
Public Member Functions inherited from G4UImessenger
 G4UImessenger ()=default
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
virtual ~G4UImessenger ()
G4bool CommandsShouldBeInMaster () const

Additional Inherited Members

Static Public Member Functions inherited from G4VVisCommand
static G4VisManagerGetVisManager ()
static void SetVisManager (G4VisManager *pVisManager)
static const G4ColourGetCurrentTextColour ()
Protected Member Functions inherited from G4VVisCommandScene
G4String CurrentSceneName ()
Protected Member Functions inherited from G4VVisCommand
void SetViewParameters (G4VViewer *viewer, const G4ViewParameters &viewParams)
void RefreshIfRequired (G4VViewer *viewer)
void InterpolateViews (G4VViewer *currentViewer, const std::vector< G4ViewParameters > &viewVector, const G4int nInterpolationPoints=50, const G4int waitTimePerPointmilliseconds=20, const G4String &exportString="")
void InterpolateToNewView (G4VViewer *currentViewer, const G4ViewParameters &oldVP, const G4ViewParameters &newVP, const G4int nInterpolationPoints=50, const G4int waitTimePerPointmilliseconds=20, const G4String &exportString="")
void Twinkle (G4VViewer *currentViewer, const G4ViewParameters &baseVP, const std::vector< std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > > &paths)
const G4StringConvertToColourGuidance ()
void ConvertToColour (G4Colour &colour, const G4String &redOrString, G4double green, G4double blue, G4double opacity)
G4bool ProvideValueOfUnit (const G4String &where, const G4String &unit, const G4String &category, G4double &value)
void CopyCameraParameters (G4ViewParameters &target, const G4ViewParameters &from)
void CheckSceneAndNotifyHandlers (G4Scene *=nullptr)
G4bool CheckView ()
void G4VisCommandsSceneAddUnsuccessful (G4VisManager::Verbosity verbosity)
void CopyGuidanceFrom (const G4UIcommand *fromCmd, G4UIcommand *toCmd, G4int startLine=0)
void CopyParametersFrom (const G4UIcommand *fromCmd, G4UIcommand *toCmd)
void DrawExtent (const G4VisExtent &)
Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
G4String LtoS (G4long l)
G4String DtoS (G4double a)
G4String BtoS (G4bool b)
G4int StoI (const G4String &s)
G4long StoL (const G4String &s)
G4double StoD (const G4String &s)
G4bool StoB (const G4String &s)
void AddUIcommand (G4UIcommand *newCommand)
void CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
template<typename T>
T * CreateCommand (const G4String &cname, const G4String &dsc)
Static Protected Member Functions inherited from G4VVisCommand
static G4String ConvertToString (G4double x, G4double y, const char *unitName)
static G4bool ConvertToDoublePair (const G4String &paramString, G4double &xval, G4double &yval)
Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir = nullptr
G4String baseDirName = ""
G4bool commandsShouldBeInMaster = false
Static Protected Attributes inherited from G4VVisCommand
static G4VisManagerfpVisManager = nullptr
static G4int fCurrentArrow3DLineSegmentsPerCircle = 6
static G4Colour fCurrentColour = G4Colour::White()
static G4double fCurrentLineWidth = 1.
static G4Colour fCurrentTextColour = G4Colour::Blue()
static G4Text::Layout fCurrentTextLayout = G4Text::left
static G4double fCurrentTextSize = 12.
static G4PhysicalVolumeModel::TouchableProperties fCurrentTouchableProperties
static G4VisExtent fCurrentExtentForField
static std::vector< G4PhysicalVolumesSearchScene::FindingsfCurrrentPVFindingsForField
static G4bool fThereWasAViewer = false
static G4ViewParameters fExistingVP
static G4SceneTreeItem fExistingSceneTree

Detailed Description

Definition at line 438 of file G4VisCommandsSceneAdd.hh.

Constructor & Destructor Documentation

◆ G4VisCommandSceneAddText()

G4VisCommandSceneAddText::G4VisCommandSceneAddText ( )

Definition at line 2624 of file G4VisCommandsSceneAdd.cc.

2624 {
2625 G4bool omitable;
2626 fpCommand = new G4UIcommand ("/vis/scene/add/text", this);
2627 fpCommand -> SetGuidance ("Adds text to current scene.");
2628 fpCommand -> SetGuidance
2629 ("Use \"/vis/set/textColour\" to set colour.");
2630 fpCommand -> SetGuidance
2631 ("Use \"/vis/set/textLayout\" to set layout:");
2632 G4UIparameter* parameter;
2633 parameter = new G4UIparameter ("x", 'd', omitable = true);
2634 parameter->SetDefaultValue (0);
2635 fpCommand->SetParameter (parameter);
2636 parameter = new G4UIparameter ("y", 'd', omitable = true);
2637 parameter->SetDefaultValue (0);
2638 fpCommand->SetParameter (parameter);
2639 parameter = new G4UIparameter ("z", 'd', omitable = true);
2640 parameter->SetDefaultValue (0);
2641 fpCommand->SetParameter (parameter);
2642 parameter = new G4UIparameter ("unit", 's', omitable = true);
2643 parameter->SetDefaultValue ("m");
2644 fpCommand->SetParameter (parameter);
2645 parameter = new G4UIparameter ("font_size", 'd', omitable = true);
2646 parameter->SetDefaultValue (12);
2647 parameter->SetGuidance ("pixels");
2648 fpCommand->SetParameter (parameter);
2649 parameter = new G4UIparameter ("x_offset", 'd', omitable = true);
2650 parameter->SetDefaultValue (0);
2651 parameter->SetGuidance ("pixels");
2652 fpCommand->SetParameter (parameter);
2653 parameter = new G4UIparameter ("y_offset", 'd', omitable = true);
2654 parameter->SetDefaultValue (0);
2655 parameter->SetGuidance ("pixels");
2656 fpCommand->SetParameter (parameter);
2657 parameter = new G4UIparameter ("text", 's', omitable = true);
2658 parameter->SetGuidance ("The rest of the line is text.");
2659 parameter->SetDefaultValue ("Hello G4");
2660 fpCommand->SetParameter (parameter);
2661}
bool G4bool
Definition G4Types.hh:86
void SetDefaultValue(const char *theDefaultValue)
void SetGuidance(const char *theGuidance)

◆ ~G4VisCommandSceneAddText()

G4VisCommandSceneAddText::~G4VisCommandSceneAddText ( )
virtual

Definition at line 2663 of file G4VisCommandsSceneAdd.cc.

2663 {
2664 delete fpCommand;
2665}

Member Function Documentation

◆ GetCurrentValue()

G4String G4VisCommandSceneAddText::GetCurrentValue ( G4UIcommand * command)
virtual

Reimplemented from G4UImessenger.

Definition at line 2667 of file G4VisCommandsSceneAdd.cc.

2667 {
2668 return "";
2669}

◆ SetNewValue()

void G4VisCommandSceneAddText::SetNewValue ( G4UIcommand * command,
G4String newValue )
virtual

Reimplemented from G4UImessenger.

Definition at line 2671 of file G4VisCommandsSceneAdd.cc.

2671 {
2672
2673 G4VisManager::Verbosity verbosity = fpVisManager->GetVerbosity();
2674 G4bool warn = verbosity >= G4VisManager::warnings;
2675
2676 G4Scene* pScene = fpVisManager->GetCurrentScene();
2677 if (!pScene) {
2678 if (verbosity >= G4VisManager::errors) {
2679 G4warn << "ERROR: No current scene. Please create one." << G4endl;
2680 }
2681 return;
2682 }
2683
2684 G4Tokenizer next(newValue);
2685 G4double x = StoD(next());
2686 G4double y = StoD(next());
2687 G4double z = StoD(next());
2688 G4String unitString = next();
2689 G4double font_size = StoD(next());
2690 G4double x_offset = StoD(next());
2691 G4double y_offset = StoD(next());
2692 G4String text = next("\n");
2693
2694 G4double unit = G4UIcommand::ValueOf(unitString);
2695 x *= unit; y *= unit; z *= unit;
2696
2697 G4Text g4text(text, G4Point3D(x,y,z));
2698 G4VisAttributes visAtts(fCurrentTextColour);
2699 g4text.SetVisAttributes(visAtts);
2700 g4text.SetLayout(fCurrentTextLayout);
2701 g4text.SetScreenSize(font_size);
2702 g4text.SetOffset(x_offset,y_offset);
2703 G4VModel* model = new G4TextModel(g4text);
2704 const G4String& currentSceneName = pScene -> GetName ();
2705 G4bool successful = pScene -> AddRunDurationModel (model, warn);
2706 if (successful) {
2707 if (verbosity >= G4VisManager::confirmations) {
2708 G4cout << "Text '" << text
2709 << "' has been added to scene \"" << currentSceneName << "\"."
2710 << G4endl;
2711 }
2712 }
2713 else G4VisCommandsSceneAddUnsuccessful(verbosity);
2714
2716}
HepGeom::Point3D< G4double > G4Point3D
Definition G4Point3D.hh:34
#define G4warn
Definition G4Scene.cc:41
double G4double
Definition G4Types.hh:83
#define G4endl
Definition G4ios.hh:67
G4GLOB_DLL std::ostream G4cout
static G4double ValueOf(const char *unitName)
G4double StoD(const G4String &s)
void G4VisCommandsSceneAddUnsuccessful(G4VisManager::Verbosity verbosity)
static G4Colour fCurrentTextColour
void CheckSceneAndNotifyHandlers(G4Scene *=nullptr)
static G4VisManager * fpVisManager
static G4Text::Layout fCurrentTextLayout

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