Page MenuHomePhabricator

ChangeRequest.txt

Authored By
seitelm
Sep 8 2009, 9:08 AM
Size
1 KB
Referenced Files
None
Subscribers
None

ChangeRequest.txt

SUMMARY OF BUG DESCRIPTION
MITK currently only supports point picking. For more sophisticated 3D
interactions, picking of objects (as represented by VTK) is required.
A basic interface should be implemented which allows for picking of vtkProp
objects and retrieval of the associated mitk::DataTreeNode / mitk::BaseData
objects.
CAUSE OF THE BUG
Feature request.
PROPOSED SOLUTION
To enable picking of vtkProp objects, mitk::BaseRenderer, mitk::VtkPropRenderer and mitk::DisplayPositionEvent, which already provide a basic interface for point picking, need to be changed. Furthermore, the mitk::Mapper hierarchy should be extended with a method HasVtkProp() which returns true for Mapper instances which own the specified vtkProp object. Consequently, by transversing all active (3D) mappers, the mitk::DataTreeNode corresponding to the given vtkProp can be identified.
A further requirement resulting from the possibility of 3D object picking and implementation of interaction mechanisms in 3D is the need to change the precedence of use input event handling: Currently, events are first handled by VTK (e.g. camera control, widgets) and afterwards by MITK. To enable MITK interactors to take precedence over VTK interaction mechanisms, this order should be changed so that VTK handles events (in 3D windows) only after MITK has processed the same event.
AFFECTED CLASSES
* mitk::BaserEnderer
* mitk::VtkPropRenderer
* mitk::DisplayPositionEvent
* mitk::Mapper
* mitk::SurfaceVtkMapper3D (as an example implementation for vtkProp retrieval; should later on be implemented for other mappers as well if the need arises)
* QmitkRenderWindow (change precedence of event handling)
HOW WILL THE BUGFIX GET TESTED?
Testing of the new behavior should be added to mitkVtkPropRendererTest.

File Metadata

Mime Type
text/plain
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
298
Default Alt Text
ChangeRequest.txt (1 KB)