15 #ifndef __vtkMRMLModelDisplayableManager_h 16 #define __vtkMRMLModelDisplayableManager_h 20 #include "vtkMRMLDisplayableManagerExport.h" 36 #include "vtkRenderWindow.h" 43 class vtkClipPolyData;
45 class vtkImplicitBoolean;
55 class vtkWorldPointPicker;
71 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
80 vtkProp3D *GetActorByID(
const char *
id);
84 const char *GetIDByActor(vtkProp3D *actor);
88 vtkWorldPointPicker* GetWorldPointPicker();
92 vtkPropPicker* GetPropPicker();
96 vtkCellPicker* GetCellPicker();
100 vtkPointPicker* GetPointPicker();
104 int Pick(
int x,
int y);
108 virtual int Pick3D(
double ras[3]) VTK_OVERRIDE;
112 double GetPickTolerance();
113 void SetPickTolerance(
double tolerance);
121 double* GetPickedRAS();
122 void SetPickedRAS(
double* newPickedRAS);
125 vtkIdType GetPickedCellID();
126 void SetPickedCellID(vtkIdType newCellID);
130 vtkIdType GetPickedPointID();
131 void SetPickedPointID(vtkIdType newPointID);
137 void SetClipPlaneFromMatrix(vtkMatrix4x4 *sliceMatrix,
149 static vtkLookupTable* CreateLookupTableCopy(vtkLookupTable* source);
162 virtual
void AdditionalInitializeStep() VTK_OVERRIDE;
163 virtual
int ActiveInteractionModes() VTK_OVERRIDE;
165 virtual
void UnobserveMRMLScene() VTK_OVERRIDE;
167 virtual
void OnMRMLSceneStartClose() VTK_OVERRIDE;
168 virtual
void OnMRMLSceneEndClose() VTK_OVERRIDE;
169 virtual
void UpdateFromMRMLScene() VTK_OVERRIDE;
170 virtual
void OnMRMLSceneNodeAdded(
vtkMRMLNode* node) VTK_OVERRIDE;
171 virtual
void OnMRMLSceneNodeRemoved(
vtkMRMLNode* node) VTK_OVERRIDE;
173 virtual
void OnInteractorStyleEvent(
int eventId) VTK_OVERRIDE;
174 virtual
void ProcessMRMLNodesEvents(vtkObject *caller,
unsigned long event,
void *callData) VTK_OVERRIDE;
181 virtual
void UpdateFromMRML() VTK_OVERRIDE;
183 virtual
void RemoveMRMLObservers() VTK_OVERRIDE;
187 void RemoveModelProps();
188 void RemoveModelObservers(
int clearCache);
192 void UpdateModelsFromMRML();
204 int UpdateClipSlicesFromMRML();
208 void AddHierarchyObservers();
209 void RemoveHierarchyObservers(
int clearCache);
211 void CheckModelHierarchies();
212 void UpdateModelHierarchies();
218 void RemoveDispalyedID(
std::
string &
id);
226 vtkInternal* Internal;
MRML node to represent a 3D surface model.
MRML node to represent three clipping planes.
Manage display nodes with polydata in 3D views.
static vtkMRMLAbstractThreeDViewDisplayableManager * New()
virtual int Pick3D(double vtkNotUsed(ras)[3])
MRML node to represent a hierarchyu of models.
Superclass for displayable manager classes.
Interactive manipulation of the camera.
Slicer logic class for volumes manipulation.
virtual const char * GetPickedNodeID()
Get the MRML ID of the picked node, returns empty string if no pick.
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
Abstract class that contains graphical display properties for displayable nodes.
Abstract Superclass for all specific types of MRML nodes.
MRML node for storing information about the active nodes in the scene.