OSDN Git Service

fix cmake/Macros.cmake
[moflib/moflib.git] / moflib-1.0 / moflib / moflib / mof / Vector2D.hpp
1 #ifndef VECTOR2D_HPP
2 #define VECTOR2D_HPP
3 #include <mof/real.hpp>
4 #include <iostream>
5
6 namespace mof{
7
8         struct Vector2D
9         {
10                 real x , y;
11         
12                 Vector2D(real x_ , real y_);
13                 Vector2D(int x_ , int y_);
14                 Vector2D();
15                 ~Vector2D(void);
16         
17                 mof::Vector2D operator +(const mof::Vector2D& rhs) const;
18                 mof::Vector2D operator -(const mof::Vector2D& rhs) const;
19                 mof::Vector2D operator *(float rhs) const;
20                 mof::Vector2D operator /(float rhs) const;
21
22                 bool operator ==(const mof::Vector2D& obj) const;
23                 bool operator !=(const mof::Vector2D& obj) const;
24         mof::Vector2D operator -( ) const;
25
26                 friend mof::Vector2D operator *(const mof::Vector2D& vec , real f);
27                 friend mof::Vector2D operator *(real f ,  const mof::Vector2D & vec);
28             friend std::ostream& operator <<(std::ostream& os , const Vector2D& obj );
29
30         };
31
32 }
33
34 #endif