Sophie

Sophie

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

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: csVector3 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>csVector3 Class Reference<br>
<small>
[<a class="el" href="group__geom__utils.html">Geometry utilities</a>]</small>
</h1><!-- doxytag: class="csVector3" -->A 3D vector.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="vector3_8h-source.html">csgeom/vector3.h</a>&gt;</code>
<p>

<p>
<a href="classcsVector3-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">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#6da3afcc16d51f5cbb122786530abfc8">Cross</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;px, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;py)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Take cross product of two vectors and put result in this vector.  <a href="#6da3afcc16d51f5cbb122786530abfc8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#ee23f0071419b3de933a0ba7b094c7cc">csVector3</a> (const <a class="el" href="classcsDVector3.html">csDVector3</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Conversion from double precision vector to single.  <a href="#ee23f0071419b3de933a0ba7b094c7cc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#83e55d80b89992b33983461997aaf3f0">csVector3</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy Constructor.  <a href="#83e55d80b89992b33983461997aaf3f0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#5c187c254a4d44d364670ff9e57b59a5">csVector3</a> (float ix, float iy, float iz=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a new vector and initialize with the given values.  <a href="#5c187c254a4d44d364670ff9e57b59a5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#0267a154da795520aa74c4861ab36d77">csVector3</a> (float <a class="el" href="classcsVector3.html#fc081d3bf73f1be6f7134c29f6f61c56">m</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a new initialized vector.  <a href="#0267a154da795520aa74c4861ab36d77"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#27d80c7e6bcdaee093012aa843492ca6">csVector3</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a new vector.  <a href="#27d80c7e6bcdaee093012aa843492ca6"></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="classcsVector3.html#596907400f24a41736d5b5f1ba0df73f">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,z".  <a href="#596907400f24a41736d5b5f1ba0df73f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#1885c814e9bebfb95cdebe8a66f9f036">DominantAxis</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return index of the largest axis.  <a href="#1885c814e9bebfb95cdebe8a66f9f036"></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="classcsVector3.html#de7ba33200ebce17f6f3d9619ed06ec4">Get</a> (float *v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of this vector.  <a href="#de7ba33200ebce17f6f3d9619ed06ec4"></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="classcsVector3.html#bd1301a92ffbf20d43f99b1ba1346f09">IsZero</a> (float precision=SMALL_EPSILON) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query if the vector is zero.  <a href="#bd1301a92ffbf20d43f99b1ba1346f09"></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="classcsVector3.html#42b1546a61c4fd76ec17c50592fcad1e">Norm</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the norm of this vector.  <a href="#42b1546a61c4fd76ec17c50592fcad1e"></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="classcsVector3.html#59c1a6333abbb77268b7e661b3be36b5">Normalize</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scale this vector to length = 1.0;.  <a href="#59c1a6333abbb77268b7e661b3be36b5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#ef3a7f9526f65d2f7c219649f6809d59">operator *=</a> (float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply this vector by a scalar.  <a href="#ef3a7f9526f65d2f7c219649f6809d59"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#9d7480756a79154054ecc07de0b5ec0a">operator+</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary + operator.  <a href="#9d7480756a79154054ecc07de0b5ec0a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#4af056573151e79dcad7b24d459de7eb">operator+=</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add another vector to this vector.  <a href="#4af056573151e79dcad7b24d459de7eb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#7eff302cef5eab01d17025acc9d94a9d">operator-</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary - operator.  <a href="#7eff302cef5eab01d17025acc9d94a9d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#0677b4ef702018e0186600a1027ef101">operator-=</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract another vector from this vector.  <a href="#0677b4ef702018e0186600a1027ef101"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#49f06c8a62f0f119e9d37aed324dc2b0">operator/=</a> (float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide this vector by a scalar.  <a href="#49f06c8a62f0f119e9d37aed324dc2b0"></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="classcsVector3.html#7ef21de39bdda7a263f3ad38a271b63f">operator[]</a> (size_t n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns n-th component of the vector.  <a href="#7ef21de39bdda7a263f3ad38a271b63f"></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="classcsVector3.html#1926da31cdca5c7a45821b40b2e1d39a">operator[]</a> (size_t n) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns n-th component of the vector.  <a href="#1926da31cdca5c7a45821b40b2e1d39a"></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="classcsVector3.html#4c4efd085000b072a427e5d475c199d0">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="#4c4efd085000b072a427e5d475c199d0"></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="classcsVector3.html#ae3487f21c9c18fa644625ff6f4dca8c">Set</a> (float const *v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the value of this vector.  <a href="#ae3487f21c9c18fa644625ff6f4dca8c"></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="classcsVector3.html#8683cb36d3b238f6b5354d22b474ac2f">Set</a> (<a class="el" href="classcsVector3.html">csVector3</a> const &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the value of this vector.  <a href="#8683cb36d3b238f6b5354d22b474ac2f"></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="classcsVector3.html#2d705cdca75eafea8df1400583509e88">Set</a> (float sx, float sy, float sz)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the value of this vector.  <a href="#2d705cdca75eafea8df1400583509e88"></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="classcsVector3.html#4f8fb0ed2df4d38898bbcda746c47552">SquaredNorm</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the squared norm (magnitude) of this vector.  <a href="#4f8fb0ed2df4d38898bbcda746c47552"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#dfe6a123b665375450d78bf47eee2b77">Unit</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the unit vector in the direction of this vector.  <a href="#dfe6a123b665375450d78bf47eee2b77"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#678aef7f60ea2869d4924edfbd39c545">UnitAxisClamped</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a version of the vector clamped to closest unit vector (+-xyz).  <a href="#678aef7f60ea2869d4924edfbd39c545"></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="classcsVector3.html#710f2bd2de6b6e842774632e1654050e">Norm</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the norm (magnitude) of a vector.  <a href="#710f2bd2de6b6e842774632e1654050e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#f438a4e42d69985e693dcbaf78cc9940">Unit</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Normalizes a vector to a unit vector.  <a href="#f438a4e42d69985e693dcbaf78cc9940"></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="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#5c1f360feb8a569b066d3c251ea53ffb">operator *</a> (int f, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar int.  <a href="#5c1f360feb8a569b066d3c251ea53ffb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#7c43330932d0d179d72dd8cf5fdfde79">operator *</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v, int f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar int.  <a href="#7c43330932d0d179d72dd8cf5fdfde79"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#adddaaa4a319d692e1bbb52b159f7b83">operator *</a> (double f, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar double. Upgrade v to DVector.  <a href="#adddaaa4a319d692e1bbb52b159f7b83"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#268b01115d9117ce0ae4b638f3145361">operator *</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v, double f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar double. Upgrade v to DVector.  <a href="#268b01115d9117ce0ae4b638f3145361"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#fdf18d676633debc32fa1aeb97097062">operator *</a> (float f, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

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

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector and a scalar.  <a href="#1a8272b06eec8e8453ee1b080d34468e"></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="classcsVector3.html#7485c6fc880165de9edc87d8d4f8c6f7">operator *</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Take the dot product of two vectors.  <a href="#7485c6fc880165de9edc87d8d4f8c6f7"></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="classcsVector3.html#14effb8e6e631957c158846343cc362e">operator!=</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two vectors are not equal.  <a href="#14effb8e6e631957c158846343cc362e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#9cf0725e53867457381292b60987f4c0">operator%</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Take the cross product of two vectors.  <a href="#9cf0725e53867457381292b60987f4c0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#d3d5d09f8b3aaa3cecd6dffa5fc57722">operator+</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsDVector3.html">csDVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add two vectors of differing type, raise the <a class="el" href="classcsVector3.html" title="A 3D vector.">csVector3</a> to DVector3.  <a href="#d3d5d09f8b3aaa3cecd6dffa5fc57722"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#bfcfd1f73524f02155dca14377deffc1">operator+</a> (const <a class="el" href="classcsDVector3.html">csDVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add two vectors of differing type, raise the <a class="el" href="classcsVector3.html" title="A 3D vector.">csVector3</a> to DVector3.  <a href="#bfcfd1f73524f02155dca14377deffc1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#4bfd7dd1c1e68ab46a03552cd5fb872a">operator+</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add two vectors.  <a href="#4bfd7dd1c1e68ab46a03552cd5fb872a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#072ff90ee99b3048ab5020803a0d0ff7">operator-</a> (const <a class="el" href="classcsDVector3.html">csDVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract two vectors of differing type, cast to double.  <a href="#072ff90ee99b3048ab5020803a0d0ff7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#707f5ce11cda15e4e0e22777f6f91031">operator-</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsDVector3.html">csDVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract two vectors of differing type, cast to double.  <a href="#707f5ce11cda15e4e0e22777f6f91031"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#8044d79b2baa48f677d88d4aea15e475">operator-</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract two vectors.  <a href="#8044d79b2baa48f677d88d4aea15e475"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#7d8f52709a5520e2b9fa71ae9bdcc7fa">operator/</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v, int f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide a vector by a scalar int.  <a href="#7d8f52709a5520e2b9fa71ae9bdcc7fa"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsDVector3.html">csDVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#4bd0d559e4e019ccead8a36e6f6b13b1">operator/</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v, double f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide a vector by a scalar double. Upgrade v to DVector.  <a href="#4bd0d559e4e019ccead8a36e6f6b13b1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#052b2559d5d577132492d1213bac4ce0">operator/</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide a vector by a scalar.  <a href="#052b2559d5d577132492d1213bac4ce0"></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="classcsVector3.html#6e1bbeabb9f0f71d3a0816111006c897">operator&lt;</a> (const <a class="el" href="classcsVector3.html">csVector3</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="#6e1bbeabb9f0f71d3a0816111006c897"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#5a6e8a9dd6eb45cf808d1f11e85e8a05">operator&lt;&lt;</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Project one vector onto another.  <a href="#5a6e8a9dd6eb45cf808d1f11e85e8a05"></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="classcsVector3.html#66e0e8c5f4adc5dc97d9101ed7d087b8">operator==</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two vectors are equal.  <a href="#66e0e8c5f4adc5dc97d9101ed7d087b8"></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="classcsVector3.html#b810d5c75c97a7119cc48f9efb4cfa19">operator&gt;</a> (float f, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</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="#b810d5c75c97a7119cc48f9efb4cfa19"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsVector3.html#457aa88a73812661db71dac5aa422799">operator&gt;&gt;</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v1, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Project one vector onto another.  <a href="#457aa88a73812661db71dac5aa422799"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A 3D vector. 
<p>Definition at line <a class="el" href="vector3_8h-source.html#l00056">56</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="27d80c7e6bcdaee093012aa843492ca6"></a><!-- doxytag: member="csVector3::csVector3" ref="27d80c7e6bcdaee093012aa843492ca6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector3::csVector3           </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. 
<p>
<dl class="warning" compact><dt><b>Warning:</b></dt><dd>The vector is not initialized. This makes the code slightly faster as <a class="el" href="classcsVector3.html" title="A 3D vector.">csVector3</a> objects are used a lot. </dd></dl>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00084">84</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

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

