Flow123d
myvector.h
Go to the documentation of this file.
1 #ifndef vectorH
2 #define vectorH
3 
4 class TPoint;
5 //#include "system.h"
6 
7 
8 class TVector {
9 protected:
10  static int numberInstance;
11  int id;
12 
13  double coors[ 3 ];
14  double length;
15 
16  int generateId();
17 
18  void Compute();
19  void CompLength();
20 
21 public:
22  TVector();
23  TVector(double, double, double);
25  TVector(const TVector &);
26  ~TVector();
27 
28  double Length() const;
29  void Get(double&, double&, double&) const;
30  void Get(double*) const;
31  double Get(int) const;
32  void SetVector(double, double, double);
33  bool IsZero();
34 
35  double X1() const;
36  double X2() const;
37  double X3() const;
38 
39  TVector & operator =(const TPoint&);
40  TVector operator +(const TVector&);
41  TVector operator +(const TPoint&);
42  TVector operator -(const TVector&);
43  friend TVector operator*(const TVector&, double);
44  friend TVector operator*(double, const TVector&);
45  bool operator ==(const TVector&);
46 
47  static int getNumInstances() {
49  }
50 };
51 
52 TVector Cross(const TVector&, const TVector&);
53 double Dot(const TVector&, const TVector&);
54 bool AreParallel(const TVector&, const TVector&);
55 bool ArePerpendicular(const TVector&, const TVector&);
56 
57 #endif