G4VisCommandDrawView Class Reference

#include <G4VisCommandsCompound.hh>

Inheritance diagram for G4VisCommandDrawView:

G4VVisCommand G4UImessenger

Public Member Functions

 G4VisCommandDrawView ()
virtual ~G4VisCommandDrawView ()
void SetNewValue (G4UIcommand *command, G4String newValue)

Detailed Description

Definition at line 47 of file G4VisCommandsCompound.hh.


Constructor & Destructor Documentation

G4VisCommandDrawView::G4VisCommandDrawView (  ) 

Definition at line 97 of file G4VisCommandsCompound.cc.

References G4UIcommand::SetGuidance().

00097                                            {
00098   G4bool omitable;
00099   fpCommand = new G4UIcommand("/vis/drawView", this);
00100   fpCommand->SetGuidance
00101     ("Draw view from this angle, etc.");
00102   G4UIparameter* parameter;
00103   parameter = new G4UIparameter("theta-degrees", 'd', omitable = true);
00104   parameter -> SetDefaultValue(0.);
00105   fpCommand -> SetParameter (parameter);
00106   parameter = new G4UIparameter("phi-degrees", 'd', omitable = true);
00107   parameter -> SetDefaultValue(0.);
00108   fpCommand -> SetParameter (parameter);
00109   parameter = new G4UIparameter("pan-right", 'd', omitable = true);
00110   parameter -> SetDefaultValue(0.);
00111   fpCommand -> SetParameter (parameter);
00112   parameter = new G4UIparameter("pan-up", 'd', omitable = true);
00113   parameter -> SetDefaultValue(0.);
00114   fpCommand -> SetParameter (parameter);
00115   parameter = new G4UIparameter("pan-unit", 's', omitable = true);
00116   parameter -> SetDefaultValue("cm");
00117   fpCommand -> SetParameter (parameter);
00118   parameter = new G4UIparameter("zoom-factor", 'd', omitable = true);
00119   parameter -> SetDefaultValue(1.);
00120   fpCommand -> SetParameter (parameter);
00121   parameter = new G4UIparameter("dolly", 'd', omitable = true);
00122   parameter -> SetDefaultValue(0.);
00123   fpCommand -> SetParameter (parameter);
00124   parameter = new G4UIparameter("dolly-unit", 's', omitable = true);
00125   parameter -> SetDefaultValue("cm");
00126   fpCommand -> SetParameter (parameter);
00127 }

G4VisCommandDrawView::~G4VisCommandDrawView (  )  [virtual]

Definition at line 129 of file G4VisCommandsCompound.cc.

00129                                             {
00130   delete fpCommand;
00131 }


Member Function Documentation

void G4VisCommandDrawView::SetNewValue ( G4UIcommand command,
G4String  newValue 
) [virtual]

Reimplemented from G4UImessenger.

Definition at line 133 of file G4VisCommandsCompound.cc.

References G4UImanager::ApplyCommand(), G4VisManager::confirmations, G4VVisCommand::fpVisManager, G4cout, G4endl, G4VisManager::GetCurrentViewer(), G4UImanager::GetUIpointer(), G4UImanager::GetVerboseLevel(), G4VisManager::GetVerbosity(), G4VViewer::GetViewParameters(), G4ViewParameters::IsAutoRefresh(), G4ViewParameters::SetAutoRefresh(), G4UImanager::SetVerboseLevel(), G4VViewer::SetViewParameters(), and G4VisManager::warnings.

00133                                                                       {
00134 
00135   G4VisManager::Verbosity verbosity = fpVisManager->GetVerbosity();
00136 
00137   G4VViewer* currentViewer = fpVisManager->GetCurrentViewer();
00138   if (!currentViewer) {
00139     if (verbosity >= G4VisManager::warnings) {
00140       G4cout <<
00141         "WARNING: G4VisCommandsDrawView::SetNewValue: no current viewer."
00142              << G4endl;
00143     }
00144     return;
00145   }
00146 
00147   G4String thetaDeg;
00148   G4String phiDeg;
00149   G4String panRight;
00150   G4String panUp;
00151   G4String panUnit;
00152   G4String zoomFactor;
00153   G4String dolly;
00154   G4String dollyUnit;
00155   std::istringstream is(newValue);
00156   is >> thetaDeg >> phiDeg >> panRight >> panUp >> panUnit
00157      >> zoomFactor >> dolly >> dollyUnit;
00158   
00159   G4UImanager* UImanager = G4UImanager::GetUIpointer();
00160   G4int keepVerbose = UImanager->GetVerboseLevel();
00161   G4int newVerbose(0);
00162   if (keepVerbose >= 2 ||
00163       fpVisManager->GetVerbosity() >= G4VisManager::confirmations)
00164     newVerbose = 2;
00165   UImanager->SetVerboseLevel(newVerbose);
00166   G4ViewParameters vp = currentViewer->GetViewParameters();
00167   G4bool keepAutoRefresh = vp.IsAutoRefresh();
00168   vp.SetAutoRefresh(false);
00169   currentViewer->SetViewParameters(vp);
00170   UImanager->ApplyCommand(
00171     G4String("/vis/viewer/set/viewpointThetaPhi " + thetaDeg + " " + phiDeg + " deg"));
00172   UImanager->ApplyCommand(
00173     G4String("/vis/viewer/panTo " + panRight + " " + panUp + " " + panUnit));
00174   UImanager->ApplyCommand(
00175     G4String("/vis/viewer/zoomTo " + zoomFactor));
00176   vp = currentViewer->GetViewParameters();
00177   vp.SetAutoRefresh(keepAutoRefresh);
00178   currentViewer->SetViewParameters(vp);
00179   UImanager->ApplyCommand(
00180     G4String("/vis/viewer/dollyTo " + dolly + " " + dollyUnit));
00181   UImanager->SetVerboseLevel(keepVerbose);
00182 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:53:44 2013 for Geant4 by  doxygen 1.4.7