VTK
|
#include <vtkPickingManager.h>
Public Types | |
typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkPickingManager * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | AddPicker (vtkAbstractPicker *picker, vtkObject *object=0) |
void | RemovePicker (vtkAbstractPicker *picker, vtkObject *object=0) |
void | RemoveObject (vtkObject *object) |
bool | Pick (vtkAbstractPicker *picker, vtkObject *object) |
bool | Pick (vtkObject *object) |
bool | Pick (vtkAbstractPicker *picker) |
int | GetNumberOfPickers () |
int | GetNumberOfObjectsLinked (vtkAbstractPicker *picker) |
virtual void | EnabledOn () |
virtual void | EnabledOff () |
virtual void | SetEnabled (bool) |
virtual bool | GetEnabled () |
void | SetOptimizeOnInteractorEvents (bool optimize) |
virtual bool | GetOptimizeOnInteractorEvents () |
void | SetInteractor (vtkRenderWindowInteractor *iren) |
virtual vtkRenderWindowInteractor * | GetInteractor () |
vtkAssemblyPath * | GetAssemblyPath (double X, double Y, double Z, vtkAbstractPropPicker *picker, vtkRenderer *renderer, vtkObject *obj) |
Public Member Functions inherited from vtkObject | |
vtkObject * | NewInstance () const |
virtual void | DebugOn () |
virtual void | DebugOff () |
bool | GetDebug () |
void | SetDebug (bool debugFlag) |
virtual void | Modified () |
virtual unsigned long | GetMTime () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Public Member Functions | |
static vtkPickingManager * | New () |
static int | IsTypeOf (const char *type) |
static vtkPickingManager * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static int | IsTypeOf (const char *type) |
static vtkObject * | SafeDownCast (vtkObjectBase *o) |
static vtkObject * | New () |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
static int | IsTypeOf (const char *name) |
static vtkObjectBase * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkPickingManager () | |
~vtkPickingManager () | |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkRenderWindowInteractor * | Interactor |
bool | Enabled |
bool | OptimizeOnInteractorEvents |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Class defines API to manage the picking process.
The Picking Manager (PM) coordinates picking across widgets simultaneously. It maintains a collection of registered pickers; when the manager is picked (e.g. vtkPickingManager::Pick()), a pick is run on each picker but only the best picker (e.g. closest to camera point) is selected. It finally returns the widget/representation or picker that was selected.
Definition at line 84 of file vtkPickingManager.h.
Definition at line 88 of file vtkPickingManager.h.
|
protected |
|
protected |
|
static |
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
|
static |
|
protectedvirtual |
Reimplemented from vtkObject.
vtkPickingManager* vtkPickingManager::NewInstance | ( | ) | const |
|
virtual |
|
virtual |
Enable/Disable management. When disabled, it redirects every pick on the picker. By default the picking manager is disabled when initialized.
|
virtual |
Enable/Disable management. When disabled, it redirects every pick on the picker. By default the picking manager is disabled when initialized.
|
virtual |
Enable/Disable management. When disabled, it redirects every pick on the picker. By default the picking manager is disabled when initialized.
|
virtual |
Enable/Disable management. When disabled, it redirects every pick on the picker. By default the picking manager is disabled when initialized.
void vtkPickingManager::SetOptimizeOnInteractorEvents | ( | bool | optimize | ) |
Enable/Disable optimization depending on the renderWindowInteractor events. The mechanism keeps in cache the last selected picker as well as the last render time to recompute the selection only if a new render event occurred after the last selection; otherwise, it simply returns the last picker selected. By default pickingManagers does use the optimization. Warning: Turning off the caching significantly decreases performance.
|
virtual |
Enable/Disable optimization depending on the renderWindowInteractor events. The mechanism keeps in cache the last selected picker as well as the last render time to recompute the selection only if a new render event occurred after the last selection; otherwise, it simply returns the last picker selected. By default pickingManagers does use the optimization. Warning: Turning off the caching significantly decreases performance.
void vtkPickingManager::SetInteractor | ( | vtkRenderWindowInteractor * | iren | ) |
Set the window interactor associated with the manager.
|
virtual |
Set the window interactor associated with the manager.
void vtkPickingManager::AddPicker | ( | vtkAbstractPicker * | picker, |
vtkObject * | object = 0 |
||
) |
Register a picker into the picking manager. It can be internally associated (optional) with an object. This allows the removal of all the pickers of the given object. Note that a picker can be registered multiple times with different objects.
void vtkPickingManager::RemovePicker | ( | vtkAbstractPicker * | picker, |
vtkObject * | object = 0 |
||
) |
Unregister the picker from the picking manager. If object is non null, only the pair (picker, object) is removed.
void vtkPickingManager::RemoveObject | ( | vtkObject * | object | ) |
Remove all occurences of the object from the registered list. If a picker associated with the object is not also associated with any other object, it is removed from the list as well.
bool vtkPickingManager::Pick | ( | vtkAbstractPicker * | picker, |
vtkObject * | object | ||
) |
Run the picking selection process and return true if the object is associated with the given picker if it is the best one, false otherwise. If OptimizeOnInteractorEvents is true, the pick can reuse cached information.
bool vtkPickingManager::Pick | ( | vtkObject * | object | ) |
Run the picking selection process and return true if the object is associated with the best picker. This is an overloaded function.
bool vtkPickingManager::Pick | ( | vtkAbstractPicker * | picker | ) |
Run the picking selection process and return if picker is the one selected. This is an overloaded function.
vtkAssemblyPath* vtkPickingManager::GetAssemblyPath | ( | double | X, |
double | Y, | ||
double | Z, | ||
vtkAbstractPropPicker * | picker, | ||
vtkRenderer * | renderer, | ||
vtkObject * | obj | ||
) |
If the picking manager is enabled, it runs the picking selection process and return the assembly path associated to the picker passed as argument if it is the one mediated. Otherwise it simply proceeds to a pick using the given renderer and returns the corresponding assembly path.
int vtkPickingManager::GetNumberOfPickers | ( | ) |
Return the number of pickers registered. If the same picker is added multiple times with different objects, it is counted once.
int vtkPickingManager::GetNumberOfObjectsLinked | ( | vtkAbstractPicker * | picker | ) |
Return the number of objects linked with a given picker. Note: a null object is counted as an associated object.
|
protected |
Definition at line 173 of file vtkPickingManager.h.
|
protected |
Definition at line 174 of file vtkPickingManager.h.
|
protected |
Definition at line 175 of file vtkPickingManager.h.