\hypertarget{classVector}{\section{\-Vector \-Class \-Reference}
\label{classVector}\index{\-Vector@{\-Vector}}
}


{\ttfamily \#include $<$\-Vector.\-h$>$}

\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classVector_a6f80c73b5f18dcf3f8e36065bdc8b9e5}{\-Vector} ()
\item 
\hyperlink{classVector_af2fdb26d6dab97729edb246d5c976c4a}{\-Vector} (const float \hyperlink{classVector_aca49165049a1e21ae47afcfc078819ed}{x}, const float \hyperlink{classVector_a81be9102fca6d9beea3efef522c4c09d}{y})
\item 
\hyperlink{classVector_a2ce1c9e473df3ef1c9e9c29dd5512841}{\-Vector} (const int \hyperlink{classVector_aca49165049a1e21ae47afcfc078819ed}{x}, const int \hyperlink{classVector_a81be9102fca6d9beea3efef522c4c09d}{y})
\item 
\hyperlink{classVector_a5f04e343b7306ad11f8a82c89b486764}{\-Vector} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector_a3d3f70dc411d5aec1d8d558fb4972a45}{\-Vector} (const \hyperlink{Interface_8h_a7ae5d695cf6b7c013c5ad30d124278e0}{\-Position} \&p)
\item 
\hyperlink{classVector_adcba3ba1aa030bbde82dc6188d33a425}{\-Vector} (const \hyperlink{Interface_8h_ad2186bdc15b990e538451931b3e11c67}{\-Tile\-Position} \&p)
\item 
\hyperlink{classVector_a1ab7dfe62f25748696da49db12ab8f3e}{operator Position} ()
\item 
\hyperlink{classVector_af195cc13e2c293264b89a8cf32fd23b5}{operator Tile\-Position} ()
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_afe7093bc1a20f820e3feaa53523bedf9}{operator=} (const float scalar)
\item 
bool \hyperlink{classVector_afe95adbfc44a173a404039b717df35a5}{operator==} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
bool \hyperlink{classVector_a7b077de545e862a5785d6b1951ddf196}{operator!=} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a98369ba060b6c264b596ce30e7ad6b8d}{operator+} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_ac7b9814871af89597bd0888d7db966de}{operator-\/} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_ad0b75343abe7cc53b67d46ce7639aaaa}{operator$\ast$} (const float \&scalar) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a5f5ae6d74775a81ab470cec1de679c8b}{operator$\ast$} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a0cd8c159f345b93bfda14f9099743dc6}{operator/} (const float \&scalar) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a7db82ca6ef56c9ffbe2706698f20be88}{operator/} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a55aa4644709bc040a90dbff081bb717a}{operator+} () const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a1c38f8a4f5f6f9438e3ec8233cfaa6b0}{operator-\/} () const 
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_a0ebbef346b37f0a6c7791ac4962103c5}{operator+=} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_abe03396a323da1d3dd645de44c9692b7}{operator+=} (const float scalar)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_adec8bfb032fb32c97c18367d7c7eaa8a}{operator-\/=} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_a27da087f057851cf13d4c835eb95be9d}{operator-\/=} (const float scalar)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_ab90b7f5eeca523497e5f152e49c2b94f}{operator$\ast$=} (const float scalar)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_a33a5b52e50ad6342947720fbc2f2434f}{operator$\ast$=} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_a7d6598ab2ba4761a56cc0c2f9f741a74}{operator/=} (const float scalar)
\item 
\hyperlink{classVector}{\-Vector} \& \hyperlink{classVector_af826a7f6f4496ef9643baaa26d6123d7}{operator/=} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
float \hyperlink{classVector_a41bd7eef3dfc5832eda40ea2a59bb9f5}{length} () const 
\item 
float \hyperlink{classVector_a2fbba569647c2f0dd01fd677f2dc5086}{squared\-Length} () const 
\item 
float \hyperlink{classVector_a37d2b08f60ff29398ec8b41320cf3b22}{distance} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
float \hyperlink{classVector_a8a63ed2d73d07f21073a81a2ebf1cf19}{squared\-Distance} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
float \hyperlink{classVector_aab9ef5a4006a91eb8f236513e2963f69}{dot\-Product} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
float \hyperlink{classVector_ae4c29c6b49f74684235ff27c37e6edeb}{normalise} ()
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_af1e0831aefbdfc208af1ee1e809a8751}{mid\-Point} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
bool \hyperlink{classVector_a59b4a7df8a99e3f03413a21ef34d7d2f}{operator$<$} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
bool \hyperlink{classVector_a06c3da96de74c2734fd28ef9978e9be3}{operator$>$} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
void \hyperlink{classVector_a2edfbf851858d835be8639e58e6e4fd9}{make\-Floor} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
void \hyperlink{classVector_a8a859b4855a1d431a5594fb4710644f6}{make\-Ceil} (const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_aea96623f861d002ee80e4ba01306771c}{perpendicular} () const 
\item 
float \hyperlink{classVector_ac7c3ce4900930c9a8f31eee44347fa6e}{cross\-Product} (const \hyperlink{classVector}{\-Vector} \&v) const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a672e956d757dd7b51c6ab7e7aee73477}{random\-Deviant} (float angle) const 
\item 
bool \hyperlink{classVector_a28bda407a9febeac494b6e7039985799}{is\-Zero\-Length} () const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_af28f2d96bffcd2b7b559d3f57046f670}{normalised\-Copy} () const 
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_ac8df6ef6fbaae67069aea323e1ca38af}{reflect} (const \hyperlink{classVector}{\-Vector} \&normal) const 
\end{DoxyCompactItemize}
\subsection*{\-Public \-Attributes}
\begin{DoxyCompactItemize}
\item 
float \hyperlink{classVector_aca49165049a1e21ae47afcfc078819ed}{x}
\item 
float \hyperlink{classVector_a81be9102fca6d9beea3efef522c4c09d}{y}
\end{DoxyCompactItemize}
\subsection*{\-Friends}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_ac1a4cf2c31480097911a685fd8bf5177}{operator$\ast$} (const float scalar, const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a48e12dc75e6bff55fb53d32dfff93fc2}{operator/} (const float scalar, const \hyperlink{classVector}{\-Vector} \&v)
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_aed048d0c68897205e4eaacbebe31d93a}{operator+} (const \hyperlink{classVector}{\-Vector} \&lhs, const float rhs)
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a5b01632bc21067e09623058e9f8b08b2}{operator+} (const float lhs, const \hyperlink{classVector}{\-Vector} \&rhs)
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_a5d53e701db00e9a3e0a83e5fc69ed233}{operator-\/} (const \hyperlink{classVector}{\-Vector} \&lhs, const float rhs)
\item 
\hyperlink{classVector}{\-Vector} \hyperlink{classVector_ac19aaff2b9593271537b1e1fe94b073d}{operator-\/} (const float lhs, const \hyperlink{classVector}{\-Vector} \&rhs)
\end{DoxyCompactItemize}


