Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkFiberBundleMapper3D.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 
18 #ifndef FiberBundleMapper3D_H_HEADER_INCLUDED
19 #define FiberBundleMapper3D_H_HEADER_INCLUDED
20 
21 //#include <mitkBaseData.h> //?? necessary
22 #include <mitkVtkMapper.h>
23 #include <mitkFiberBundle.h>
24 
25 #include <vtkSmartPointer.h>
26 
27 class vtkPropAssembly;
28 class vtkPolyDataMapper;
29 class vtkLookupTable;
30 class vtkOpenGLActor;
31 
32 namespace mitk {
33 
34 //##Documentation
35 //## @brief Mapper for FiberBundle
36 //## @ingroup Mapper
37 
39 {
40 public:
41 
43  itkFactorylessNewMacro(Self)
44  itkCloneMacro(Self)
45 
46  //========== essential implementation for 3D mapper ========
47  const FiberBundle* GetInput();
48  virtual vtkProp *GetVtkProp(mitk::BaseRenderer *renderer) override; //looks like depricated.. should be replaced bz GetViewProp()
49  static void SetDefaultProperties(DataNode* node, BaseRenderer* renderer = NULL, bool overwrite = false );
50  static void SetVtkMapperImmediateModeRendering(vtkMapper *mapper);
51  virtual void GenerateDataForRenderer(mitk::BaseRenderer* renderer) override;
52  //=========================================================
53 
55  {
56  public:
58  vtkSmartPointer<vtkActor> m_FiberActor;
60  vtkSmartPointer<vtkPolyDataMapper> m_FiberMapper;
61 
62  vtkSmartPointer<vtkPropAssembly> m_FiberAssembly;
63 
65  itk::TimeStamp m_LastUpdateTime;
67  FBXLocalStorage3D(); //if u copy&paste from this 2Dmapper, be aware that the implementation of this constructor is in the cpp file
68 
70  {
71  }
72  };
73 
76 
77 
78 protected:
79 
81  virtual ~FiberBundleMapper3D();
83 
84  void UpdateVtkObjects(); //??
85 
86 private:
87  vtkSmartPointer<vtkLookupTable> m_lut;
88  float m_TubeRadius;
89  int m_TubeSides;
90  int m_LineWidth;
91  float m_RibbonWidth;
92  bool m_Lighting;
93 };
94 
95 } // end namespace mitk
96 
97 
98 
99 
100 #endif /* FiberBundleMapper3D_H_HEADER_INCLUDED */
101 
vtkSmartPointer< vtkPropAssembly > m_FiberAssembly
Base class for mapper specific rendering ressources.
Definition: mitkMapper.h:200
itk::TimeStamp m_LastUpdateTime
Timestamp of last update of stored data.
static void SetDefaultProperties(DataNode *node, BaseRenderer *renderer=NULL, bool overwrite=false)
virtual vtkProp * GetVtkProp(mitk::BaseRenderer *renderer) override
Templated class for management of LocalStorage implementations in Mappers.
Organizes the rendering process.
vtkSmartPointer< vtkActor > m_FiberActor
Point Actor of a 3D render window.
DataCollection - Class to facilitate loading/accessing structured data.
Base class of all Vtk Mappers in order to display primitives by exploiting Vtk functionality.
Definition: mitkVtkMapper.h:53
virtual void GenerateDataForRenderer(mitk::BaseRenderer *renderer) override
Generate the data needed for rendering into renderer.
Base class of all mappers, Vtk as well as OpenGL mappers.
Definition: mitkMapper.h:54
vtkSmartPointer< vtkPolyDataMapper > m_FiberMapper
Point Mapper of a 3D render window.
static void SetVtkMapperImmediateModeRendering(vtkMapper *mapper)
void InternalGenerateData(mitk::BaseRenderer *renderer)
Base Class for Fiber Bundles;.
mitkClassMacro(FiberBundleMapper3D, VtkMapper) static Pointer New()
FBXLocalStorage3D()
Constructor of the local storage. Do as much actions as possible in here to avoid double executions...
Mapper for FiberBundle.
mitk::LocalStorageHandler< FBXLocalStorage3D > m_LocalStorageHandler
This member holds all three LocalStorages for the 3D render window(s).
Class for nodes of the DataTree.
Definition: mitkDataNode.h:66