ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/SHAPES/SHAPE.hpp
Revision: 1300
Committed: Thu Jun 24 19:06:47 2004 UTC (20 years ago) by gezelter
File size: 1345 byte(s)
Log Message:
Fixes for visualizer for amira

File Contents

# User Rev Content
1 gezelter 1290 #ifndef __SHAPE_HPP__
2     #define __SHAPE_HPP__
3    
4     #include <fstream>
5     #include <vector>
6     #include "SHFunc.hpp"
7    
8     using namespace std;
9    
10     class SHAPE {
11    
12     public:
13    
14     SHAPE(void);
15     ~SHAPE(void);
16     void readSHAPEfile(const char*);
17    
18     char *getType() {return shapeType;}
19 gezelter 1300 void setType(char * name) {shapeType = strdup(name);}
20 gezelter 1290
21     vector<SHFunc*> getSigmaFuncs(void) {return sigmaFuncs;}
22     vector<SHFunc*> getSFuncs(void) {return sFuncs;}
23     vector<SHFunc*> getEpsFuncs(void) {return epsFuncs;}
24 gezelter 1299
25     double getSigmaAt(double costheta, double phi);
26     double getSAt(double costheta, double phi);
27     double getEpsAt(double costheta, double phi);
28    
29 gezelter 1290 double getMass(void) {return mass;}
30     void getI(double theI[3][3]);
31    
32     private:
33    
34     void findBegin( char* startText );
35     int count_tokens(char *line, char *delimiters); // doesn't belong here!
36 gezelter 1300 char *TrimSpaces(char *str); // doesn't belong here!
37     int isEndLine(char *line); // doesn't belong here!
38 gezelter 1290
39 gezelter 1300
40 gezelter 1290 FILE *shapeFile;
41    
42     char *shapeType; // The name of the shape
43     double mass; // The mass
44     double I[3][3]; // The moment of inertia tensor
45     vector<SHFunc*> sigmaFuncs; // The contact functions
46     vector<SHFunc*> sFuncs; // The range functions
47     vector<SHFunc*> epsFuncs; // The strength functions
48    
49     };
50    
51     #endif
52