Geant4  10.02.p03
G4VisCommandSceneAddText Class Reference

#include <G4VisCommandsSceneAdd.hh>

Inheritance diagram for G4VisCommandSceneAddText:
Collaboration 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 ()
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
G4bool operator== (const G4UImessenger &messenger) const
 
G4bool CommandsShouldBeInMaster () const
 

Private Member Functions

 G4VisCommandSceneAddText (const G4VisCommandSceneAddText &)
 
G4VisCommandSceneAddTextoperator= (const G4VisCommandSceneAddText &)
 

Private Attributes

G4UIcommandfpCommand
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VVisCommand
static void SetVisManager (G4VisManager *)
 
static const G4ColourGetCurrentColour ()
 
static G4double GetCurrentLineWidth ()
 
static const G4ColourGetCurrentTextColour ()
 
static G4Text::Layout GetCurrentTextLayout ()
 
static G4double GetCurrentTextSize ()
 
- Protected Member Functions inherited from G4VVisCommandScene
G4String CurrentSceneName ()
 
- Protected Member Functions inherited from G4VVisCommand
void UpdateVisManagerScene (const G4String &sceneName="")
 
- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (G4String s)
 
G4double StoD (G4String s)
 
G4bool StoB (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 void ConvertToDoublePair (const G4String &paramString, G4double &xval, G4double &yval)
 
- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir
 
G4String baseDirName
 
G4bool commandsShouldBeInMaster
 
- Static Protected Attributes inherited from G4VVisCommand
static G4VisManagerfpVisManager = 0
 
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 G4ModelingParameters::PVNameCopyNoPath fCurrentTouchablePath
 

Detailed Description

Definition at line 355 of file G4VisCommandsSceneAdd.hh.

Constructor & Destructor Documentation

◆ G4VisCommandSceneAddText() [1/2]

G4VisCommandSceneAddText::G4VisCommandSceneAddText ( )

Definition at line 2242 of file G4VisCommandsSceneAdd.cc.

2242  {
2243  G4bool omitable;
2244  fpCommand = new G4UIcommand ("/vis/scene/add/text", this);
2245  fpCommand -> SetGuidance ("Adds text to current scene.");
2246  fpCommand -> SetGuidance
2247  ("Use \"/vis/set/textColour\" to set colour.");
2248  fpCommand -> SetGuidance
2249  ("Use \"/vis/set/textLayout\" to set layout:");
2250  G4UIparameter* parameter;
2251  parameter = new G4UIparameter ("x", 'd', omitable = true);
2252  parameter->SetDefaultValue (0);
2253  fpCommand->SetParameter (parameter);
2254  parameter = new G4UIparameter ("y", 'd', omitable = true);
2255  parameter->SetDefaultValue (0);
2256  fpCommand->SetParameter (parameter);
2257  parameter = new G4UIparameter ("z", 'd', omitable = true);
2258  parameter->SetDefaultValue (0);
2259  fpCommand->SetParameter (parameter);
2260  parameter = new G4UIparameter ("unit", 's', omitable = true);
2261  parameter->SetDefaultValue ("m");
2262  fpCommand->SetParameter (parameter);
2263  parameter = new G4UIparameter ("font_size", 'd', omitable = true);
2264  parameter->SetDefaultValue (12);
2265  parameter->SetGuidance ("pixels");
2266  fpCommand->SetParameter (parameter);
2267  parameter = new G4UIparameter ("x_offset", 'd', omitable = true);
2268  parameter->SetDefaultValue (0);
2269  parameter->SetGuidance ("pixels");
2270  fpCommand->SetParameter (parameter);
2271  parameter = new G4UIparameter ("y_offset", 'd', omitable = true);
2272  parameter->SetDefaultValue (0);
2273  parameter->SetGuidance ("pixels");
2274  fpCommand->SetParameter (parameter);
2275  parameter = new G4UIparameter ("text", 's', omitable = true);
2276  parameter->SetGuidance ("The rest of the line is text.");
2277  parameter->SetDefaultValue ("Hello G4");
2278  fpCommand->SetParameter (parameter);
2279 }
void SetParameter(G4UIparameter *const newParameter)
Definition: G4UIcommand.hh:152
void SetDefaultValue(const char *theDefaultValue)
bool G4bool
Definition: G4Types.hh:79
void SetGuidance(const char *theGuidance)
Here is the call graph for this function:

◆ ~G4VisCommandSceneAddText()

G4VisCommandSceneAddText::~G4VisCommandSceneAddText ( )
virtual

Definition at line 2281 of file G4VisCommandsSceneAdd.cc.

2281  {
2282  delete fpCommand;
2283 }

◆ G4VisCommandSceneAddText() [2/2]

G4VisCommandSceneAddText::G4VisCommandSceneAddText ( const G4VisCommandSceneAddText )
private

Member Function Documentation

◆ GetCurrentValue()

G4String G4VisCommandSceneAddText::GetCurrentValue ( G4UIcommand command)
virtual

Reimplemented from G4UImessenger.

Definition at line 2285 of file G4VisCommandsSceneAdd.cc.

2285  {
2286  return "";
2287 }

◆ operator=()

G4VisCommandSceneAddText& G4VisCommandSceneAddText::operator= ( const G4VisCommandSceneAddText )
private

◆ SetNewValue()

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

Reimplemented from G4UImessenger.

Definition at line 2289 of file G4VisCommandsSceneAdd.cc.

2289  {
2290 
2292  G4bool warn = verbosity >= G4VisManager::warnings;
2293 
2294  G4Scene* pScene = fpVisManager->GetCurrentScene();
2295  if (!pScene) {
2296  if (verbosity >= G4VisManager::errors) {
2297  G4cerr << "ERROR: No current scene. Please create one." << G4endl;
2298  }
2299  return;
2300  }
2301 
2302  G4Tokenizer next(newValue);
2303  G4double x = StoD(next());
2304  G4double y = StoD(next());
2305  G4double z = StoD(next());
2306  G4String unitString = next();
2307  G4double font_size = StoD(next());
2308  G4double x_offset = StoD(next());
2309  G4double y_offset = StoD(next());
2310  G4String text = next("\n");
2311 
2312  G4double unit = G4UIcommand::ValueOf(unitString);
2313  x *= unit; y *= unit; z *= unit;
2314 
2315  G4Text g4text(text, G4Point3D(x,y,z));
2317  g4text.SetVisAttributes(visAtts);
2318  g4text.SetLayout(fCurrentTextLayout);
2319  g4text.SetScreenSize(font_size);
2320  g4text.SetOffset(x_offset,y_offset);
2321  G4VModel* model = new G4TextModel(g4text);
2322  const G4String& currentSceneName = pScene -> GetName ();
2323  G4bool successful = pScene -> AddRunDurationModel (model, warn);
2324  if (successful) {
2325  if (verbosity >= G4VisManager::confirmations) {
2326  G4cout << "Text \"" << text
2327  << "\" has been added to scene \"" << currentSceneName << "\"."
2328  << G4endl;
2329  }
2330  }
2331  else G4VisCommandsSceneAddUnsuccessful(verbosity);
2332  UpdateVisManagerScene (currentSceneName);
2333 }
Definition: G4Text.hh:73
G4Scene * GetCurrentScene() const
void UpdateVisManagerScene(const G4String &sceneName="")
static G4Text::Layout fCurrentTextLayout
HepGeom::Point3D< G4double > G4Point3D
Definition: G4Point3D.hh:35
static void G4VisCommandsSceneAddUnsuccessful(G4VisManager::Verbosity verbosity)
Double_t y
G4GLOB_DLL std::ostream G4cout
bool G4bool
Definition: G4Types.hh:79
G4double StoD(G4String s)
static G4double ValueOf(const char *unitName)
Definition: G4UIcommand.cc:308
static G4Colour fCurrentTextColour
static Verbosity GetVerbosity()
#define G4endl
Definition: G4ios.hh:61
double G4double
Definition: G4Types.hh:76
G4GLOB_DLL std::ostream G4cerr
static G4VisManager * fpVisManager
Here is the call graph for this function:

Member Data Documentation

◆ fpCommand

G4UIcommand* G4VisCommandSceneAddText::fpCommand
private

Definition at line 364 of file G4VisCommandsSceneAdd.hh.


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