gridVisualisation.h

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // $Id: gridVisualisation.h,v 1.1.4.1 2007-03-25 21:26:08 oliver Exp $
00005 //
00006 
00007 #ifndef  BALL_VIEW_PRIMITIV_GRIDSLICE_H
00008 #define  BALL_VIEW_PRIMITIV_GRIDSLICE_H
00009 
00010 #ifndef BALL_VIEW_KERNEL_GEOMETRICOBJECT_H
00011 # include <BALL/VIEW/KERNEL/geometricObject.h>
00012 #endif
00013 
00014 #ifndef BALL_DATATYPE_REGULARDATA3D_H
00015 # include <BALL/DATATYPE/regularData3D.h>
00016 #endif
00017 
00018 namespace BALL
00019 {
00020   namespace VIEW
00021   {
00025     class BALL_VIEW_EXPORT GridVisualisation
00026       : public GeometricObject
00027     {
00028       public:
00029 
00030       enum Type
00031       {
00033         PLANE,
00034 
00036         SLICES,
00037 
00039         DOTS
00040       };
00041 
00042       BALL_CREATE(GridVisualisation)
00043 
00044       
00045       GridVisualisation();
00046 
00048       GridVisualisation(const GridVisualisation& plane);
00049 
00052       virtual ~GridVisualisation(){};
00053 
00055       const GridVisualisation& operator = (const GridVisualisation& plane);
00056       
00058       const Vector3& getNormal() const { return normal_;}
00059 
00061       void setNormal(const Vector3& normal) { normal_ = normal;}
00062 
00064       const Vector3& getPoint() const { return point_;}
00065 
00067       void setPoint(const Vector3& v) { point_ = v;}
00068 
00070       void setGrid(const RegularData3D* grid) { grid_ = grid;}
00071 
00073       const RegularData3D* getGrid() const { return grid_;}
00074 
00076       Position getTexture() const { return texture_;}
00077 
00079       void setTexture(Position texture) { texture_ = texture;}
00080 
00082       void setDotSize(Size dot_size) { dot_size_ = dot_size;}
00083 
00085       Size getDotSize() const { return dot_size_;}
00086 
00087       Vector3 origin, x,y,z;
00088       float max_dim;
00089       Size slices;
00090       vector<Vector3> points;
00091       Type type;
00092       bool draw_box;
00093 
00094       protected:
00095 
00096       Vector3 normal_;
00097       Vector3 point_;
00098       Position texture_;
00099       const RegularData3D* grid_;
00100       Size dot_size_;
00101     };
00102 
00103   } // namespace VIEW
00104 } // namespace BALL
00105 
00106 #endif // BALL_VIEW_KERNEL_CLIPPING_PLANE_H