36#ifndef vtkInteractorObserver_h 
   37#define vtkInteractorObserver_h 
   40#include "vtkRenderingCoreModule.h"  
   42VTK_ABI_NAMESPACE_BEGIN
 
   69  void On() { this->SetEnabled(1); }
 
   70  void Off() { this->SetEnabled(0); }
 
   96  vtkSetClampMacro(Priority, 
float, 0.0f, 1.0f);
 
   97  vtkGetMacro(Priority, 
float);
 
  105  vtkBooleanMacro(PickingManaged, 
bool);
 
  107  vtkGetMacro(PickingManaged, 
bool);
 
  130  vtkSetMacro(KeyPressActivationValue, 
char);
 
  131  vtkGetMacro(KeyPressActivationValue, 
char);
 
  174    vtkRenderer* ren, 
double x, 
double y, 
double z, 
double worldPt[4]);
 
  176    vtkRenderer* ren, 
double x, 
double y, 
double z, 
double displayPt[3]);
 
  212    vtkObject* 
object, 
unsigned long event, 
void* clientdata, 
void* calldata);
 
abstract API for pickers that can pick an instance of vtkProp
 
a list of nodes that form an assembly path
 
supports function callbacks
 
superclass for callback/observer methods
 
a simple class to control print indentation
 
an abstract superclass for classes observing events invoked by vtkRenderWindowInteractor
 
virtual void EndInteraction()
Utility routines used to start and end interaction.
 
void UnRegisterPickers()
Unregister internal pickers from the Picking Manager.
 
virtual void StartInteraction()
Utility routines used to start and end interaction.
 
vtkTypeBool KeyPressActivation
 
static void ProcessEvents(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
Handles the char widget activation event.
 
~vtkInteractorObserver() override
 
vtkCallbackCommand * EventCallbackCommand
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
vtkPickingManager * GetPickingManager()
Return the picking manager associated on the context on which the observer currently belong.
 
void ComputeWorldToDisplay(double x, double y, double z, double displayPt[3])
Helper method for subclasses.
 
vtkRenderer * CurrentRenderer
 
vtkRenderer * DefaultRenderer
 
static void ComputeDisplayToWorld(vtkRenderer *ren, double x, double y, double z, double worldPt[4])
Convenience methods for outside classes.
 
virtual void RegisterPickers()
Register internal Pickers in the Picking Manager.
 
vtkCallbackCommand * KeyPressCallbackCommand
 
void GrabFocus(vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
These methods enable an interactor observer to exclusively grab all events invoked by its associated ...
 
virtual void OnChar()
Sets up the keypress-i event.
 
virtual void SetInteractor(vtkRenderWindowInteractor *iren)
This method is used to associate the widget with the render window interactor.
 
char KeyPressActivationValue
 
void ComputeDisplayToWorld(double x, double y, double z, double worldPt[4])
Helper method for subclasses.
 
void ReleaseFocus()
These methods enable an interactor observer to exclusively grab all events invoked by its associated ...
 
virtual void SetCurrentRenderer(vtkRenderer *)
Set/Get the current renderer.
 
unsigned long CharObserverTag
 
vtkObserverMediator * ObserverMediator
 
int RequestCursorShape(int requestedShape)
 
virtual void SetDefaultRenderer(vtkRenderer *)
Set/Get the default renderer to use when activating the interactor observer.
 
virtual void SetEnabled(int)
Methods for turning the interactor observer on and off, and determining its state.
 
unsigned long DeleteObserverTag
 
static void ComputeWorldToDisplay(vtkRenderer *ren, double x, double y, double z, double displayPt[3])
Convenience methods for outside classes.
 
virtual void SetPickingManaged(bool managed)
Enable/Disable the use of a manager to process the picking.
 
vtkRenderWindowInteractor * Interactor
 
vtkAssemblyPath * GetAssemblyPath(double X, double Y, double Z, vtkAbstractPropPicker *picker)
Proceed to a pick, whether through the PickingManager if the picking is managed or directly using the...
 
abstract base class for most VTK objects
 
Class defines API to manage the picking process.
 
platform-independent render window interaction including picking and frame rate control.
 
abstract specification for renderers