00001 #ifndef GEOMETRIC_SHAPES_H 00002 #define GEOMETRIC_SHAPES_H 00003 #include <vector> 00004 00005 00006 namespace cop 00007 { 00008 typedef struct Point_ 00009 { 00010 typedef double _x_type; 00011 double x; 00012 00013 typedef double _y_type; 00014 double y; 00015 00016 typedef double _z_type; 00017 double z; 00018 } PointShape; 00019 00020 typedef struct Shape_ 00021 { 00022 00023 unsigned char type; 00024 00025 std::vector<double> dimensions; 00026 00027 std::vector<int > triangles; 00028 00029 std::vector< PointShape > vertices; 00030 00031 enum { SPHERE = 0 }; 00032 enum { BOX = 1 }; 00033 enum { CYLINDER = 2 }; 00034 enum { MESH = 3 }; 00035 00036 } GeometricShape; 00037 } 00038 #endif // GEOMETRIC_SHAPES__H 00039