00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef TETRAHEDRON_H
00019 #define TETRAHEDRON_H
00020
00021 #include "geometry.h"
00022
00023
00028 class Tetrahedron : public Geometry {
00029
00030 private:
00031
00032 Particle::vector_t p1, p2, p3, p4;
00033
00034 public:
00035
00038 Tetrahedron(const Particle::vector_t& p1,
00039 const Particle::vector_t& p2,
00040 const Particle::vector_t& p3,
00041 const Particle::vector_t& p4);
00042
00045 virtual bool operator()(const Particle::vector_t& p) const;
00046
00049 const Particle::vector_t& get_corner1() const;
00050
00053 const Particle::vector_t& get_corner2() const;
00054
00057 const Particle::vector_t& get_corner3() const;
00058
00061 const Particle::vector_t& get_corner4() const;
00062
00065 virtual void to_xml(std::ostream& o);
00066
00067 };
00068
00069
00070 #endif // TETRAHEDRON_H