]> Creatis software - cpPlugins.git/blob - lib/cpExtensions/Visualization/LineSource.h
Cast image filter added. ROI filter modified.
[cpPlugins.git] / lib / cpExtensions / Visualization / LineSource.h
1 #ifndef __cpExtensions__Visualization__LineSource__h__
2 #define __cpExtensions__Visualization__LineSource__h__
3
4 #include <cpExtensions/Config.h>
5 #include <vtkPolyDataAlgorithm.h>
6
7 // -------------------------------------------------------------------------
8 namespace cpExtensions
9 {
10   namespace Visualization
11   {
12     /**
13      */
14     class cpExtensions_EXPORT LineSource
15       : public vtkPolyDataAlgorithm
16     {
17     public:
18       typedef LineSource Self;
19
20     public:
21       vtkTypeMacro( LineSource, vtkPolyDataAlgorithm );
22
23       vtkSetVector3Macro( Point1, double );
24       vtkSetVector3Macro( Point2, double );
25       vtkGetVectorMacro( Point1, double, 3 );
26       vtkGetVectorMacro( Point2, double, 3 );
27
28     public:
29       static Self* New( );
30
31       void SetPoint1( float pnt[ 3 ] );
32       void SetPoint2( float pnt[ 3 ] );
33
34     protected:
35       LineSource( );
36       virtual ~LineSource( );
37
38       virtual int RequestData(
39         vtkInformation* request,
40         vtkInformationVector** inputVector,
41         vtkInformationVector* outputVector
42         ) cpExtensions_OVERRIDE;
43
44       virtual int RequestInformation(
45         vtkInformation* request,
46         vtkInformationVector** inputVector,
47         vtkInformationVector* outputVector
48         ) cpExtensions_OVERRIDE;
49
50     private:
51       // Purposely not implemented
52       LineSource( const Self& );
53       Self& operator=( const Self& );
54
55     protected:
56       double Point1[ 3 ];
57       double Point2[ 3 ];
58     };
59
60   } // ecapseman
61
62 } // ecapseman
63
64 #endif // __cpExtensions__Visualization__LineSource__h__
65
66 // eof - $RCSfile$