--- /dev/null
+#ifndef PlaneDirectionManagerData_H_
+#define PlaneDirectionManagerData_H_
+
+#include <math.h>
+
+#include "PlanesOperations.h"
+
+
+#include <iostream>
+
+#include <vtkArrowSource.h>
+//#include <vtkConeSource.h>
+#include <vtkPolyDataMapper.h>
+#include <vtkActor.h>
+#include <vtkProperty.h>
+#include <vtkMatrix4x4.h>
+#include <vtkTransform.h>
+
+
+class PlaneDirectionManagerData : public PlanesOperations {
+
+public:
+ PlaneDirectionManagerData(int radio, double colour[3], int opacity);
+ ~PlaneDirectionManagerData();
+
+ void setPoint0(double x,double y,double z){
+ p0[0] = x;
+ p0[1] = y;
+ p0[2] = z;
+ }
+ void setPoint1(double x,double y,double z){
+ p1[0] = x;
+ p1[1] = y;
+ p1[2] = z;
+ }
+ void setPoint2(double x,double y,double z){
+ p2[0] = x;
+ p2[1] = y;
+ p2[2] = z;
+ }
+ double* getPoint0(){
+ return p0;
+ }
+ double* getPoint1(){
+ return p1;
+ }
+ double* getPoint2(){
+ return p2;
+ }
+
+ void UpdateActor();
+
+ vtkProp3D* GetActor();
+
+ double* GetDirection(){
+ return _dir;
+ }
+
+ void ChangeColour(double r,double g,double b);
+
+private:
+ double* p0;
+ double* p1;
+ double* p2;
+ int _radio;
+ double* _colour;
+ int _opacity;
+ double* _dir;
+
+ vtkArrowSource *_vtkarrow;
+ vtkPolyDataMapper *_arrowMapper;
+ vtkActor *_arrowActor;
+
+ double* GetMidPoint();
+
+};
+
+#endif /*PlaneDirectionManagerData_H_*/