5 #ifndef BALL_MATHS_VECTOR2_H
6 #define BALL_MATHS_VECTOR2_H
8 #ifndef BALL_CONCEPT_PERSISTENCEMANAGER_H
12 #ifndef BALL_COMMON_EXCEPTION_H
16 #ifndef BALL_MATHS_COMMON_H
44 TVector2<T>
operator * (
const T& scalar,
const TVector2<T>& vector);
49 std::istream&
operator >> (std::istream& s, TVector2<T>& vector);
54 std::ostream& operator << (std::ostream& s, const TVector2<T>& vector);
116 virtual void clear();
129 const char* name = 0)
const;
148 void set(
const T& value);
154 void set(
const T& vx,
const T& vy);
353 void dump(std::ostream& s = std::cout,
Size depth = 0)
const;
385 template <
typename T>
393 template <
typename T>
401 template <
typename T>
409 template <
typename T>
417 template <
typename T>
422 template <
typename T>
435 template <
typename T>
441 template <
typename T>
450 template <
typename T>
457 template <
typename T>
465 template <
typename T>
473 template <
typename T>
481 template <
typename T>
491 template <
typename T>
505 template <
typename T>
515 template <
typename T>
519 return (T)sqrt(x * x + y * y);
522 template <
typename T>
526 return (T)(x * x + y * y);
529 template <
typename T>
532 T len = (T)sqrt(x * x + y * y);
545 template <
typename T>
553 template <
typename T>
561 template <
typename T>
569 template <
typename T>
586 template <
typename T>
603 template <
typename T>
610 template <
typename T>
617 template <
typename T>
624 template <
typename T>
631 template <
typename T>
641 template <
typename T>
651 template <
typename T>
658 template <
typename T>
668 template <
typename T>
678 template <
typename T>
691 template <
typename T>
695 return (x * vector.
x + y * vector.
y);
698 template <
typename T>
705 return (T)sqrt(dx * dx + dy * dy);
708 template <
typename T>
715 return (dx * dx + dy * dy);
718 template <
typename T>
725 template <
typename T>
732 template <
typename T>
739 template <
typename T>
746 template <
typename T>
753 template <
typename T>
761 s <<
" (x = " << x <<
", y = " << y <<
")" << std::endl;
773 template <
typename T>
780 template <
typename T>
784 s >> c >> v.
x >> v.
y >>
c;
789 template <
typename T>
790 std::ostream& operator << (std::ostream& s, const TVector2<T>& v)
792 s <<
"(" << v.x <<
' ' << v.y <<
')';
799 #endif // BALL_MATHS_VECTOR2_H