-
Notifications
You must be signed in to change notification settings - Fork 2
/
DeloneTetrahedron.h
executable file
·53 lines (39 loc) · 1.51 KB
/
DeloneTetrahedron.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#ifndef DeloneTETRAHEDRON_H
#define DeloneTETRAHEDRON_H
#include "vector_3d.h"
#include <vector>
class LRL_Cell;
class D6;
class G6;
class D7;
#include <ostream>
#include <string>
class DeloneTetrahedron {
public:
friend std::ostream& operator<< (std::ostream&, const DeloneTetrahedron&);
friend DeloneTetrahedron operator* (const double d, const DeloneTetrahedron& dt);
DeloneTetrahedron(void);
DeloneTetrahedron(const DeloneTetrahedron& dt);
//DeloneTetrahedron( 4 vectors );
explicit DeloneTetrahedron(const D7& v7);
explicit DeloneTetrahedron(const LRL_Cell& c);
explicit DeloneTetrahedron(const D6& c);
explicit DeloneTetrahedron(const G6& v6);
explicit DeloneTetrahedron(const std::string& c);
~DeloneTetrahedron(void) {}
DeloneTetrahedron& operator= (const std::string& s);
bool operator== (const DeloneTetrahedron& dt);
bool operator!= (const DeloneTetrahedron& dt);
DeloneTetrahedron operator* (const double d) const;
DeloneTetrahedron operator+ (const DeloneTetrahedron& dt) const;
DeloneTetrahedron operator- (const DeloneTetrahedron& dt) const;
Vector_3 operator[] (const size_t n) const;
Vector_3& operator[] (const size_t n);
static double DistanceBetween( const DeloneTetrahedron& v1, const DeloneTetrahedron& v2 );
double norm(const DeloneTetrahedron& dt) const;
double norm(void) const;
static size_t size(void) { return 4; }
protected:
std::vector<Vector_3> m_vec;
};
#endif