\subsection{\-Detailed \-Description}


\-Definition at line 7 of file \-Vector.\-h.



\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classVector_a6f80c73b5f18dcf3f8e36065bdc8b9e5}{\index{\-Vector@{\-Vector}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!Vector@{\-Vector}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector\-::\-Vector} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a6f80c73b5f18dcf3f8e36065bdc8b9e5}


\-Definition at line 12 of file \-Vector.\-h.



\-Referenced by mid\-Point(), operator$\ast$(), operator+(), operator-\/(), operator/(), perpendicular(), random\-Deviant(), and reflect().


\begin{DoxyCode}
                : x(0), y(0)
        { }
\end{DoxyCode}


\-Here is the caller graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=314pt]{classVector_a6f80c73b5f18dcf3f8e36065bdc8b9e5_icgraph}
\end{center}
\end{figure}


\hypertarget{classVector_af2fdb26d6dab97729edb246d5c976c4a}{\index{\-Vector@{\-Vector}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!Vector@{\-Vector}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector\-::\-Vector} (
\begin{DoxyParamCaption}
\item[{const float}]{x, }
\item[{const float}]{y}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_af2fdb26d6dab97729edb246d5c976c4a}


\-Definition at line 16 of file \-Vector.\-h.


\begin{DoxyCode}
                : x(x), y(y)
        { }
\end{DoxyCode}
\hypertarget{classVector_a2ce1c9e473df3ef1c9e9c29dd5512841}{\index{\-Vector@{\-Vector}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!Vector@{\-Vector}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector\-::\-Vector} (
\begin{DoxyParamCaption}
\item[{const int}]{x, }
\item[{const int}]{y}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a2ce1c9e473df3ef1c9e9c29dd5512841}


\-Definition at line 20 of file \-Vector.\-h.


\begin{DoxyCode}
                : x(float(x)), y(float(y))
        { }
\end{DoxyCode}
\hypertarget{classVector_a5f04e343b7306ad11f8a82c89b486764}{\index{\-Vector@{\-Vector}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!Vector@{\-Vector}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector\-::\-Vector} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a5f04e343b7306ad11f8a82c89b486764}


\-Definition at line 24 of file \-Vector.\-h.


\begin{DoxyCode}
                : x(v.x), y(v.y)
        { }
\end{DoxyCode}
\hypertarget{classVector_a3d3f70dc411d5aec1d8d558fb4972a45}{\index{\-Vector@{\-Vector}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!Vector@{\-Vector}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector\-::\-Vector} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Position} \&}]{p}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a3d3f70dc411d5aec1d8d558fb4972a45}


