Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > bad97183153701b09df5fae1052b1c30 > files > 1158

crystalspace-doc-1.2.1-5mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Crystal Space 1.2.1: csVector2 Class Reference (Crystal Space 1.2.1 Public API Reference)</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="head">
 <tr height="59">
  <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td>
  <td class="head"><h2>Public API Reference</h2></td>
 </tr>
 <tr height="11">
  <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td>
 </tr>
</table>
<div class="content">
<!-- Generated by Doxygen 1.5.3 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>csVector2 Class Reference<br>
<small>
[<a class="el" href="group__geom__utils.html">Geometry utilities</a>]</small>
</h1><!-- doxytag: class="csVector2" -->A 2D vector.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="vector2_8h-source.html">csgeom/vector2.h</a>&gt;</code>
<p>

<p>
<a href="classcsVector2-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#55112000a51b8cc7b422adce88964e2f">csVector2</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;o)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copyconstructor.  <a href="#55112000a51b8cc7b422adce88964e2f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#e6a694e1ef368df9ae9e64536f9f2a32">csVector2</a> (float <a class="el" href="classcsVector2.html#cf4ee25489c98e6b7b7a460c4edd4ac6">x</a>, float <a class="el" href="classcsVector2.html#f736730a67b9ee807f1455da3d2be188">y</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a new vector and initialize with the given values.  <a href="#e6a694e1ef368df9ae9e64536f9f2a32"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#b21c7982dca9bc951dba4b243ace171f">csVector2</a> (float v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a new vector and initialize with the given values.  <a href="#b21c7982dca9bc951dba4b243ace171f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#e5f1d7cd6195cda07ee9ddecbd6f7409">csVector2</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a new vector. No initialization is done.  <a href="#e5f1d7cd6195cda07ee9ddecbd6f7409"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsString.html">csString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#408bd958f4171d00d43ac3f09062ba09">Description</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a textual representation of the vector in the form "x,y".  <a href="#408bd958f4171d00d43ac3f09062ba09"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#27559a7bee3f0fd1370811d4b1023827">Get</a> (float *v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of this vector.  <a href="#27559a7bee3f0fd1370811d4b1023827"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#ccd1660dbfd74db06e899e7e319986ca">IsLeft</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;p0, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;p1)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if this point is left of the line through p0 and p1.  <a href="#ccd1660dbfd74db06e899e7e319986ca"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#b1caf357679e56082126fd66bdf15ac4">Norm</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the norm (magnitude) of this vector.  <a href="#b1caf357679e56082126fd66bdf15ac4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#6f7aac34ad42257e93a2cde5a0c14b01">operator *=</a> (float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply this vector by a scalar.  <a href="#6f7aac34ad42257e93a2cde5a0c14b01"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#3ac1433944fc1bbed78144f4fc5ca03e">operator+</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary + operator.  <a href="#3ac1433944fc1bbed78144f4fc5ca03e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#bd3838c66b6a4611d3e44b19e93a4716">operator+=</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add another vector to this vector.  <a href="#bd3838c66b6a4611d3e44b19e93a4716"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#4077df99dacddd153b90bdc4d6e7b2c3">operator-</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary - operator.  <a href="#4077df99dacddd153b90bdc4d6e7b2c3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#a828c447631e737db74799de8686f20a">operator-=</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract another vector from this vector.  <a href="#a828c447631e737db74799de8686f20a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#19b26840e3ae012fbb777438e9833e40">operator/=</a> (float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide this vector by a scalar.  <a href="#19b26840e3ae012fbb777438e9833e40"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#c5c18d5a94e08c55a3838997ae74f6cb">operator[]</a> (int n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns n-th component of the vector.  <a href="#c5c18d5a94e08c55a3838997ae74f6cb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#2c420c308142180d3ddda8d62ef170fd">operator[]</a> (int n) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns n-th component of the vector.  <a href="#2c420c308142180d3ddda8d62ef170fd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#f90252996a68bb0ceb877286c42ff0a6">Rotate</a> (float angle)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Rotate vector around the origin by a given angle in radians.  <a href="#f90252996a68bb0ceb877286c42ff0a6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#faad055f8fec2478a83800ac73cd28f3">Set</a> (float v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the value of this vector so that all components are the same.  <a href="#faad055f8fec2478a83800ac73cd28f3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#101db2f85f0c3400e90399ef45111603">Set</a> (float const *v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the value of this vector.  <a href="#101db2f85f0c3400e90399ef45111603"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#adcdfae52235111cb24031206bd7fd6e">Set</a> (<a class="el" href="classcsVector2.html">csVector2</a> const &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set vector to given values.  <a href="#adcdfae52235111cb24031206bd7fd6e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#b7e0ea5b2b9b4b7e229990c383cf0b6f">Set</a> (float ix, float iy)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set vector to given values.  <a href="#b7e0ea5b2b9b4b7e229990c383cf0b6f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#75d5837b69e0c167b22c3f9309ee5177">SquaredNorm</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the squared norm (magnitude) of this vector.  <a href="#75d5837b69e0c167b22c3f9309ee5177"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#5fd419d758e521c6a94337b85a1ede70">Norm</a> (<a class="el" href="classcsVector2.html">csVector2</a> const &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the norm (magnitude) of a 2D vector.  <a href="#5fd419d758e521c6a94337b85a1ede70"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#cf4ee25489c98e6b7b7a460c4edd4ac6">x</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">X component of vector.  <a href="#cf4ee25489c98e6b7b7a460c4edd4ac6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#f736730a67b9ee807f1455da3d2be188">y</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Y component of vector.  <a href="#f736730a67b9ee807f1455da3d2be188"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#b5f5e828113890ff942c00f9b61c7a02">operator *</a> (float f, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar.  <a href="#b5f5e828113890ff942c00f9b61c7a02"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#f32994c088b51f543ffb457045aae993">operator *</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar.  <a href="#f32994c088b51f543ffb457045aae993"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#b43a3533197ca44617a854311d87ecbe">operator *</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v1, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Take the dot product of two vectors.  <a href="#b43a3533197ca44617a854311d87ecbe"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#e3da902419514e97e3dc8dddb5688ca8">operator!=</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v1, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two vectors are not equal.  <a href="#e3da902419514e97e3dc8dddb5688ca8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#5261795da9e75e44fd75446c8e7bad2f">operator+</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v1, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add two vectors.  <a href="#5261795da9e75e44fd75446c8e7bad2f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#3056757a39207234f41bf0c550e99def">operator-</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v1, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract two vectors.  <a href="#3056757a39207234f41bf0c550e99def"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#94748cc03a0b2ff5cc3c65a466962397">operator/</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide a vector by a scalar.  <a href="#94748cc03a0b2ff5cc3c65a466962397"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#af6caaa84b6fe448c6d3b04825f48826">operator&lt;</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if each component of a vector is less than a small epsilon value.  <a href="#af6caaa84b6fe448c6d3b04825f48826"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#946b2cdf4f03f01a04a59efb13a8d63b">operator==</a> (const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v1, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two vectors are equal.  <a href="#946b2cdf4f03f01a04a59efb13a8d63b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector2.html#afb7e03f3b5661164327e97aa00ebf97">operator&gt;</a> (float f, const <a class="el" href="classcsVector2.html">csVector2</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if each component of a vector is greater than a small epsilon value.  <a href="#afb7e03f3b5661164327e97aa00ebf97"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A 2D vector. 
<p>Definition at line <a class="el" href="vector2_8h-source.html#l00037">37</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="e5f1d7cd6195cda07ee9ddecbd6f7409"></a><!-- doxytag: member="csVector2::csVector2" ref="e5f1d7cd6195cda07ee9ddecbd6f7409" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector2::csVector2           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Make a new vector. No initialization is done. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00046">46</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="b21c7982dca9bc951dba4b243ace171f"></a><!-- doxytag: member="csVector2::csVector2" ref="b21c7982dca9bc951dba4b243ace171f" args="(float v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector2::csVector2           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Make a new vector and initialize with the given values. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00049">49</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="e6a694e1ef368df9ae9e64536f9f2a32"></a><!-- doxytag: member="csVector2::csVector2" ref="e6a694e1ef368df9ae9e64536f9f2a32" args="(float x, float y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector2::csVector2           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Make a new vector and initialize with the given values. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00054">54</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="55112000a51b8cc7b422adce88964e2f"></a><!-- doxytag: member="csVector2::csVector2" ref="55112000a51b8cc7b422adce88964e2f" args="(const csVector2 &amp;o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector2::csVector2           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copyconstructor. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00059">59</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="408bd958f4171d00d43ac3f09062ba09"></a><!-- doxytag: member="csVector2::Description" ref="408bd958f4171d00d43ac3f09062ba09" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsString.html">csString</a> csVector2::Description           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return a textual representation of the vector in the form "x,y". 
<p>

</div>
</div><p>
<a class="anchor" name="27559a7bee3f0fd1370811d4b1023827"></a><!-- doxytag: member="csVector2::Get" ref="27559a7bee3f0fd1370811d4b1023827" args="(float *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector2::Get           </td>
          <td>(</td>
          <td class="paramtype">float *&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the value of this vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00081">81</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="ccd1660dbfd74db06e899e7e319986ca"></a><!-- doxytag: member="csVector2::IsLeft" ref="ccd1660dbfd74db06e899e7e319986ca" args="(const csVector2 &amp;p0, const csVector2 &amp;p1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csVector2::IsLeft           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p1</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if this point is left of the line through p0 and p1. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>&gt;0 if this point is left, 0 if on the line and &lt;0 if right. </dd></dl>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00100">100</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>References <a class="el" href="vector2_8h-source.html#l00041">x</a>, and <a class="el" href="vector2_8h-source.html#l00043">y</a>.</p>

</div>
</div><p>
<a class="anchor" name="b1caf357679e56082126fd66bdf15ac4"></a><!-- doxytag: member="csVector2::Norm" ref="b1caf357679e56082126fd66bdf15ac4" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csVector2::Norm           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the norm (magnitude) of this vector. 
<p>

</div>
</div><p>
<a class="anchor" name="5fd419d758e521c6a94337b85a1ede70"></a><!-- doxytag: member="csVector2::Norm" ref="5fd419d758e521c6a94337b85a1ede70" args="(csVector2 const &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static float csVector2::Norm           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcsVector2.html">csVector2</a> const &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the norm (magnitude) of a 2D vector. 
<p>

<p>Referenced by <a class="el" href="plane2_8h-source.html#l00148">csPlane2::Normalize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="6f7aac34ad42257e93a2cde5a0c14b01"></a><!-- doxytag: member="csVector2::operator *=" ref="6f7aac34ad42257e93a2cde5a0c14b01" args="(float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a>&amp; csVector2::operator *=           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply this vector by a scalar. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00114">114</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="3ac1433944fc1bbed78144f4fc5ca03e"></a><!-- doxytag: member="csVector2::operator+" ref="3ac1433944fc1bbed78144f4fc5ca03e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> csVector2::operator+           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Unary + operator. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00126">126</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="bd3838c66b6a4611d3e44b19e93a4716"></a><!-- doxytag: member="csVector2::operator+=" ref="bd3838c66b6a4611d3e44b19e93a4716" args="(const csVector2 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a>&amp; csVector2::operator+=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add another vector to this vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00106">106</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>References <a class="el" href="vector2_8h-source.html#l00041">x</a>, and <a class="el" href="vector2_8h-source.html#l00043">y</a>.</p>

</div>
</div><p>
<a class="anchor" name="4077df99dacddd153b90bdc4d6e7b2c3"></a><!-- doxytag: member="csVector2::operator-" ref="4077df99dacddd153b90bdc4d6e7b2c3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> csVector2::operator-           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Unary - operator. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00129">129</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="a828c447631e737db74799de8686f20a"></a><!-- doxytag: member="csVector2::operator-=" ref="a828c447631e737db74799de8686f20a" args="(const csVector2 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a>&amp; csVector2::operator-=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Subtract another vector from this vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00110">110</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>References <a class="el" href="vector2_8h-source.html#l00041">x</a>, and <a class="el" href="vector2_8h-source.html#l00043">y</a>.</p>

</div>
</div><p>
<a class="anchor" name="19b26840e3ae012fbb777438e9833e40"></a><!-- doxytag: member="csVector2::operator/=" ref="19b26840e3ae012fbb777438e9833e40" args="(float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a>&amp; csVector2::operator/=           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Divide this vector by a scalar. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00117">117</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="c5c18d5a94e08c55a3838997ae74f6cb"></a><!-- doxytag: member="csVector2::operator[]" ref="c5c18d5a94e08c55a3838997ae74f6cb" args="(int n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float&amp; csVector2::operator[]           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns n-th component of the vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00168">168</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="2c420c308142180d3ddda8d62ef170fd"></a><!-- doxytag: member="csVector2::operator[]" ref="2c420c308142180d3ddda8d62ef170fd" args="(int n) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csVector2::operator[]           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns n-th component of the vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00166">166</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="f90252996a68bb0ceb877286c42ff0a6"></a><!-- doxytag: member="csVector2::Rotate" ref="f90252996a68bb0ceb877286c42ff0a6" args="(float angle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector2::Rotate           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>angle</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Rotate vector around the origin by a given angle in radians. 
<p>

</div>
</div><p>
<a class="anchor" name="faad055f8fec2478a83800ac73cd28f3"></a><!-- doxytag: member="csVector2::Set" ref="faad055f8fec2478a83800ac73cd28f3" args="(float v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector2::Set           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the value of this vector so that all components are the same. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00078">78</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="101db2f85f0c3400e90399ef45111603"></a><!-- doxytag: member="csVector2::Set" ref="101db2f85f0c3400e90399ef45111603" args="(float const *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector2::Set           </td>
          <td>(</td>
          <td class="paramtype">float const *&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the value of this vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00075">75</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="adcdfae52235111cb24031206bd7fd6e"></a><!-- doxytag: member="csVector2::Set" ref="adcdfae52235111cb24031206bd7fd6e" args="(csVector2 const &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector2::Set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcsVector2.html">csVector2</a> const &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set vector to given values. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00071">71</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>References <a class="el" href="vector2_8h-source.html#l00041">x</a>, and <a class="el" href="vector2_8h-source.html#l00043">y</a>.</p>

</div>
</div><p>
<a class="anchor" name="b7e0ea5b2b9b4b7e229990c383cf0b6f"></a><!-- doxytag: member="csVector2::Set" ref="b7e0ea5b2b9b4b7e229990c383cf0b6f" args="(float ix, float iy)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector2::Set           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>ix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>iy</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set vector to given values. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00067">67</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>Referenced by <a class="el" href="shadervar_8h-source.html#l00234">csShaderVariable::GetValue()</a>.</p>

</div>
</div><p>
<a class="anchor" name="75d5837b69e0c167b22c3f9309ee5177"></a><!-- doxytag: member="csVector2::SquaredNorm" ref="75d5837b69e0c167b22c3f9309ee5177" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csVector2::SquaredNorm           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the squared norm (magnitude) of this vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00090">90</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>Referenced by <a class="el" href="plane2_8h-source.html#l00139">csPlane2::SquaredDistance()</a>.</p>

</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="b5f5e828113890ff942c00f9b61c7a02"></a><!-- doxytag: member="csVector2::operator *" ref="b5f5e828113890ff942c00f9b61c7a02" args="(float f, const csVector2 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply a vector and a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="f32994c088b51f543ffb457045aae993"></a><!-- doxytag: member="csVector2::operator *" ref="f32994c088b51f543ffb457045aae993" args="(const csVector2 &amp;v, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply a vector and a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="b43a3533197ca44617a854311d87ecbe"></a><!-- doxytag: member="csVector2::operator *" ref="b43a3533197ca44617a854311d87ecbe" args="(const csVector2 &amp;v1, const csVector2 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Take the dot product of two vectors. 
<p>

</div>
</div><p>
<a class="anchor" name="e3da902419514e97e3dc8dddb5688ca8"></a><!-- doxytag: member="csVector2::operator!=" ref="e3da902419514e97e3dc8dddb5688ca8" args="(const csVector2 &amp;v1, const csVector2 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator!=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if two vectors are not equal. 
<p>

</div>
</div><p>
<a class="anchor" name="5261795da9e75e44fd75446c8e7bad2f"></a><!-- doxytag: member="csVector2::operator+" ref="5261795da9e75e44fd75446c8e7bad2f" args="(const csVector2 &amp;v1, const csVector2 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> operator+           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add two vectors. 
<p>

</div>
</div><p>
<a class="anchor" name="3056757a39207234f41bf0c550e99def"></a><!-- doxytag: member="csVector2::operator-" ref="3056757a39207234f41bf0c550e99def" args="(const csVector2 &amp;v1, const csVector2 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> operator-           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Subtract two vectors. 
<p>

</div>
</div><p>
<a class="anchor" name="94748cc03a0b2ff5cc3c65a466962397"></a><!-- doxytag: member="csVector2::operator/" ref="94748cc03a0b2ff5cc3c65a466962397" args="(const csVector2 &amp;v, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> operator/           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Divide a vector by a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="af6caaa84b6fe448c6d3b04825f48826"></a><!-- doxytag: member="csVector2::operator&lt;" ref="af6caaa84b6fe448c6d3b04825f48826" args="(const csVector2 &amp;v, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator&lt;           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if each component of a vector is less than a small epsilon value. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00157">157</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="946b2cdf4f03f01a04a59efb13a8d63b"></a><!-- doxytag: member="csVector2::operator==" ref="946b2cdf4f03f01a04a59efb13a8d63b" args="(const csVector2 &amp;v1, const csVector2 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator==           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if two vectors are equal. 
<p>

</div>
</div><p>
<a class="anchor" name="afb7e03f3b5661164327e97aa00ebf97"></a><!-- doxytag: member="csVector2::operator&gt;" ref="afb7e03f3b5661164327e97aa00ebf97" args="(float f, const csVector2 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator&gt;           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if each component of a vector is greater than a small epsilon value. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00161">161</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="cf4ee25489c98e6b7b7a460c4edd4ac6"></a><!-- doxytag: member="csVector2::x" ref="cf4ee25489c98e6b7b7a460c4edd4ac6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classcsVector2.html#cf4ee25489c98e6b7b7a460c4edd4ac6">csVector2::x</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
X component of vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00041">41</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>Referenced by <a class="el" href="plane2_8h-source.html#l00100">csPlane2::A()</a>, <a class="el" href="box_8h-source.html#l00317">csBox2::AddBoundingVertex()</a>, <a class="el" href="box_8h-source.html#l00338">csBox2::AddBoundingVertexSmart()</a>, <a class="el" href="box_8h-source.html#l00388">csBox2::AddBoundingVertexSmartTest()</a>, <a class="el" href="box_8h-source.html#l00361">csBox2::AddBoundingVertexTest()</a>, <a class="el" href="poly2d_8h-source.html#l00151">csPoly2D::AddVertex()</a>, <a class="el" href="math2d_8h-source.html#l00090">csMath2::Area2()</a>, <a class="el" href="plane2_8h-source.html#l00121">csPlane2::Classify()</a>, <a class="el" href="box_8h-source.html#l00248">csBox2::Contains()</a>, <a class="el" href="box_8h-source.html#l00234">csBox2::In()</a>, <a class="el" href="box_8h-source.html#l00208">csBox2::Intersect()</a>, <a class="el" href="polyclip_8h-source.html#l00118">csBoxClipper::IsInside()</a>, <a class="el" href="vector2_8h-source.html#l00100">IsLeft()</a>, <a class="el" href="vector2_8h-source.html#l00106">operator+=()</a>, <a class="el" href="vector2_8h-source.html#l00110">operator-=()</a>, <a class="el" href="box_8h-source.html#l00240">csBox2::Overlap()</a>, <a class="el" href="math2d_8h-source.html#l00237">csIntersect2::SegmentPlaneNoTest()</a>, <a class="el" href="vector2_8h-source.html#l00071">Set()</a>, <a class="el" href="plane2_8h-source.html#l00068">csPlane2::Set()</a>, <a class="el" href="shadervar_8h-source.html#l00361">csShaderVariable::SetValue()</a>, <a class="el" href="box_8h-source.html#l00303">csBox2::StartBoundingBox()</a>, and <a class="el" href="math2d_8h-source.html#l00053">csMath2::WhichSide2D()</a>.</p>

</div>
</div><p>
<a class="anchor" name="f736730a67b9ee807f1455da3d2be188"></a><!-- doxytag: member="csVector2::y" ref="f736730a67b9ee807f1455da3d2be188" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classcsVector2.html#f736730a67b9ee807f1455da3d2be188">csVector2::y</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Y component of vector. 
<p>

<p>Definition at line <a class="el" href="vector2_8h-source.html#l00043">43</a> of file <a class="el" href="vector2_8h-source.html">vector2.h</a>.</p>

<p>Referenced by <a class="el" href="box_8h-source.html#l00317">csBox2::AddBoundingVertex()</a>, <a class="el" href="box_8h-source.html#l00338">csBox2::AddBoundingVertexSmart()</a>, <a class="el" href="box_8h-source.html#l00388">csBox2::AddBoundingVertexSmartTest()</a>, <a class="el" href="box_8h-source.html#l00361">csBox2::AddBoundingVertexTest()</a>, <a class="el" href="poly2d_8h-source.html#l00151">csPoly2D::AddVertex()</a>, <a class="el" href="math2d_8h-source.html#l00090">csMath2::Area2()</a>, <a class="el" href="plane2_8h-source.html#l00102">csPlane2::B()</a>, <a class="el" href="plane2_8h-source.html#l00121">csPlane2::Classify()</a>, <a class="el" href="box_8h-source.html#l00248">csBox2::Contains()</a>, <a class="el" href="box_8h-source.html#l00234">csBox2::In()</a>, <a class="el" href="box_8h-source.html#l00208">csBox2::Intersect()</a>, <a class="el" href="polyclip_8h-source.html#l00118">csBoxClipper::IsInside()</a>, <a class="el" href="vector2_8h-source.html#l00100">IsLeft()</a>, <a class="el" href="vector2_8h-source.html#l00106">operator+=()</a>, <a class="el" href="vector2_8h-source.html#l00110">operator-=()</a>, <a class="el" href="box_8h-source.html#l00240">csBox2::Overlap()</a>, <a class="el" href="math2d_8h-source.html#l00237">csIntersect2::SegmentPlaneNoTest()</a>, <a class="el" href="vector2_8h-source.html#l00071">Set()</a>, <a class="el" href="plane2_8h-source.html#l00068">csPlane2::Set()</a>, <a class="el" href="shadervar_8h-source.html#l00361">csShaderVariable::SetValue()</a>, and <a class="el" href="math2d_8h-source.html#l00053">csMath2::WhichSide2D()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>csgeom/<a class="el" href="vector2_8h-source.html">vector2.h</a></ul>
<hr size="1"><address><small>Generated for Crystal Space 1.2.1 by 
<a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 
</small></address> </div></body> </html>