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