\-Definition at line 28 of file \-Vector.\-h.


\begin{DoxyCode}
                : x( float(p.x()) ), y( float(p.y()) )
        { }
\end{DoxyCode}
\hypertarget{classVector_adcba3ba1aa030bbde82dc6188d33a425}{\index{\-Vector@{\-Vector}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!Vector@{\-Vector}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector\-::\-Vector} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Tile\-Position} \&}]{p}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_adcba3ba1aa030bbde82dc6188d33a425}


\-Definition at line 32 of file \-Vector.\-h.


\begin{DoxyCode}
                : x( float(p.x() * 32) ), y( float(p.y() * 32) )
        { }
\end{DoxyCode}


\subsection{\-Member \-Function \-Documentation}
\hypertarget{classVector_ac7c3ce4900930c9a8f31eee44347fa6e}{\index{\-Vector@{\-Vector}!cross\-Product@{cross\-Product}}
\index{cross\-Product@{cross\-Product}!Vector@{\-Vector}}
\subsubsection[{cross\-Product}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::cross\-Product} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_ac7c3ce4900930c9a8f31eee44347fa6e}


\-Definition at line 274 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return x * v.y - y * v.x;
        }
\end{DoxyCode}
\hypertarget{classVector_a37d2b08f60ff29398ec8b41320cf3b22}{\index{\-Vector@{\-Vector}!distance@{distance}}
\index{distance@{distance}!Vector@{\-Vector}}
\subsubsection[{distance}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::distance} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a37d2b08f60ff29398ec8b41320cf3b22}


\-Definition at line 208 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return (*this - v).length();
        }
\end{DoxyCode}
\hypertarget{classVector_aab9ef5a4006a91eb8f236513e2963f69}{\index{\-Vector@{\-Vector}!dot\-Product@{dot\-Product}}
\index{dot\-Product@{dot\-Product}!Vector@{\-Vector}}
\subsubsection[{dot\-Product}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::dot\-Product} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_aab9ef5a4006a91eb8f236513e2963f69}


\-Definition at line 218 of file \-Vector.\-h.



\-References x, and y.



\-Referenced by \-Terrain\-Anaysis\-Class\-::find\-Choke\-Point(), and reflect().


\begin{DoxyCode}
        {
                return x * v.x + y * v.y;
        }
\end{DoxyCode}


\-Here is the caller graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classVector_aab9ef5a4006a91eb8f236513e2963f69_icgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a28bda407a9febeac494b6e7039985799}{\index{\-Vector@{\-Vector}!is\-Zero\-Length@{is\-Zero\-Length}}
\index{is\-Zero\-Length@{is\-Zero\-Length}!Vector@{\-Vector}}
\subsubsection[{is\-Zero\-Length}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Vector\-::is\-Zero\-Length} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a28bda407a9febeac494b6e7039985799}


\-Definition at line 287 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return (x == 0 && y == 0);
        }
\end{DoxyCode}
\hypertarget{classVector_a41bd7eef3dfc5832eda40ea2a59bb9f5}{\index{\-Vector@{\-Vector}!length@{length}}
\index{length@{length}!Vector@{\-Vector}}
\subsubsection[{length}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::length} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a41bd7eef3dfc5832eda40ea2a59bb9f5}


\-Definition at line 198 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return sqrt(x * x + y * y);
        }
\end{DoxyCode}
\hypertarget{classVector_a8a859b4855a1d431a5594fb4710644f6}{\index{\-Vector@{\-Vector}!make\-Ceil@{make\-Ceil}}
\index{make\-Ceil@{make\-Ceil}!Vector@{\-Vector}}
\subsubsection[{make\-Ceil}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Vector\-::make\-Ceil} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a8a859b4855a1d431a5594fb4710644f6}


\-Definition at line 263 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                if(v.x > x) x = v.x;
                if(v.y > y) y = v.y;
        }
