]> Creatis software - clitk.git/blob - vv/vvGlyph2D.h
Initial revision
[clitk.git] / vv / vvGlyph2D.h
1 /*=========================================================================
2
3  Program:   vv
4  Module:    $RCSfile: vvGlyph2D.h,v $
5  Language:  C++
6  Date:      $Date: 2010/01/06 13:31:57 $
7  Version:   $Revision: 1.1 $
8  Author :   Pierre Seroul (pierre.seroul@gmail.com)
9
10 Copyright (C) 2008
11 Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
12 CREATIS-LRMN http://www.creatis.insa-lyon.fr
13
14 This program is free software: you can redistribute it and/or modify
15 it under the terms of the GNU General Public License as published by
16 the Free Software Foundation, version 3 of the License.
17
18 This program is distributed in the hope that it will be useful,
19 but WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21 GNU General Public License for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with this program.  If not, see <http://www.gnu.org/licenses/>.
25
26 =========================================================================*/
27
28 #ifndef __vvGlyph2D_h
29 #define __vvGlyph2D_h
30
31 #include "vtkGlyph3D.h"
32
33 class vvGlyph2D : public vtkGlyph3D
34 {
35 public:
36     vtkTypeRevisionMacro(vvGlyph2D,vtkGlyph3D);
37     void PrintSelf(ostream& os, vtkIndent indent);
38
39     // Description
40     // Construct object with scaling on, scaling mode is by scalar value,
41     // scale factor = 1.0, the range is (0,1), orient geometry is on, and
42     // orientation is by vector. Clamping and indexing are turned off. No
43     // initial sources are defined.
44     void SetOrientation(int x,int y,int z);
45     static vvGlyph2D *New();
46
47     void SetUseLog(int log) {
48         mUseLog = log;
49     }
50     int GetUseLog() {
51         return mUseLog;
52     }
53
54 protected:
55     vvGlyph2D();
56     ~vvGlyph2D() {};
57
58     virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
59
60 private:
61     vvGlyph2D(const vvGlyph2D&);  // Not implemented.
62     void operator=(const vvGlyph2D&);  // Not implemented.
63     double mOrientation[3];
64     int mUseLog;
65 };
66
67 #endif