00001 #ifndef VTRACK_H 00002 #define VTRACK_H 00003 00004 #include "meshmorph.h" 00005 00006 class VTrack 00007 { 00008 private: 00009 Vertex * vv; 00010 vec_d topN_val; // [0]==original, [1]==new 00011 vec_d vd_val; // [0]==original, [1]==new 00012 vec_d sepdis; // [0]==original, [1]==new 00013 vec_d p_orig; 00014 vec_d p_new; 00015 vec_d cp_orig; 00016 vec_d cp_new; 00017 vec_i trouble; 00018 public: 00019 VTrack (void); 00020 VTrack (VTrack const &); 00021 VTrack& operator = (VTrack const &); 00022 bool isGood (void); 00023 void clear (void); 00024 void print (void); 00025 void printBad (void); 00026 void addNewSepDis (double); 00027 void addOrigP (vec_d const * const); 00028 //void getOrigP (double[3]); 00029 //void getNewP (double[3]); 00030 void addNewP (vec_d const * const); 00031 void addOrigCP (double[3]); 00032 //void getOrigCP (double[3]); 00033 //void getNewCP (double[3]); 00034 void addNewCP (double[3]); 00035 void addVertex (Vertex *); 00036 void addNewVD (double); 00037 void addNewTopN (double); 00038 void addOrigSepDis (double); 00039 void addOrigVD (double); 00040 void addOrigTopN (double); 00041 void premove (Vertex *); 00042 void postmove (void); 00043 double getNewSepDis (void); 00044 double getNewVD (void); 00045 double getNewTopN (void); 00046 double getOrigSepDis (void); 00047 double getOrigVD (void); 00048 double getOrigTopN (void); 00049 Vertex* getVertex (void); 00050 }; 00051 00052 #endif