\end{DoxyCode}
\hypertarget{classVector_a2edfbf851858d835be8639e58e6e4fd9}{\index{\-Vector@{\-Vector}!make\-Floor@{make\-Floor}}
\index{make\-Floor@{make\-Floor}!Vector@{\-Vector}}
\subsubsection[{make\-Floor}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Vector\-::make\-Floor} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a2edfbf851858d835be8639e58e6e4fd9}


\-Definition at line 257 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                if(v.x < x) x = v.x;
                if(v.y < y) y = v.y;
        }
\end{DoxyCode}
\hypertarget{classVector_af1e0831aefbdfc208af1ee1e809a8751}{\index{\-Vector@{\-Vector}!mid\-Point@{mid\-Point}}
\index{mid\-Point@{mid\-Point}!Vector@{\-Vector}}
\subsubsection[{mid\-Point}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} {\bf \-Vector\-::mid\-Point} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_af1e0831aefbdfc208af1ee1e809a8751}


\-Definition at line 236 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector((x + v.x) * 0.5f, (y + v.y ) * 0.5f);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_af1e0831aefbdfc208af1ee1e809a8751_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_ae4c29c6b49f74684235ff27c37e6edeb}{\index{\-Vector@{\-Vector}!normalise@{normalise}}
\index{normalise@{normalise}!Vector@{\-Vector}}
\subsubsection[{normalise}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::normalise} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_ae4c29c6b49f74684235ff27c37e6edeb}


\-Definition at line 223 of file \-Vector.\-h.



\-References x, and y.



\-Referenced by \-Terrain\-Anaysis\-Class\-::find\-Choke\-Point(), normalised\-Copy(), stay\-At\-Range(), \-Psi\-Storm\-Action\-::update(), and \-Worker\-Scout\-Task\-::update().


\begin{DoxyCode}
        {
                float iLength = sqrt( x * x + y * y );

                if(iLength > 0)
                {
                        x /= iLength;
                        y /= iLength;
                }

                return iLength;
        }
\end{DoxyCode}


\-Here is the caller graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classVector_ae4c29c6b49f74684235ff27c37e6edeb_icgraph}
\end{center}
\end{figure}


\hypertarget{classVector_af28f2d96bffcd2b7b559d3f57046f670}{\index{\-Vector@{\-Vector}!normalised\-Copy@{normalised\-Copy}}
\index{normalised\-Copy@{normalised\-Copy}!Vector@{\-Vector}}
\subsubsection[{normalised\-Copy}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} {\bf \-Vector\-::normalised\-Copy} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_af28f2d96bffcd2b7b559d3f57046f670}


\-Definition at line 292 of file \-Vector.\-h.



\-References normalise().


\begin{DoxyCode}
        {
                Vector ret = *this;
                ret.normalise();
                return ret;
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=332pt]{classVector_af28f2d96bffcd2b7b559d3f57046f670_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a1ab7dfe62f25748696da49db12ab8f3e}{\index{\-Vector@{\-Vector}!operator Position@{operator Position}}
\index{operator Position@{operator Position}!Vector@{\-Vector}}
\subsubsection[{operator Position}]{\setlength{\rightskip}{0pt plus 5cm}\-Vector\-::operator {\bf \-Position} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a1ab7dfe62f25748696da49db12ab8f3e}


\-Definition at line 36 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return Position( int(x), int(y) );
        }
\end{DoxyCode}
\hypertarget{classVector_af195cc13e2c293264b89a8cf32fd23b5}{\index{\-Vector@{\-Vector}!operator Tile\-Position@{operator Tile\-Position}}
\index{operator Tile\-Position@{operator Tile\-Position}!Vector@{\-Vector}}
\subsubsection[{operator Tile\-Position}]{\setlength{\rightskip}{0pt plus 5cm}\-Vector\-::operator {\bf \-Tile\-Position} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_af195cc13e2c293264b89a8cf32fd23b5}


\-Definition at line 41 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return TilePosition( int(x / 32), int(y / 32) );
        }
\end{DoxyCode}
\hypertarget{classVector_a7b077de545e862a5785d6b1951ddf196}{\index{\-Vector@{\-Vector}!operator!=@{operator!=}}
\index{operator!=@{operator!=}!Vector@{\-Vector}}
\subsubsection[{operator!=}]{\setlength{\rightskip}{0pt plus 5cm}bool \-Vector\-::operator!= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a7b077de545e862a5785d6b1951ddf196}


\-Definition at line 59 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return !(x == v.x && y == v.y);
        }
