#include <G4VisCommandsViewer.hh>
Inheritance diagram for G4VisCommandViewerCopyViewFrom:
Public Member Functions | |
G4VisCommandViewerCopyViewFrom () | |
virtual | ~G4VisCommandViewerCopyViewFrom () |
G4String | GetCurrentValue (G4UIcommand *command) |
void | SetNewValue (G4UIcommand *command, G4String newValue) |
Definition at line 131 of file G4VisCommandsViewer.hh.
G4VisCommandViewerCopyViewFrom::G4VisCommandViewerCopyViewFrom | ( | ) |
Definition at line 511 of file G4VisCommandsViewer.cc.
00511 { 00512 G4bool omitable; 00513 fpCommand = new G4UIcmdWithAString ("/vis/viewer/copyViewFrom", this); 00514 fpCommand -> SetGuidance 00515 ("Copy the camera-specific parameters from the specified viewer."); 00516 fpCommand -> SetGuidance 00517 ("Note: To copy scene modifications - style, etc. - please use" 00518 "\n\"/vis/viewer/set/all\""); 00519 fpCommand -> SetParameterName ("from-viewer-name", omitable = false); 00520 }
G4VisCommandViewerCopyViewFrom::~G4VisCommandViewerCopyViewFrom | ( | ) | [virtual] |
G4String G4VisCommandViewerCopyViewFrom::GetCurrentValue | ( | G4UIcommand * | command | ) | [virtual] |
void G4VisCommandViewerCopyViewFrom::SetNewValue | ( | G4UIcommand * | command, | |
G4String | newValue | |||
) | [virtual] |
Reimplemented from G4UImessenger.
Definition at line 530 of file G4VisCommandsViewer.cc.
References G4VisManager::confirmations, G4VisManager::errors, G4VVisCommand::fpVisManager, G4cout, G4endl, G4ViewParameters::GetCurrentTargetPoint(), G4VisManager::GetCurrentViewer(), G4ViewParameters::GetDolly(), G4ViewParameters::GetFieldHalfAngle(), G4ViewParameters::GetLightpointDirection(), G4ViewParameters::GetLightsMoveWithCamera(), G4VViewer::GetName(), G4ViewParameters::GetScaleFactor(), G4ViewParameters::GetUpVector(), G4VisManager::GetVerbosity(), G4VViewer::GetViewParameters(), G4ViewParameters::GetViewpointDirection(), G4ViewParameters::GetZoomFactor(), G4ViewParameters::SetCurrentTargetPoint(), G4ViewParameters::SetDolly(), G4ViewParameters::SetFieldHalfAngle(), G4ViewParameters::SetLightpointDirection(), G4ViewParameters::SetLightsMoveWithCamera(), G4ViewParameters::SetScaleFactor(), G4ViewParameters::SetUpVector(), G4VVisCommandViewer::SetViewParameters(), G4ViewParameters::SetViewpointDirection(), G4ViewParameters::SetZoomFactor(), and G4VisManager::warnings.
00530 { 00531 00532 G4VisManager::Verbosity verbosity = fpVisManager->GetVerbosity(); 00533 00534 G4VViewer* currentViewer = fpVisManager->GetCurrentViewer(); 00535 if (!currentViewer) { 00536 if (verbosity >= G4VisManager::errors) { 00537 G4cout << 00538 "ERROR: G4VisCommandsViewerCopyViewFrom::SetNewValue: no current viewer." 00539 << G4endl; 00540 } 00541 return; 00542 } 00543 00544 const G4String& fromViewerName = newValue; 00545 G4VViewer* fromViewer = fpVisManager -> GetViewer (fromViewerName); 00546 if (!fromViewer) { 00547 if (verbosity >= G4VisManager::errors) { 00548 G4cout << "ERROR: Viewer \"" << fromViewerName 00549 << "\" not found - \"/vis/viewer/list\" to see possibilities." 00550 << G4endl; 00551 } 00552 return; 00553 } 00554 00555 if (fromViewer == currentViewer) { 00556 if (verbosity >= G4VisManager::warnings) { 00557 G4cout << 00558 "WARNING: G4VisCommandsViewerSet::SetNewValue:" 00559 "\n from-viewer and current viewer are identical." 00560 << G4endl; 00561 } 00562 return; 00563 } 00564 00565 // Copy camera-specific view parameters 00566 G4ViewParameters vp = currentViewer->GetViewParameters(); 00567 const G4ViewParameters& fromVP = fromViewer->GetViewParameters(); 00568 vp.SetViewpointDirection (fromVP.GetViewpointDirection()); 00569 vp.SetLightpointDirection (fromVP.GetLightpointDirection()); 00570 vp.SetLightsMoveWithCamera(fromVP.GetLightsMoveWithCamera()); 00571 vp.SetUpVector (fromVP.GetUpVector()); 00572 vp.SetFieldHalfAngle (fromVP.GetFieldHalfAngle()); 00573 vp.SetZoomFactor (fromVP.GetZoomFactor()); 00574 vp.SetScaleFactor (fromVP.GetScaleFactor()); 00575 vp.SetCurrentTargetPoint (fromVP.GetCurrentTargetPoint()); 00576 vp.SetDolly (fromVP.GetDolly()); 00577 SetViewParameters(currentViewer, vp); 00578 00579 if (verbosity >= G4VisManager::confirmations) { 00580 G4cout << "Camera parameters of viewer \"" << currentViewer->GetName() 00581 << "\"\n set to those of viewer \"" << fromViewer->GetName() 00582 << "\"." 00583 << G4endl; 00584 } 00585 }