Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MITKINTERPOLATELINESFILTER_H_HEADER_INCLUDED_C10B22CD
00019 #define MITKINTERPOLATELINESFILTER_H_HEADER_INCLUDED_C10B22CD
00020
00021 #include "mitkCommon.h"
00022 #include "MitkExtExports.h"
00023 #include "mitkSurfaceSource.h"
00024 #include "mitkMesh.h"
00025 #include "mitkGeometry2D.h"
00026
00027 class vtkPolyData;
00028 class vtkPoints;
00029 class vtkCardinalSpline;
00030 class vtkPoints;
00031 class vtkCellArray;
00032
00033
00034 namespace mitk {
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 class MitkExt_EXPORT InterpolateLinesFilter : public SurfaceSource
00047 {
00048 public:
00049 mitkClassMacro(InterpolateLinesFilter, SurfaceSource);
00050 itkNewMacro(Self);
00051
00052 virtual void GenerateOutputInformation();
00053
00054 virtual void GenerateData();
00055
00056 const mitk::Mesh *GetInput(void);
00057
00058 virtual void SetInput(const mitk::Mesh *image);
00059
00060
00061
00062
00063 itkGetMacro(SplineResolution, unsigned int);
00064
00065
00066
00067 itkSetMacro(SplineResolution, unsigned int);
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077 itkGetConstObjectMacro(GeometryForInterpolation, mitk::Geometry2D);
00078 itkSetObjectMacro(GeometryForInterpolation, mitk::Geometry2D);
00079
00080
00081
00082
00083
00084 itkGetMacro(Length, ScalarType);
00085 protected:
00086
00087 InterpolateLinesFilter();
00088 virtual ~InterpolateLinesFilter();
00089
00090 void BuildPointAndVectorList(mitk::Mesh::CellType& cell, vtkPoints* points, vtkCellArray* cellarray);
00091
00092
00093
00094
00095 unsigned int m_SplineResolution;
00096
00097 mitk::Geometry2D::Pointer m_GeometryForInterpolation;
00098 vtkCardinalSpline *m_SpX, *m_SpY, *m_SpZ;
00099
00100 ScalarType m_Length;
00101 };
00102
00103 }
00104
00105 #endif