21 #pragma warning ( disable : 4018 )
24 #pragma warning( disable : 4284 )
28 class vtkRenderWindow;
31 class vtkInteractorStyle;
33 class vtkWorldPointPicker;
37 #include "itkCommand.h"
104 void Print( std::ostream& os, ::itk::Indent indent=0)
const;
135 double red,
double green,
double blue );
145 virtual ~View(
void );
148 virtual void PrintSelf( std::ostream& os, itk::Indent indent )
const;
165 vtkRenderer * GetRenderer()
const;
168 vtkRenderWindow * GetRenderWindow()
const;
174 void InitializeRenderWindowInteractorProcessing();
178 void AddActorProcessing();
179 void RemoveActorProcessing();
182 void AddAnnotation2DProcessing();
185 void AddObjectProcessing();
186 void RemoveObjectProcessing();
189 void RefreshRender();
192 void RequestAddActor( vtkProp * actor );
195 void RequestRemoveActor( vtkProp * actor );
198 void ReportInvalidRequestProcessing();
201 void SaveScreenShotWhileIdleProcessing();
205 void SaveScreenShotWhileInteractorInitializedProcessing();
209 void SaveScreenShotWhileRefreshingProcessing();
215 void SaveScreenShot();
218 void ReportInvalidScreenShotFileNameProcessing();
221 void SetRenderWindowSizeProcessing();
224 void ReportInvalidRenderWindowSizeProcessing();
227 void StartProcessing();
228 void StopProcessing();
231 void ResetCameraProcessing();
235 vtkRenderWindow * m_RenderWindow;
236 vtkRenderer * m_Renderer;
237 vtkCamera * m_Camera;
238 vtkWorldPointPicker * m_PointPicker;
246 vtkProp * m_ActorToBeAdded;
247 vtkProp * m_ActorToBeRemoved;
251 typedef itk::SimpleMemberCommand< Self > ObserverType;
254 ObserverType::Pointer m_PulseObserver;
258 typedef std::list< ObjectPointer > ObjectListType;
259 typedef ObjectListType::const_iterator ObjectListConstIterator;
262 ObjectListType m_Objects;
267 ObjectListType::iterator m_IteratorToObjectToBeRemoved;
268 std::string m_ScreenShotFileName;
269 int m_RenderWindowWidthToBeSet;
270 int m_RenderWindowHeightToBeSet;
void RequestSaveScreenShot(const std::string &filename)
Request to save a screen shot into a file.
void RequestStart()
Request Start the periodic refreshing of the view.
void RequestSetRenderWindowSize(int width, int height)
Set the size of the render window.
void SetRefreshRate(double frequency)
Set the desired frequency for refreshing the view.
igstkStandardClassTraitsMacro(View, Object)
Macro with standard traits declarations.
void RequestAddObject(ObjectRepresentation *object)
Add an object representation to the list of children and associate it with a specific view...
std::ostream & operator<<(std::ostream &os, const igstk::AffineTransform &o)
Base class for all the IGSTK classes.
void SetCameraZoomFactor(double rate)
Set camera zoom factor.
void RequestStop()
Request Stopping the periodic refreshing of the view.
void RequestInitializeRenderWindowInteractor()
Request initialize the RenderWindow interactor.
#define igstkDeclareInputMacro(inputname)
Convenience macro for declaring Inputs to the State Machine.
defines standard system-wide macros, constants, and other common parameters in the IGSTK Library...
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const
Print the object information in a stream.
void SetRendererBackgroundColor(double red, double green, double blue)
Set renderer background color.
void RequestResetCamera()
Request to return the camera to a known position.
Display graphical representations of surgical scenes.
void SetCameraViewUp(double vx, double vy, double vz)
Set Camera View Up vector.
::itk::SmartPointer< Self > Pointer
void SetCameraClippingRange(double dNear, double dFar)
Set Clipping range.
void SetPickedPointCoordinates(double xPosition, double yPosition)
Sets the coordinates of the point picked.
#define igstkDeclareStateMacro(inputname)
Convenience macro for declaring States of the State Machine.
void RequestAddAnnotation2D(Annotation2D::Pointer annotation)
Add annotation to the view.
void SetInteractorStyle(vtkInteractorStyle *style)
Set the interactor style in the derived classes.
#define igstkLoggerMacro()
Macro that defines all the standard elements related to the Logger.
void SetCameraFocalPoint(double x, double y, double z)
Set camera focal point.
A base class for widget type templated proxy classes.
An abstract base class for all the igstk representation objects.
void SetCameraPosition(double x, double y, double z)
Set Camera position.
void Print(std::ostream &os,::itk::Indent indent=0) const
Print the object information in a stream.
#define igstkCoordinateSystemClassInterfaceMacro()
igstkCoordinateSystemClassInterfaceMacro defines the coordinate system API used for managing spatial ...
void SetCameraParallelProjection(bool flag)
Turn on/off parallel projection.
void RequestRemoveObject(ObjectRepresentation *object)
Remove the object passed as arguments from the list of children, only if it is associated to a partic...