\end{DoxyCode}
\hypertarget{classVector_ad0b75343abe7cc53b67d46ce7639aaaa}{\index{\-Vector@{\-Vector}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Vector@{\-Vector}}
\subsubsection[{operator$\ast$}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator$\ast$ (
\begin{DoxyParamCaption}
\item[{const float \&}]{scalar}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_ad0b75343abe7cc53b67d46ce7639aaaa}


\-Definition at line 74 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(x * scalar, y * scalar);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_ad0b75343abe7cc53b67d46ce7639aaaa_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a5f5ae6d74775a81ab470cec1de679c8b}{\index{\-Vector@{\-Vector}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Vector@{\-Vector}}
\subsubsection[{operator$\ast$}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator$\ast$ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a5f5ae6d74775a81ab470cec1de679c8b}


\-Definition at line 79 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(x * v.x, y * v.y);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_a5f5ae6d74775a81ab470cec1de679c8b_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_ab90b7f5eeca523497e5f152e49c2b94f}{\index{\-Vector@{\-Vector}!operator$\ast$=@{operator$\ast$=}}
\index{operator$\ast$=@{operator$\ast$=}!Vector@{\-Vector}}
\subsubsection[{operator$\ast$=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator$\ast$= (
\begin{DoxyParamCaption}
\item[{const float}]{scalar}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_ab90b7f5eeca523497e5f152e49c2b94f}


\-Definition at line 166 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x *= scalar;
                y *= scalar;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_a33a5b52e50ad6342947720fbc2f2434f}{\index{\-Vector@{\-Vector}!operator$\ast$=@{operator$\ast$=}}
\index{operator$\ast$=@{operator$\ast$=}!Vector@{\-Vector}}
\subsubsection[{operator$\ast$=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator$\ast$= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a33a5b52e50ad6342947720fbc2f2434f}


\-Definition at line 174 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x *= v.x;
                y *= v.y;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_a98369ba060b6c264b596ce30e7ad6b8d}{\index{\-Vector@{\-Vector}!operator+@{operator+}}
\index{operator+@{operator+}!Vector@{\-Vector}}
\subsubsection[{operator+}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator+ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a98369ba060b6c264b596ce30e7ad6b8d}


\-Definition at line 64 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(x + v.x, y + v.y);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=288pt]{classVector_a98369ba060b6c264b596ce30e7ad6b8d_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a55aa4644709bc040a90dbff081bb717a}{\index{\-Vector@{\-Vector}!operator+@{operator+}}
\index{operator+@{operator+}!Vector@{\-Vector}}
\subsubsection[{operator+}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator+ (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a55aa4644709bc040a90dbff081bb717a}


\-Definition at line 94 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_a0ebbef346b37f0a6c7791ac4962103c5}{\index{\-Vector@{\-Vector}!operator+=@{operator+=}}
\index{operator+=@{operator+=}!Vector@{\-Vector}}
\subsubsection[{operator+=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator+= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a0ebbef346b37f0a6c7791ac4962103c5}


\-Definition at line 134 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x += v.x;
                y += v.y;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_abe03396a323da1d3dd645de44c9692b7}{\index{\-Vector@{\-Vector}!operator+=@{operator+=}}
\index{operator+=@{operator+=}!Vector@{\-Vector}}
\subsubsection[{operator+=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator+= (
\begin{DoxyParamCaption}
\item[{const float}]{scalar}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_abe03396a323da1d3dd645de44c9692b7}


\-Definition at line 142 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x += scalar;
                y += scalar;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_ac7b9814871af89597bd0888d7db966de}{\index{\-Vector@{\-Vector}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Vector@{\-Vector}}
\subsubsection[{operator-\/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator-\/ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_ac7b9814871af89597bd0888d7db966de}


\-Definition at line 69 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(x - v.x, y - v.y);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_ac7b9814871af89597bd0888d7db966de_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a1c38f8a4f5f6f9438e3ec8233cfaa6b0}{\index{\-Vector@{\-Vector}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Vector@{\-Vector}}
\subsubsection[{operator-\/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator-\/ (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a1c38f8a4f5f6f9438e3ec8233cfaa6b0}


\-Definition at line 99 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(-x, -y);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_a1c38f8a4f5f6f9438e3ec8233cfaa6b0_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_adec8bfb032fb32c97c18367d7c7eaa8a}{\index{\-Vector@{\-Vector}!operator-\/=@{operator-\/=}}
\index{operator-\/=@{operator-\/=}!Vector@{\-Vector}}
\subsubsection[{operator-\/=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator-\/= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_adec8bfb032fb32c97c18367d7c7eaa8a}


\-Definition at line 150 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x -= v.x;
                y -= v.y;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_a27da087f057851cf13d4c835eb95be9d}{\index{\-Vector@{\-Vector}!operator-\/=@{operator-\/=}}
\index{operator-\/=@{operator-\/=}!Vector@{\-Vector}}
\subsubsection[{operator-\/=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator-\/= (
\begin{DoxyParamCaption}
\item[{const float}]{scalar}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a27da087f057851cf13d4c835eb95be9d}


\-Definition at line 158 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x -= scalar;
                y -= scalar;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_a0cd8c159f345b93bfda14f9099743dc6}{\index{\-Vector@{\-Vector}!operator/@{operator/}}
\index{operator/@{operator/}!Vector@{\-Vector}}
\subsubsection[{operator/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator/ (
\begin{DoxyParamCaption}
\item[{const float \&}]{scalar}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a0cd8c159f345b93bfda14f9099743dc6}


\-Definition at line 84 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(x / scalar, y / scalar);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_a0cd8c159f345b93bfda14f9099743dc6_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a7db82ca6ef56c9ffbe2706698f20be88}{\index{\-Vector@{\-Vector}!operator/@{operator/}}
\index{operator/@{operator/}!Vector@{\-Vector}}
\subsubsection[{operator/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} \-Vector\-::operator/ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a7db82ca6ef56c9ffbe2706698f20be88}


\-Definition at line 89 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(x / v.x, y / v.y);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{classVector_a7db82ca6ef56c9ffbe2706698f20be88_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a7d6598ab2ba4761a56cc0c2f9f741a74}{\index{\-Vector@{\-Vector}!operator/=@{operator/=}}
\index{operator/=@{operator/=}!Vector@{\-Vector}}
\subsubsection[{operator/=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator/= (
\begin{DoxyParamCaption}
\item[{const float}]{scalar}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a7d6598ab2ba4761a56cc0c2f9f741a74}


\-Definition at line 182 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x /= scalar;
                y /= scalar;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_af826a7f6f4496ef9643baaa26d6123d7}{\index{\-Vector@{\-Vector}!operator/=@{operator/=}}
\index{operator/=@{operator/=}!Vector@{\-Vector}}
\subsubsection[{operator/=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator/= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_af826a7f6f4496ef9643baaa26d6123d7}


\-Definition at line 190 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x /= v.x;
                y /= v.y;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_a59b4a7df8a99e3f03413a21ef34d7d2f}{\index{\-Vector@{\-Vector}!operator$<$@{operator$<$}}
\index{operator$<$@{operator$<$}!Vector@{\-Vector}}
\subsubsection[{operator$<$}]{\setlength{\rightskip}{0pt plus 5cm}bool \-Vector\-::operator$<$ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a59b4a7df8a99e3f03413a21ef34d7d2f}


\-Definition at line 241 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                if(x == v.x)
                        return y < v.y;

                return x < v.x;
        }
\end{DoxyCode}
\hypertarget{classVector_afe7093bc1a20f820e3feaa53523bedf9}{\index{\-Vector@{\-Vector}!operator=@{operator=}}
\index{operator=@{operator=}!Vector@{\-Vector}}
\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector}\& \-Vector\-::operator= (
\begin{DoxyParamCaption}
\item[{const float}]{scalar}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_afe7093bc1a20f820e3feaa53523bedf9}


\-Definition at line 46 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                x = scalar;
                y = scalar;

                return *this;
        }
\end{DoxyCode}
\hypertarget{classVector_afe95adbfc44a173a404039b717df35a5}{\index{\-Vector@{\-Vector}!operator==@{operator==}}
\index{operator==@{operator==}!Vector@{\-Vector}}
\subsubsection[{operator==}]{\setlength{\rightskip}{0pt plus 5cm}bool \-Vector\-::operator== (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_afe95adbfc44a173a404039b717df35a5}


\-Definition at line 54 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return (x == v.x && y == v.y);
        }
\end{DoxyCode}
\hypertarget{classVector_a06c3da96de74c2734fd28ef9978e9be3}{\index{\-Vector@{\-Vector}!operator$>$@{operator$>$}}
\index{operator$>$@{operator$>$}!Vector@{\-Vector}}
\subsubsection[{operator$>$}]{\setlength{\rightskip}{0pt plus 5cm}bool \-Vector\-::operator$>$ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a06c3da96de74c2734fd28ef9978e9be3}


\-Definition at line 249 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                if(x == v.x)
                        return y > v.y;

                return x > v.x;
        }
\end{DoxyCode}
\hypertarget{classVector_aea96623f861d002ee80e4ba01306771c}{\index{\-Vector@{\-Vector}!perpendicular@{perpendicular}}
\index{perpendicular@{perpendicular}!Vector@{\-Vector}}
\subsubsection[{perpendicular}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} {\bf \-Vector\-::perpendicular} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_aea96623f861d002ee80e4ba01306771c}


\-Definition at line 269 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                return Vector(-y, x);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=306pt]{classVector_aea96623f861d002ee80e4ba01306771c_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a672e956d757dd7b51c6ab7e7aee73477}{\index{\-Vector@{\-Vector}!random\-Deviant@{random\-Deviant}}
\index{random\-Deviant@{random\-Deviant}!Vector@{\-Vector}}
\subsubsection[{random\-Deviant}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} {\bf \-Vector\-::random\-Deviant} (
\begin{DoxyParamCaption}
\item[{float}]{angle}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a672e956d757dd7b51c6ab7e7aee73477}


\-Definition at line 279 of file \-Vector.\-h.



\-References \-Vector(), x, and y.


\begin{DoxyCode}
        {
                angle *= (float(rand()) / float(RAND_MAX)) * 3.1415f * 2.0f;
                float cosa = cos(angle);
                float sina = sin(angle);
                return Vector(cosa * x - sina * y, sina * x + cosa * y);
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=314pt]{classVector_a672e956d757dd7b51c6ab7e7aee73477_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_ac8df6ef6fbaae67069aea323e1ca38af}{\index{\-Vector@{\-Vector}!reflect@{reflect}}
\index{reflect@{reflect}!Vector@{\-Vector}}
\subsubsection[{reflect}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} {\bf \-Vector\-::reflect} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{normal}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_ac8df6ef6fbaae67069aea323e1ca38af}


\-Definition at line 299 of file \-Vector.\-h.



\-References dot\-Product(), and \-Vector().


\begin{DoxyCode}
        {
                return Vector( *this - ( 2.0f * dotProduct(normal) * normal ) )
      ;
        }
\end{DoxyCode}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=292pt]{classVector_ac8df6ef6fbaae67069aea323e1ca38af_cgraph}
\end{center}
\end{figure}


\hypertarget{classVector_a8a63ed2d73d07f21073a81a2ebf1cf19}{\index{\-Vector@{\-Vector}!squared\-Distance@{squared\-Distance}}
\index{squared\-Distance@{squared\-Distance}!Vector@{\-Vector}}
\subsubsection[{squared\-Distance}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::squared\-Distance} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a8a63ed2d73d07f21073a81a2ebf1cf19}


\-Definition at line 213 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return (*this - v).squaredLength();
        }
\end{DoxyCode}
\hypertarget{classVector_a2fbba569647c2f0dd01fd677f2dc5086}{\index{\-Vector@{\-Vector}!squared\-Length@{squared\-Length}}
\index{squared\-Length@{squared\-Length}!Vector@{\-Vector}}
\subsubsection[{squared\-Length}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::squared\-Length} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classVector_a2fbba569647c2f0dd01fd677f2dc5086}


\-Definition at line 203 of file \-Vector.\-h.



\-References x, and y.


\begin{DoxyCode}
        {
                return x * x + y * y;
        }
\end{DoxyCode}


\subsection{\-Friends \-And \-Related \-Function \-Documentation}
\hypertarget{classVector_ac1a4cf2c31480097911a685fd8bf5177}{\index{\-Vector@{\-Vector}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Vector@{\-Vector}}
\subsubsection[{operator$\ast$}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} operator$\ast$ (
\begin{DoxyParamCaption}
\item[{const float}]{scalar, }
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}friend\mbox{]}}}}\label{classVector_ac1a4cf2c31480097911a685fd8bf5177}


\-Definition at line 104 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return Vector(scalar * v.x, scalar * v.y);
        }
\end{DoxyCode}
\hypertarget{classVector_aed048d0c68897205e4eaacbebe31d93a}{\index{\-Vector@{\-Vector}!operator+@{operator+}}
\index{operator+@{operator+}!Vector@{\-Vector}}
\subsubsection[{operator+}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} operator+ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{lhs, }
\item[{const float}]{rhs}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}friend\mbox{]}}}}\label{classVector_aed048d0c68897205e4eaacbebe31d93a}


\-Definition at line 114 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return Vector(lhs.x + rhs, lhs.y + rhs);
        }
\end{DoxyCode}
\hypertarget{classVector_a5b01632bc21067e09623058e9f8b08b2}{\index{\-Vector@{\-Vector}!operator+@{operator+}}
\index{operator+@{operator+}!Vector@{\-Vector}}
\subsubsection[{operator+}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} operator+ (
\begin{DoxyParamCaption}
\item[{const float}]{lhs, }
\item[{const {\bf \-Vector} \&}]{rhs}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}friend\mbox{]}}}}\label{classVector_a5b01632bc21067e09623058e9f8b08b2}


\-Definition at line 119 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return Vector(lhs + rhs.x, lhs + rhs.y);
        }
\end{DoxyCode}
\hypertarget{classVector_a5d53e701db00e9a3e0a83e5fc69ed233}{\index{\-Vector@{\-Vector}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Vector@{\-Vector}}
\subsubsection[{operator-\/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} operator-\/ (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector} \&}]{lhs, }
\item[{const float}]{rhs}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}friend\mbox{]}}}}\label{classVector_a5d53e701db00e9a3e0a83e5fc69ed233}


