moab
|
00001 #ifndef CROPTOOL_HPP 00002 #define CROPTOOL_HPP 00003 00004 class vtkImplicitFunction; 00005 class vtkExtractGeometry; 00006 class vtkTransform; 00007 class vtkImplicitBoolean; 00008 00009 class CropTool 00010 { 00011 public: 00012 CropTool(); 00013 ~CropTool(); 00014 enum FuncType {NONE = 0, PLANEX, PLANEY, PLANEZ, CYLINDER, SPHERE}; 00015 void type_activated(const int num, const int type_num); 00016 void radius_value_changed(const int num, const int new_val); 00017 void xyz_value_changed(const int num, const int xyz[3]); 00018 void rotate_value_changed(const int num, const int new_vals[2]); 00019 void toggle_changed(const int num, const bool checked); 00020 private: 00021 FuncType func_types[3]; 00022 vtkImplicitBoolean *boolFunction; 00023 vtkImplicitFunction *theFunction; 00024 vtkImplicitFunction *funcs[3]; 00025 vtkTransform *get_transform(const int num); 00026 vtkImplicitFunction *get_the_function(const bool force = true); 00027 void set_the_function(vtkImplicitFunction *this_func); 00028 }; 00029 00030 00031 #endif