<p>
Make a new initialized vector. 
<p>
Creates a new vector and initializes it to m*&lt;1,1,1&gt;. To create a vector initialized to the zero vector, use csVector3(0) 
<p>Definition at line <a class="el" href="vector3_8h-source.html#l00091">91</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="5c187c254a4d44d364670ff9e57b59a5"></a><!-- doxytag: member="csVector3::csVector3" ref="5c187c254a4d44d364670ff9e57b59a5" args="(float ix, float iy, float iz=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector3::csVector3           </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>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>iz</em> = <code>0</code></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="vector3_8h-source.html#l00094">94</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="83e55d80b89992b33983461997aaf3f0"></a><!-- doxytag: member="csVector3::csVector3" ref="83e55d80b89992b33983461997aaf3f0" args="(const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector3::csVector3           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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>
Copy Constructor. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00097">97</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="ee23f0071419b3de933a0ba7b094c7cc"></a><!-- doxytag: member="csVector3::csVector3" ref="ee23f0071419b3de933a0ba7b094c7cc" args="(const csDVector3 &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csVector3::csVector3           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsDVector3.html">csDVector3</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Conversion from double precision vector to single. 
<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="6da3afcc16d51f5cbb122786530abfc8"></a><!-- doxytag: member="csVector3::Cross" ref="6da3afcc16d51f5cbb122786530abfc8" args="(const csVector3 &amp;px, const csVector3 &amp;py)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::Cross           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>px</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>py</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>
Take cross product of two vectors and put result in this vector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00142">142</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="vector3_8h-source.html#l00067">x</a>, <a class="el" href="vector3_8h-source.html#l00069">y</a>, and <a class="el" href="vector3_8h-source.html#l00071">z</a>.</p>

</div>
</div><p>
<a class="anchor" name="596907400f24a41736d5b5f1ba0df73f"></a><!-- doxytag: member="csVector3::Description" ref="596907400f24a41736d5b5f1ba0df73f" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsString.html">csString</a> csVector3::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,z". 
<p>

</div>
</div><p>
<a class="anchor" name="1885c814e9bebfb95cdebe8a66f9f036"></a><!-- doxytag: member="csVector3::DominantAxis" ref="1885c814e9bebfb95cdebe8a66f9f036" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int csVector3::DominantAxis           </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 index of the largest axis. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00317">317</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="vector3_8h-source.html#l00044">CS_AXIS_X</a>, <a class="el" href="vector3_8h-source.html#l00046">CS_AXIS_Y</a>, and <a class="el" href="vector3_8h-source.html#l00048">CS_AXIS_Z</a>.</p>

</div>
</div><p>
<a class="anchor" name="de7ba33200ebce17f6f3d9619ed06ec4"></a><!-- doxytag: member="csVector3::Get" ref="de7ba33200ebce17f6f3d9619ed06ec4" args="(float *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::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="vector3_8h-source.html#l00270">270</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

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

<p>
Query if the vector is zero. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00296">296</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

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

<p>
Returns the norm (magnitude) of a vector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00287">287</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="classcsVector3.html#42b1546a61c4fd76ec17c50592fcad1e">Norm()</a>.</p>

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

<p>
Returns the norm of this vector. 
<p>

<p>Referenced by <a class="el" href="math3d_8h-source.html#l00123">csMath3::DoubleArea3()</a>, <a class="el" href="vector3_8h-source.html#l00287">Norm()</a>, and <a class="el" href="odesolver_8h-source.html#l00177">CS::Math::Ode45::Step()</a>.</p>

</div>
</div><p>
<a class="anchor" name="59c1a6333abbb77268b7e661b3be36b5"></a><!-- doxytag: member="csVector3::Normalize" ref="59c1a6333abbb77268b7e661b3be36b5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::Normalize           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Scale this vector to length = 1.0;. 
<p>

</div>
</div><p>
<a class="anchor" name="ef3a7f9526f65d2f7c219649f6809d59"></a><!-- doxytag: member="csVector3::operator *=" ref="ef3a7f9526f65d2f7c219649f6809d59" args="(float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a>&amp; csVector3::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="vector3_8h-source.html#l00244">244</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="9d7480756a79154054ecc07de0b5ec0a"></a><!-- doxytag: member="csVector3::operator+" ref="9d7480756a79154054ecc07de0b5ec0a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csVector3::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="vector3_8h-source.html#l00252">252</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4af056573151e79dcad7b24d459de7eb"></a><!-- doxytag: member="csVector3::operator+=" ref="4af056573151e79dcad7b24d459de7eb" args="(const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a>&amp; csVector3::operator+=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="vector3_8h-source.html#l00224">224</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="vector3_8h-source.html#l00067">x</a>, <a class="el" href="vector3_8h-source.html#l00069">y</a>, and <a class="el" href="vector3_8h-source.html#l00071">z</a>.</p>

</div>
</div><p>
<a class="anchor" name="7eff302cef5eab01d17025acc9d94a9d"></a><!-- doxytag: member="csVector3::operator-" ref="7eff302cef5eab01d17025acc9d94a9d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csVector3::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="vector3_8h-source.html#l00255">255</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="0677b4ef702018e0186600a1027ef101"></a><!-- doxytag: member="csVector3::operator-=" ref="0677b4ef702018e0186600a1027ef101" args="(const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a>&amp; csVector3::operator-=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="vector3_8h-source.html#l00234">234</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="vector3_8h-source.html#l00067">x</a>, <a class="el" href="vector3_8h-source.html#l00069">y</a>, and <a class="el" href="vector3_8h-source.html#l00071">z</a>.</p>

</div>
</div><p>
<a class="anchor" name="49f06c8a62f0f119e9d37aed324dc2b0"></a><!-- doxytag: member="csVector3::operator/=" ref="49f06c8a62f0f119e9d37aed324dc2b0" args="(float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a>&amp; csVector3::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="vector3_8h-source.html#l00248">248</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="7ef21de39bdda7a263f3ad38a271b63f"></a><!-- doxytag: member="csVector3::operator[]" ref="7ef21de39bdda7a263f3ad38a271b63f" args="(size_t n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float&amp; csVector3::operator[]           </td>
          <td>(</td>
          <td class="paramtype">size_t&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="vector3_8h-source.html#l00220">220</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="1926da31cdca5c7a45821b40b2e1d39a"></a><!-- doxytag: member="csVector3::operator[]" ref="1926da31cdca5c7a45821b40b2e1d39a" args="(size_t n) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csVector3::operator[]           </td>
          <td>(</td>
          <td class="paramtype">size_t&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="vector3_8h-source.html#l00213">213</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4c4efd085000b072a427e5d475c199d0"></a><!-- doxytag: member="csVector3::Set" ref="4c4efd085000b072a427e5d475c199d0" args="(float v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::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="vector3_8h-source.html#l00267">267</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="ae3487f21c9c18fa644625ff6f4dca8c"></a><!-- doxytag: member="csVector3::Set" ref="ae3487f21c9c18fa644625ff6f4dca8c" args="(float const *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::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="vector3_8h-source.html#l00264">264</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="8683cb36d3b238f6b5354d22b474ac2f"></a><!-- doxytag: member="csVector3::Set" ref="8683cb36d3b238f6b5354d22b474ac2f" args="(csVector3 const &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::Set           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcsVector3.html">csVector3</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 the value of this vector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00261">261</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="vector3_8h-source.html#l00067">x</a>, <a class="el" href="vector3_8h-source.html#l00069">y</a>, and <a class="el" href="vector3_8h-source.html#l00071">z</a>.</p>

</div>
</div><p>
<a class="anchor" name="2d705cdca75eafea8df1400583509e88"></a><!-- doxytag: member="csVector3::Set" ref="2d705cdca75eafea8df1400583509e88" args="(float sx, float sy, float sz)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csVector3::Set           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>sx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>sy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>sz</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 the value of this vector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00258">258</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>Referenced by <a class="el" href="quaternion_8h-source.html#l00231">csQuaternion::GetAxisAngle()</a>, and <a class="el" href="shadervar_8h-source.html#l00242">csShaderVariable::GetValue()</a>.</p>

</div>
</div><p>
<a class="anchor" name="4f8fb0ed2df4d38898bbcda746c47552"></a><!-- doxytag: member="csVector3::SquaredNorm" ref="4f8fb0ed2df4d38898bbcda746c47552" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csVector3::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="vector3_8h-source.html#l00276">276</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>Referenced by <a class="el" href="floatrand_8h-source.html#l00116">csRandomVectorGen::Get()</a>, <a class="el" href="vertexlight_8h-source.html#l00352">csSpotLightProc&lt; AttenuationProc &gt;::PerVertex::PerVertex()</a>, <a class="el" href="vertexlight_8h-source.html#l00291">csDirectionalLightProc&lt; AttenuationProc &gt;::PerVertex::PerVertex()</a>, and <a class="el" href="vertexlight_8h-source.html#l00239">csPointLightProc&lt; AttenuationProc &gt;::PerVertex::PerVertex()</a>.</p>

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

<p>
Normalizes a vector to a unit vector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00290">290</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>References <a class="el" href="vector3_8h-source.html#l00284">Unit()</a>.</p>

</div>
</div><p>
<a class="anchor" name="dfe6a123b665375450d78bf47eee2b77"></a><!-- doxytag: member="csVector3::Unit" ref="dfe6a123b665375450d78bf47eee2b77" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csVector3::Unit           </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>
Returns the unit vector in the direction of this vector. 
<p>
Attempting to normalize a zero-vector will result in a divide by zero error. This is as it should be... fix the calling code. 
<p>Definition at line <a class="el" href="vector3_8h-source.html#l00284">284</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>Referenced by <a class="el" href="quaternion_8h-source.html#l00231">csQuaternion::GetAxisAngle()</a>, <a class="el" href="vertexlight_8h-source.html#l00352">csSpotLightProc&lt; AttenuationProc &gt;::PerVertex::PerVertex()</a>, and <a class="el" href="vector3_8h-source.html#l00290">Unit()</a>.</p>

</div>
</div><p>
<a class="anchor" name="678aef7f60ea2869d4924edfbd39c545"></a><!-- doxytag: member="csVector3::UnitAxisClamped" ref="678aef7f60ea2869d4924edfbd39c545" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csVector3::UnitAxisClamped           </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 a version of the vector clamped to closest unit vector (+-xyz). 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00303">303</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="5c1f360feb8a569b066d3c251ea53ffb"></a><!-- doxytag: member="csVector3::operator *" ref="5c1f360feb8a569b066d3c251ea53ffb" args="(int f, const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">int&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="classcsVector3.html">csVector3</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 int. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00170">170</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="7c43330932d0d179d72dd8cf5fdfde79"></a><!-- doxytag: member="csVector3::operator *" ref="7c43330932d0d179d72dd8cf5fdfde79" args="(const csVector3 &amp;v, int f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&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 int. 
<p>

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

</div>
</div><p>
<a class="anchor" name="adddaaa4a319d692e1bbb52b159f7b83"></a><!-- doxytag: member="csVector3::operator *" ref="adddaaa4a319d692e1bbb52b159f7b83" args="(double f, const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">double&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="classcsVector3.html">csVector3</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 double. Upgrade v to DVector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00162">162</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="268b01115d9117ce0ae4b638f3145361"></a><!-- doxytag: member="csVector3::operator *" ref="268b01115d9117ce0ae4b638f3145361" args="(const csVector3 &amp;v, double f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&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 double. Upgrade v to DVector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00158">158</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="fdf18d676633debc32fa1aeb97097062"></a><!-- doxytag: member="csVector3::operator *" ref="fdf18d676633debc32fa1aeb97097062" args="(float f, const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00154">154</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="1a8272b06eec8e8453ee1b080d34468e"></a><!-- doxytag: member="csVector3::operator *" ref="1a8272b06eec8e8453ee1b080d34468e" args="(const csVector3 &amp;v, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00150">150</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="7485c6fc880165de9edc87d8d4f8c6f7"></a><!-- doxytag: member="csVector3::operator *" ref="7485c6fc880165de9edc87d8d4f8c6f7" args="(const csVector3 &amp;v1, const csVector3 &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="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00130">130</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="14effb8e6e631957c158846343cc362e"></a><!-- doxytag: member="csVector3::operator!=" ref="14effb8e6e631957c158846343cc362e" args="(const csVector3 &amp;v1, const csVector3 &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="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00190">190</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="9cf0725e53867457381292b60987f4c0"></a><!-- doxytag: member="csVector3::operator%" ref="9cf0725e53867457381292b60987f4c0" args="(const csVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator%           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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 cross product of two vectors. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00134">134</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="d3d5d09f8b3aaa3cecd6dffa5fc57722"></a><!-- doxytag: member="csVector3::operator+" ref="d3d5d09f8b3aaa3cecd6dffa5fc57722" args="(const csVector3 &amp;v1, const csDVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator+           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsDVector3.html">csDVector3</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 of differing type, raise the <a class="el" href="classcsVector3.html" title="A 3D vector.">csVector3</a> to DVector3. 
<p>

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

</div>
</div><p>
<a class="anchor" name="bfcfd1f73524f02155dca14377deffc1"></a><!-- doxytag: member="csVector3::operator+" ref="bfcfd1f73524f02155dca14377deffc1" args="(const csDVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator+           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsDVector3.html">csDVector3</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="classcsVector3.html">csVector3</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 of differing type, raise the <a class="el" href="classcsVector3.html" title="A 3D vector.">csVector3</a> to DVector3. 
<p>

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

</div>
</div><p>
<a class="anchor" name="4bfd7dd1c1e68ab46a03552cd5fb872a"></a><!-- doxytag: member="csVector3::operator+" ref="4bfd7dd1c1e68ab46a03552cd5fb872a" args="(const csVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator+           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>

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

</div>
</div><p>
<a class="anchor" name="072ff90ee99b3048ab5020803a0d0ff7"></a><!-- doxytag: member="csVector3::operator-" ref="072ff90ee99b3048ab5020803a0d0ff7" args="(const csDVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator-           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsDVector3.html">csDVector3</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="classcsVector3.html">csVector3</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 of differing type, cast to double. 
<p>

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

</div>
</div><p>
<a class="anchor" name="707f5ce11cda15e4e0e22777f6f91031"></a><!-- doxytag: member="csVector3::operator-" ref="707f5ce11cda15e4e0e22777f6f91031" args="(const csVector3 &amp;v1, const csDVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator-           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsDVector3.html">csDVector3</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 of differing type, cast to double. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00122">122</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="8044d79b2baa48f677d88d4aea15e475"></a><!-- doxytag: member="csVector3::operator-" ref="8044d79b2baa48f677d88d4aea15e475" args="(const csVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator-           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00118">118</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="7d8f52709a5520e2b9fa71ae9bdcc7fa"></a><!-- doxytag: member="csVector3::operator/" ref="7d8f52709a5520e2b9fa71ae9bdcc7fa" args="(const csVector3 &amp;v, int f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator/           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&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 int. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00182">182</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4bd0d559e4e019ccead8a36e6f6b13b1"></a><!-- doxytag: member="csVector3::operator/" ref="4bd0d559e4e019ccead8a36e6f6b13b1" args="(const csVector3 &amp;v, double f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsDVector3.html">csDVector3</a> operator/           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&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 double. Upgrade v to DVector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00178">178</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="052b2559d5d577132492d1213bac4ce0"></a><!-- doxytag: member="csVector3::operator/" ref="052b2559d5d577132492d1213bac4ce0" args="(const csVector3 &amp;v, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator/           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00174">174</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="6e1bbeabb9f0f71d3a0816111006c897"></a><!-- doxytag: member="csVector3::operator&lt;" ref="6e1bbeabb9f0f71d3a0816111006c897" args="(const csVector3 &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="classcsVector3.html">csVector3</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="vector3_8h-source.html#l00202">202</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="5a6e8a9dd6eb45cf808d1f11e85e8a05"></a><!-- doxytag: member="csVector3::operator&lt;&lt;" ref="5a6e8a9dd6eb45cf808d1f11e85e8a05" args="(const csVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator&lt;&lt;           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>
Project one vector onto another. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00198">198</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="66e0e8c5f4adc5dc97d9101ed7d087b8"></a><!-- doxytag: member="csVector3::operator==" ref="66e0e8c5f4adc5dc97d9101ed7d087b8" args="(const csVector3 &amp;v1, const csVector3 &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="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00186">186</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="b810d5c75c97a7119cc48f9efb4cfa19"></a><!-- doxytag: member="csVector3::operator&gt;" ref="b810d5c75c97a7119cc48f9efb4cfa19" args="(float f, const csVector3 &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="classcsVector3.html">csVector3</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 less than a small epsilon value. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00206">206</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="457aa88a73812661db71dac5aa422799"></a><!-- doxytag: member="csVector3::operator&gt;&gt;" ref="457aa88a73812661db71dac5aa422799" args="(const csVector3 &amp;v1, const csVector3 &amp;v2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator&gt;&gt;           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</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="classcsVector3.html">csVector3</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>
Project one vector onto another. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00194">194</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="fc081d3bf73f1be6f7134c29f6f61c56"></a><!-- doxytag: member="csVector3::m" ref="fc081d3bf73f1be6f7134c29f6f61c56" args="[3]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classcsVector3.html#fc081d3bf73f1be6f7134c29f6f61c56">csVector3::m</a>[3]          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
All components. 
<p>

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

</div>
</div><p>
<a class="anchor" name="823fdba459ff91e8a5e6834ded7c815f"></a><!-- doxytag: member="csVector3::x" ref="823fdba459ff91e8a5e6834ded7c815f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classcsVector3.html#823fdba459ff91e8a5e6834ded7c815f">csVector3::x</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The X component of the vector. 
<p>

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

<p>Referenced by <a class="el" href="plane3_8h-source.html#l00090">csPlane3::A()</a>, <a class="el" href="box_8h-source.html#l00920">csBox3::AddBoundingBox()</a>, <a class="el" href="box_8h-source.html#l00828">csBox3::AddBoundingVertex()</a>, <a class="el" href="box_8h-source.html#l00858">csBox3::AddBoundingVertexSmart()</a>, <a class="el" href="box_8h-source.html#l00912">csBox3::AddBoundingVertexSmartTest()</a>, <a class="el" href="box_8h-source.html#l00883">csBox3::AddBoundingVertexTest()</a>, <a class="el" href="poly3d_8h-source.html#l00163">csPoly3D::AddVertex()</a>, <a class="el" href="poly3d_8h-source.html#l00374">csVector3Array::AddVertexSmart()</a>, <a class="el" href="plane3_8h-source.html#l00161">csPlane3::Classify()</a>, <a class="el" href="box_8h-source.html#l00794">csBox3::Contains()</a>, <a class="el" href="vector3_8h-source.html#l00142">Cross()</a>, <a class="el" href="vertexlight_8h-source.html#l00149">csLinearAttenuation::csLinearAttenuation()</a>, <a class="el" href="math3d_8h-source.html#l00134">csMath3::Direction3()</a>, <a class="el" href="floatrand_8h-source.html#l00116">csRandomVectorGen::Get()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00180">csPath::GetForwardVector()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00202">csPath::GetInterpolatedForward()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00188">csPath::GetInterpolatedPosition()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00195">csPath::GetInterpolatedUp()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00166">csPath::GetPositionVector()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00173">csPath::GetUpVector()</a>, <a class="el" href="box_8h-source.html#l00779">csBox3::In()</a>, <a class="el" href="glhelper_8h-source.html#l00035">makeGLMatrix()</a>, <a class="el" href="vector3_8h-source.html#l00224">operator+=()</a>, <a class="el" href="vector3_8h-source.html#l00234">operator-=()</a>, <a class="el" href="vector4_8h-source.html#l00343">csVector4::operator=()</a>, <a class="el" href="box_8h-source.html#l00785">csBox3::Overlap()</a>, <a class="el" href="vector3_8h-source.html#l00261">Set()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00159">csPath::SetForwardVector()</a>, <a class="el" href="math3d_8h-source.html#l00110">csMath3::SetMinMax()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00145">csPath::SetPositionVector()</a>, <a class="el" href="types_8h-source.html#l00073">CS::PluginCommon::SoftShader::InterpolateEdgePersp::Setup()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00152">csPath::SetUpVector()</a>, <a class="el" href="shadervar_8h-source.html#l00370">csShaderVariable::SetValue()</a>, and <a class="el" href="math3d_8h-source.html#l00065">csMath3::WhichSide3D()</a>.</p>

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

<p>
The Y component of the vector. 
<p>

<p>Definition at line <a class="el" href="vector3_8h-source.html#l00069">69</a> of file <a class="el" href="vector3_8h-source.html">vector3.h</a>.</p>

<p>Referenced by <a class="el" href="box_8h-source.html#l00920">csBox3::AddBoundingBox()</a>, <a class="el" href="box_8h-source.html#l00836">csBox3::AddBoundingVertex()</a>, <a class="el" href="box_8h-source.html#l00858">csBox3::AddBoundingVertexSmart()</a>, <a class="el" href="box_8h-source.html#l00912">csBox3::AddBoundingVertexSmartTest()</a>, <a class="el" href="box_8h-source.html#l00883">csBox3::AddBoundingVertexTest()</a>, <a class="el" href="poly3d_8h-source.html#l00163">csPoly3D::AddVertex()</a>, <a class="el" href="poly3d_8h-source.html#l00374">csVector3Array::AddVertexSmart()</a>, <a class="el" href="plane3_8h-source.html#l00161">csPlane3::Classify()</a>, <a class="el" href="box_8h-source.html#l00794">csBox3::Contains()</a>, <a class="el" href="vector3_8h-source.html#l00142">Cross()</a>, <a class="el" href="math3d_8h-source.html#l00134">csMath3::Direction3()</a>, <a class="el" href="floatrand_8h-source.html#l00116">csRandomVectorGen::Get()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00180">csPath::GetForwardVector()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00202">csPath::GetInterpolatedForward()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00188">csPath::GetInterpolatedPosition()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00195">csPath::GetInterpolatedUp()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00166">csPath::GetPositionVector()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00173">csPath::GetUpVector()</a>, <a class="el" href="box_8h-source.html#l00779">csBox3::In()</a>, <a class="el" href="glhelper_8h-source.html#l00035">makeGLMatrix()</a>, <a class="el" href="vector3_8h-source.html#l00224">operator+=()</a>, <a class="el" href="vector3_8h-source.html#l00234">operator-=()</a>, <a class="el" href="vector4_8h-source.html#l00343">csVector4::operator=()</a>, <a class="el" href="box_8h-source.html#l00785">csBox3::Overlap()</a>, <a class="el" href="vector3_8h-source.html#l00261">Set()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00159">csPath::SetForwardVector()</a>, <a class="el" href="math3d_8h-source.html#l00110">csMath3::SetMinMax()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00145">csPath::SetPositionVector()</a>, <a class="el" href="types_8h-source.html#l00073">CS::PluginCommon::SoftShader::InterpolateEdgePersp::Setup()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00152">csPath::SetUpVector()</a>, <a class="el" href="shadervar_8h-source.html#l00370">csShaderVariable::SetValue()</a>, and <a class="el" href="math3d_8h-source.html#l00065">csMath3::WhichSide3D()</a>.</p>

</div>
</div><p>
<a class="anchor" name="3f761bd195c7ccec59ea863a87a1ad05"></a><!-- doxytag: member="csVector3::z" ref="3f761bd195c7ccec59ea863a87a1ad05" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classcsVector3.html#3f761bd195c7ccec59ea863a87a1ad05">csVector3::z</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The Z component of the vector. 
<p>

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

<p>Referenced by <a class="el" href="box_8h-source.html#l00920">csBox3::AddBoundingBox()</a>, <a class="el" href="box_8h-source.html#l00836">csBox3::AddBoundingVertex()</a>, <a class="el" href="box_8h-source.html#l00858">csBox3::AddBoundingVertexSmart()</a>, <a class="el" href="box_8h-source.html#l00912">csBox3::AddBoundingVertexSmartTest()</a>, <a class="el" href="box_8h-source.html#l00883">csBox3::AddBoundingVertexTest()</a>, <a class="el" href="poly3d_8h-source.html#l00163">csPoly3D::AddVertex()</a>, <a class="el" href="poly3d_8h-source.html#l00374">csVector3Array::AddVertexSmart()</a>, <a class="el" href="plane3_8h-source.html#l00161">csPlane3::Classify()</a>, <a class="el" href="box_8h-source.html#l00794">csBox3::Contains()</a>, <a class="el" href="vector3_8h-source.html#l00142">Cross()</a>, <a class="el" href="math3d_8h-source.html#l00134">csMath3::Direction3()</a>, <a class="el" href="floatrand_8h-source.html#l00116">csRandomVectorGen::Get()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00180">csPath::GetForwardVector()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00202">csPath::GetInterpolatedForward()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00188">csPath::GetInterpolatedPosition()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00195">csPath::GetInterpolatedUp()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00166">csPath::GetPositionVector()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00173">csPath::GetUpVector()</a>, <a class="el" href="box_8h-source.html#l00779">csBox3::In()</a>, <a class="el" href="glhelper_8h-source.html#l00035">makeGLMatrix()</a>, <a class="el" href="vector3_8h-source.html#l00224">operator+=()</a>, <a class="el" href="vector3_8h-source.html#l00234">operator-=()</a>, <a class="el" href="vector4_8h-source.html#l00343">csVector4::operator=()</a>, <a class="el" href="box_8h-source.html#l00785">csBox3::Overlap()</a>, <a class="el" href="vector3_8h-source.html#l00261">Set()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00159">csPath::SetForwardVector()</a>, <a class="el" href="math3d_8h-source.html#l00110">csMath3::SetMinMax()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00145">csPath::SetPositionVector()</a>, <a class="el" href="types_8h-source.html#l00073">CS::PluginCommon::SoftShader::InterpolateEdgePersp::Setup()</a>, <a class="el" href="csgeom_2path_8h-source.html#l00152">csPath::SetUpVector()</a>, <a class="el" href="shadervar_8h-source.html#l00370">csShaderVariable::SetValue()</a>, and <a class="el" href="math3d_8h-source.html#l00065">csMath3::WhichSide3D()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>csgeom/<a class="el" href="vector3_8h-source.html">vector3.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>