\-Definition at line 124 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return Vector(lhs.x - rhs, lhs.y - rhs);
        }
\end{DoxyCode}
\hypertarget{classVector_ac19aaff2b9593271537b1e1fe94b073d}{\index{\-Vector@{\-Vector}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Vector@{\-Vector}}
\subsubsection[{operator-\/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} operator-\/ (
\begin{DoxyParamCaption}
\item[{const float}]{lhs, }
\item[{const {\bf \-Vector} \&}]{rhs}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}friend\mbox{]}}}}\label{classVector_ac19aaff2b9593271537b1e1fe94b073d}


\-Definition at line 129 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return Vector(lhs - rhs.x, lhs - rhs.y);
        }
\end{DoxyCode}
\hypertarget{classVector_a48e12dc75e6bff55fb53d32dfff93fc2}{\index{\-Vector@{\-Vector}!operator/@{operator/}}
\index{operator/@{operator/}!Vector@{\-Vector}}
\subsubsection[{operator/}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Vector} operator/ (
\begin{DoxyParamCaption}
\item[{const float}]{scalar, }
\item[{const {\bf \-Vector} \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}friend\mbox{]}}}}\label{classVector_a48e12dc75e6bff55fb53d32dfff93fc2}


\-Definition at line 109 of file \-Vector.\-h.


