Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4VisCommandSceneAddText Class Reference

#include <G4VisCommandsSceneAdd.hh>

Inheritance diagram for G4VisCommandSceneAddText:
G4VVisCommandScene G4VVisCommand G4UImessenger

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
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VVisCommand
static void SetVisManager (G4VisManager *)
 
- 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
 
- Static Protected Attributes inherited from G4VVisCommand
static G4VisManagerfpVisManager = 0
 
static G4Colour fCurrentColour = G4Colour::White()
 
static G4Colour fCurrentTextColour = G4Colour::Blue()
 
static G4Text::Layout fCurrentTextLayout = G4Text::left
 
static G4double fCurrentLineWidth = 1.
 
static
G4ModelingParameters::PVNameCopyNoPath 
fCurrentTouchablePath
 

Detailed Description

Definition at line 336 of file G4VisCommandsSceneAdd.hh.

Constructor & Destructor Documentation

G4VisCommandSceneAddText::G4VisCommandSceneAddText ( )

Definition at line 2018 of file G4VisCommandsSceneAdd.cc.

References G4UIparameter::SetDefaultValue(), G4UIparameter::SetGuidance(), and G4UIcommand::SetParameter().

2018  {
2019  G4bool omitable;
2020  fpCommand = new G4UIcommand ("/vis/scene/add/text", this);
2021  fpCommand -> SetGuidance ("Adds text to current scene.");
2022  fpCommand -> SetGuidance
2023  ("Use \"/vis/set/textColour\" to set colour.");
2024  fpCommand -> SetGuidance
2025  ("Use \"/vis/set/textLayout\" to set layout:");
2026  G4UIparameter* parameter;
2027  parameter = new G4UIparameter ("x", 'd', omitable = true);
2028  parameter->SetDefaultValue (0);
2029  fpCommand->SetParameter (parameter);
2030  parameter = new G4UIparameter ("y", 'd', omitable = true);
2031  parameter->SetDefaultValue (0);
2032  fpCommand->SetParameter (parameter);
2033  parameter = new G4UIparameter ("z", 'd', omitable = true);
2034  parameter->SetDefaultValue (0);
2035  fpCommand->SetParameter (parameter);
2036  parameter = new G4UIparameter ("unit", 's', omitable = true);
2037  parameter->SetDefaultValue ("m");
2038  fpCommand->SetParameter (parameter);
2039  parameter = new G4UIparameter ("font_size", 'd', omitable = true);
2040  parameter->SetDefaultValue (12);
2041  parameter->SetGuidance ("pixels");
2042  fpCommand->SetParameter (parameter);
2043  parameter = new G4UIparameter ("x_offset", 'd', omitable = true);
2044  parameter->SetDefaultValue (0);
2045  parameter->SetGuidance ("pixels");
2046  fpCommand->SetParameter (parameter);
2047  parameter = new G4UIparameter ("y_offset", 'd', omitable = true);
2048  parameter->SetDefaultValue (0);
2049  parameter->SetGuidance ("pixels");
2050  fpCommand->SetParameter (parameter);
2051  parameter = new G4UIparameter ("text", 's', omitable = true);
2052  parameter->SetGuidance ("The rest of the line is text.");
2053  parameter->SetDefaultValue ("Hello G4");
2054  fpCommand->SetParameter (parameter);
2055 }
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)
G4VisCommandSceneAddText::~G4VisCommandSceneAddText ( )
virtual

Definition at line 2057 of file G4VisCommandsSceneAdd.cc.

2057  {
2058  delete fpCommand;
2059 }

Member Function Documentation

G4String G4VisCommandSceneAddText::GetCurrentValue ( G4UIcommand command)
virtual

Reimplemented from G4UImessenger.

Definition at line 2061 of file G4VisCommandsSceneAdd.cc.

2061  {
2062  return "";
2063 }
void G4VisCommandSceneAddText::SetNewValue ( G4UIcommand command,
G4String  newValue 
)
virtual

Reimplemented from G4UImessenger.

Definition at line 2065 of file G4VisCommandsSceneAdd.cc.

References G4VisManager::confirmations, G4VisManager::errors, G4VVisCommand::fCurrentTextColour, G4VVisCommand::fCurrentTextLayout, G4VVisCommand::fpVisManager, G4cout, G4endl, G4VisManager::GetCurrentScene(), G4VisManager::GetVerbosity(), G4Text::SetLayout(), G4Text::SetOffset(), G4VMarker::SetScreenSize(), G4Visible::SetVisAttributes(), G4UImessenger::StoD(), G4VVisCommand::UpdateVisManagerScene(), G4UIcommand::ValueOf(), G4VisManager::warnings, test::x, and z.

2065  {
2066 
2068  G4bool warn = verbosity >= G4VisManager::warnings;
2069 
2070  G4Scene* pScene = fpVisManager->GetCurrentScene();
2071  if (!pScene) {
2072  if (verbosity >= G4VisManager::errors) {
2073  G4cout << "ERROR: No current scene. Please create one." << G4endl;
2074  }
2075  return;
2076  }
2077 
2078  G4Tokenizer next(newValue);
2079  G4double x = StoD(next());
2080  G4double y = StoD(next());
2081  G4double z = StoD(next());
2082  G4String unitString = next();
2083  G4double font_size = StoD(next());
2084  G4double x_offset = StoD(next());
2085  G4double y_offset = StoD(next());
2086  G4String text = next("\n");
2087 
2088  G4double unit = G4UIcommand::ValueOf(unitString);
2089  x *= unit; y *= unit; z *= unit;
2090 
2091  G4Text g4text(text, G4Point3D(x,y,z));
2093  g4text.SetVisAttributes(visAtts);
2094  g4text.SetLayout(fCurrentTextLayout);
2095  g4text.SetScreenSize(font_size);
2096  g4text.SetOffset(x_offset,y_offset);
2097  G4VModel* model = new G4TextModel(g4text);
2098  const G4String& currentSceneName = pScene -> GetName ();
2099  G4bool successful = pScene -> AddRunDurationModel (model, warn);
2100  if (successful) {
2101  if (verbosity >= G4VisManager::confirmations) {
2102  G4cout << "Text \"" << text
2103  << "\" has been added to scene \"" << currentSceneName << "\"."
2104  << G4endl;
2105  }
2106  }
2107  else G4VisCommandsSceneAddUnsuccessful(verbosity);
2108  UpdateVisManagerScene (currentSceneName);
2109 }
Definition: G4Text.hh:73
G4double z
Definition: TRTMaterials.hh:39
void UpdateVisManagerScene(const G4String &sceneName="")
static G4Text::Layout fCurrentTextLayout
HepGeom::Point3D< G4double > G4Point3D
Definition: G4Point3D.hh:35
G4GLOB_DLL std::ostream G4cout
bool G4bool
Definition: G4Types.hh:79
const XML_Char XML_Content * model
G4double StoD(G4String s)
static G4double ValueOf(const char *unitName)
Definition: G4UIcommand.cc:294
static G4Colour fCurrentTextColour
static Verbosity GetVerbosity()
#define G4endl
Definition: G4ios.hh:61
double G4double
Definition: G4Types.hh:76
G4Scene * GetCurrentScene() const
static G4VisManager * fpVisManager

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