OSDN Git Service

Merge branch 'master' of git://git.sourceforge.jp/gitroot/eos/base
[eos/hostdependX86LINUX64.git] / include / eosAxisSource.hh
1 #ifndef EOS_AXIS_SOURCE_HH
2 #define EOS_AXIS_SOURCE_HH
3
4
5 class eosAxisSourceCoord {
6 public:
7   double X;
8   double Y;
9   double Z;
10   float Xcolor[3];
11   float Ycolor[3];
12   float Zcolor[3];
13 public:
14   eosAxisSourceCoord();
15   void Usage();
16 };
17
18 class eosAxisSource{
19 private:
20   vtkConeSource* arrowX;
21   vtkConeSource* arrowY;
22   vtkConeSource* arrowZ;
23   vtkCylinderSource* axisX;
24   vtkCylinderSource* axisY;
25   vtkCylinderSource* axisZ;
26   vtkSphereSource* origin;
27
28   vtkPolyDataMapper* arrowXMapper;
29   vtkPolyDataMapper* arrowYMapper;
30   vtkPolyDataMapper* arrowZMapper;
31   vtkPolyDataMapper* axisXMapper;
32   vtkPolyDataMapper* axisYMapper;
33   vtkPolyDataMapper* axisZMapper;
34   vtkPolyDataMapper* originMapper;
35  
36   vtkActor* arrowXActor;
37   vtkActor* arrowYActor;
38   vtkActor* arrowZActor;
39   vtkActor* axisXActor;
40   vtkActor* axisYActor;
41   vtkActor* axisZActor;
42   vtkActor* originActor;
43
44   vtkRenderer* renderer;
45
46   vtkAssembly *assembly;
47
48   double scale;
49   double length;
50   double originalSize;
51   double axisRatio;
52   double arrowRatio;
53   int axisFace;
54   int arrowFace;
55
56   eosAxisSourceCoord axisLength;
57   eosAxisSourceCoord axisRadius;
58   //eosAxisSourceCoord axisFace;
59   eosAxisSourceCoord axisColor;
60
61   eosAxisSourceCoord arrowLength;
62   eosAxisSourceCoord arrowRadius;
63   // eosAxisSourceCoord arrowFace;
64   eosAxisSourceCoord arrowColor;
65
66   double originRadius;
67   float  originColor[3];
68
69   eosAxisSourceCoord axisPosition;
70   eosAxisSourceCoord arrowPosition;
71
72 private:
73   void reset();
74
75 public:
76   eosAxisSource();
77   void SetScale(double s);
78   void SetLength(double l);
79   void SetRenderer(vtkRenderer* ren); 
80   void Draw(); 
81   void Draw(vtkRenderer* ren); 
82   void Usage();
83 };
84
85 #endif /* EOS_AXIS_SOURCE_HH */