\begin{DoxyCode}
        {
                return Vector(scalar / v.x, scalar / v.y);
        }
\end{DoxyCode}


\subsection{\-Member \-Data \-Documentation}
\hypertarget{classVector_aca49165049a1e21ae47afcfc078819ed}{\index{\-Vector@{\-Vector}!x@{x}}
\index{x@{x}!Vector@{\-Vector}}
\subsubsection[{x}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::x}}}\label{classVector_aca49165049a1e21ae47afcfc078819ed}


\-Definition at line 10 of file \-Vector.\-h.



\-Referenced by cross\-Product(), dot\-Product(), is\-Zero\-Length(), length(), make\-Ceil(), make\-Floor(), mid\-Point(), normalise(), operator Position(), operator Tile\-Position(), operator!=(), operator$\ast$(), operator$\ast$=(), operator+(), operator+=(), operator-\/(), operator-\/=(), operator/(), operator/=(), operator$<$(), operator=(), operator==(), operator$>$(), perpendicular(), random\-Deviant(), and squared\-Length().

\hypertarget{classVector_a81be9102fca6d9beea3efef522c4c09d}{\index{\-Vector@{\-Vector}!y@{y}}
\index{y@{y}!Vector@{\-Vector}}
\subsubsection[{y}]{\setlength{\rightskip}{0pt plus 5cm}float {\bf \-Vector\-::y}}}\label{classVector_a81be9102fca6d9beea3efef522c4c09d}


\-Definition at line 10 of file \-Vector.\-h.



\-Referenced by cross\-Product(), dot\-Product(), is\-Zero\-Length(), length(), make\-Ceil(), make\-Floor(), mid\-Point(), normalise(), operator Position(), operator Tile\-Position(), operator!=(), operator$\ast$(), operator$\ast$=(), operator+(), operator+=(), operator-\/(), operator-\/=(), operator/(), operator/=(), operator$<$(), operator=(), operator==(), operator$>$(), perpendicular(), random\-Deviant(), and squared\-Length().



\-The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
\-Skynet/\-Skynet/\hyperlink{Vector_8h}{\-Vector.\-h}\end{DoxyCompactItemize}
