Files
bullet3/Extras/GIMPACT/docs/html/gim__linear__math_8h.html
2007-06-22 17:32:28 +00:00

349 lines
47 KiB
HTML
Executable File
Raw Blame History

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>GIMPACT: C:/desarrollo/GIMPACT/GIMPACT/include/GIMPACT/core/gim_linear_math.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.2 -->
<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="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File&nbsp;List</span></a></li>
<li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
</ul>
</div>
<h1>C:/desarrollo/GIMPACT/GIMPACT/include/GIMPACT/core/gim_linear_math.h File Reference</h1><code>#include &quot;<a class="el" href="gim__math_8h.html">GIMPACT/core/gim_math.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="gim__geom__types_8h.html">GIMPACT/core/gim_geom_types.h</a>&quot;</code><br>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gddf58d1ce6189c2674dfb47337769528">VEC_ZERO_2</a>(a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Zero out a 2D vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gddf58d1ce6189c2674dfb47337769528"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g256521a640c383008e193f9176a027e1">VEC_ZERO</a>(a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Zero out a 3D vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g256521a640c383008e193f9176a027e1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gc18fd79af4df8ad7fbd8ba680907ce4f">VEC_ZERO_4</a>(a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Zero out a 4D vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gc18fd79af4df8ad7fbd8ba680907ce4f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g5e169abbe1945f72fefcca0753423d0e">VEC_COPY_2</a>(b, a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector copy. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g5e169abbe1945f72fefcca0753423d0e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gb8018413588afb0cdef51bdca35eab54">VEC_COPY</a>(b, a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy 3D vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gb8018413588afb0cdef51bdca35eab54"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf8a88efd3659cb1e690bddfd574a957a">VEC_COPY_4</a>(b, a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy 4D vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf8a88efd3659cb1e690bddfd574a957a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g1627bf177f521a219326496e5028bb9e">VEC_SWAP</a>(b, a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">VECTOR SWAP. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g1627bf177f521a219326496e5028bb9e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gb38ab2ae5a06f6f72c51b3dabfc33f39">VEC_DIFF_2</a>(v21, v2, v1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector difference. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gb38ab2ae5a06f6f72c51b3dabfc33f39"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gc4e09c9fff7d73d4ecf1db099342c65d">VEC_DIFF</a>(v21, v2, v1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector difference. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gc4e09c9fff7d73d4ecf1db099342c65d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0b556d87d73349dde19eed529a1cbd5a">VEC_DIFF_4</a>(v21, v2, v1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector difference. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0b556d87d73349dde19eed529a1cbd5a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g089606db0ab70a66120efd7a410593f0">VEC_SUM_2</a>(v21, v2, v1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector sum. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g089606db0ab70a66120efd7a410593f0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#ga9725f7431087ce9b1109f5c38c04144">VEC_SUM</a>(v21, v2, v1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector sum. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#ga9725f7431087ce9b1109f5c38c04144"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gaba3e7af10af69624564bb12d0e30e5e">VEC_SUM_4</a>(v21, v2, v1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector sum. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gaba3e7af10af69624564bb12d0e30e5e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g401cf4a4fa9736b8a5554a0bb3399258">VEC_SCALE_2</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">scalar times vector <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g401cf4a4fa9736b8a5554a0bb3399258"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g935e5dd288737b2d4a7976ce1e807079">VEC_SCALE</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">scalar times vector <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g935e5dd288737b2d4a7976ce1e807079"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gc77b8e88e6e280b2d073064bdb450a91">VEC_SCALE_4</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">scalar times vector <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gc77b8e88e6e280b2d073064bdb450a91"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0792dad57046c2929570c66881a104e6">VEC_ACCUM_2</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">accumulate scaled vector <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0792dad57046c2929570c66881a104e6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf47bd58c55125c39d4d029ed13e82381">VEC_ACCUM</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">accumulate scaled vector <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf47bd58c55125c39d4d029ed13e82381"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gd10421d1984f07375e5f38c9975500eb">VEC_ACCUM_4</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">accumulate scaled vector <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gd10421d1984f07375e5f38c9975500eb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g4c6bdb143aded86fa23b3c8ca545d355">VEC_DOT_2</a>(a, b)&nbsp;&nbsp;&nbsp;((a)[0]*(b)[0] + (a)[1]*(b)[1])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector dot product. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g4c6bdb143aded86fa23b3c8ca545d355"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g645feed3e0b3876242458c9d848ed0fe">VEC_DOT</a>(a, b)&nbsp;&nbsp;&nbsp;((a)[0]*(b)[0] + (a)[1]*(b)[1] + (a)[2]*(b)[2])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector dot product. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g645feed3e0b3876242458c9d848ed0fe"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0dc5b3c33b9936287fd9c855b7c6f790">VEC_DOT_4</a>(a, b)&nbsp;&nbsp;&nbsp;((a)[0]*(b)[0] + (a)[1]*(b)[1] + (a)[2]*(b)[2] + (a)[3]*(b)[3])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector dot product. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0dc5b3c33b9936287fd9c855b7c6f790"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g686ce28d56604506f31d76c740ac4fd1">VEC_IMPACT_SQ</a>(bsq, direction, position)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">vector impact parameter (squared) <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g686ce28d56604506f31d76c740ac4fd1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gd6bcb52872cdbf5db316c54fb59a2555">VEC_IMPACT</a>(bsq, direction, position)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">vector impact parameter <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gd6bcb52872cdbf5db316c54fb59a2555"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g8854c1374762d046f1e17063d03d88fc">VEC_LENGTH_2</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g8854c1374762d046f1e17063d03d88fc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gbddd1b010b51bfbbca0118e314e14d4b">VEC_LENGTH</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gbddd1b010b51bfbbca0118e314e14d4b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#ga2a0b317baba0ab8d6990d0e2815f6b5">VEC_LENGTH_4</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#ga2a0b317baba0ab8d6990d0e2815f6b5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g21417383be15c936d993d4305661a679">VEC_INV_LENGTH_2</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector inv length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g21417383be15c936d993d4305661a679"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf74611859738f2ee03f54aaaabbb5605">VEC_INV_LENGTH</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector inv length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf74611859738f2ee03f54aaaabbb5605"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gec4f953602d2225b220839a98f2e867d">VEC_INV_LENGTH_4</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector inv length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gec4f953602d2225b220839a98f2e867d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g3056965a0818b773d7689b763e9bdd66">VEC_DISTANCE</a>(_len, _va, _vb)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">distance between two points <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g3056965a0818b773d7689b763e9bdd66"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf2f0691024d52985be12009ef63b3c2c">VEC_CONJUGATE_LENGTH</a>(a, l)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf2f0691024d52985be12009ef63b3c2c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gaf654e98fc3d0b65b965f942c031752a">VEC_NORMALIZE</a>(a)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector length. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gaf654e98fc3d0b65b965f942c031752a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g569442381b1cd2b7b288e1ff49745b8c">VEC_RENORMALIZE</a>(a, newlen)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set Vector size. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g569442381b1cd2b7b288e1ff49745b8c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g62c7e1537c9e1017df8bf2e1836bf56a">VEC_CROSS</a>(c, a, b)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector cross. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g62c7e1537c9e1017df8bf2e1836bf56a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g39371ce4be712dc5bfa5378de512702d">VEC_PERPENDICULAR</a>(vp, v, n)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g507ad6241454e073b2ae5f1458dccb8d">VEC_PARALLEL</a>(vp, v, n)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g0749ff2ca1b3ba2e08184602f70150f6">VEC_PROJECT</a>(vp, v, n)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gf15b5a9ed8acec92bd4713ef1b1bfd8d">VEC_UNPROJECT</a>(vp, v, n)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gcdf9e604cbb083daea0e04913aa61cb8">VEC_REFLECT</a>(vr, v, n)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#ge9733a52284dec62a34d0b10c284073a">VEC_BLEND_AB</a>(vr, sa, a, sb, b)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#gd27cffb9482010310ff7c635ce8ce4d5">VEC_BLEND</a>(vr, a, b, s)&nbsp;&nbsp;&nbsp;VEC_BLEND_AB(vr,(1-s),a,s,b)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g69de6d8e92b63988713483be1cc49ce6">VEC_SET3</a>(a, b, op, c)&nbsp;&nbsp;&nbsp;a[0]=b[0] op c[0]; a[1]=b[1] op c[1]; a[2]=b[2] op c[2];</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g5cf3a6b009f0d134790408b080c21d05">VEC_MAYOR_COORD</a>(vec, maxc)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finds the bigger cartesian coordinate from a vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g5cf3a6b009f0d134790408b080c21d05"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g2eb685c9915f558e63d161380ec34aec">VEC_MINOR_AXES</a>(vec, i0, i1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finds the 2 smallest cartesian coordinates from a vector. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g2eb685c9915f558e63d161380ec34aec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g980cf61350276c9f5ebcca5ed5ce6650">VEC_EQUAL</a>(v1, v2)&nbsp;&nbsp;&nbsp;(v1[0]==v2[0]&amp;&amp;v1[1]==v2[1]&amp;&amp;v1[2]==v2[2])</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g27202c61bcf7b92218591035457de0c4">VEC_NEAR_EQUAL</a>(v1, v2)&nbsp;&nbsp;&nbsp;(GIM_NEAR_EQUAL(v1[0],v2[0])&amp;&amp;GIM_NEAR_EQUAL(v1[1],v2[1])&amp;&amp;GIM_NEAR_EQUAL(v1[2],v2[2]))</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g934bf58d1881fa181f4349af08cd9eb0">X_AXIS_CROSS_VEC</a>(dst, src)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector cross. <a href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g934bf58d1881fa181f4349af08cd9eb0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#geaa68dfd0dd0dd9712a9023218a60b83">Y_AXIS_CROSS_VEC</a>(dst, src)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___v_e_c_t_o_r___o_p_e_r_a_t_i_o_n_s.html#g4689354d9839fe579cb8981d5742ec43">Z_AXIS_CROSS_VEC</a>(dst, src)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g9a8b051ee847cf08e9943b789d64d5da">IDENTIFY_MATRIX_3X3</a>(m)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">initialize matrix <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g9a8b051ee847cf08e9943b789d64d5da"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g05cdc9a8e37a073833c440cdc3ff8f21">IDENTIFY_MATRIX_4X4</a>(m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gbdd6663619451330826ff1e50f7dd30e">ZERO_MATRIX_4X4</a>(m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g97f13f6a9b3d9a79ccfae419a0cf0442">ROTX_CS</a>(m, cosine, sine)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g8155e824c26fe9f08bbc11e99ea02918">ROTY_CS</a>(m, cosine, sine)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g56d43b79e2a5c5a2a9ee8cc492dc0b61">ROTZ_CS</a>(m, cosine, sine)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g5c71128db3d0ed0cab23a3f92f49f512">COPY_MATRIX_2X2</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g245d28046e41b9127986528b33438808">COPY_MATRIX_2X3</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g0ad73eb682c43f1b86e857adb16481a5">COPY_MATRIX_3X3</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g557ab2ccd78b2e0b4d9fedd170feecdd">COPY_MATRIX_4X4</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gceefcd77a177bd5d29d5e541362d8523">TRANSPOSE_MATRIX_2X2</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gb6322f456acd6d33c6a012f1d3fb1813">TRANSPOSE_MATRIX_3X3</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g4285afe0c1ae9b3295d8cc01600017db">TRANSPOSE_MATRIX_4X4</a>(b, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g6c062577486a5e2bc00f8157cf4bc91e">SCALE_MATRIX_2X2</a>(b, s, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gda79e57bb50f3462d529eb76a874fd90">SCALE_MATRIX_3X3</a>(b, s, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g002709faf3385bba39223633ac164516">SCALE_MATRIX_4X4</a>(b, s, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g50332409e55187557084eaa37a1709a5">SCALE_VEC_MATRIX_2X2</a>(b, svec, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g612535b1ef17792bedb46b1bf53af248">SCALE_VEC_MATRIX_3X3</a>(b, svec, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g6dedf3f3dbef533902e7a0b06b442c49">SCALE_VEC_MATRIX_4X4</a>(b, svec, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g36b29e5b5fec80fcf3c02debd862da6d">ACCUM_SCALE_MATRIX_2X2</a>(b, s, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g20236088a6f15ed7d46cae5a0af9cc66">ACCUM_SCALE_MATRIX_3X3</a>(b, s, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gfbeca3527bd6e128b0b2b48b4a9ade68">ACCUM_SCALE_MATRIX_4X4</a>(b, s, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gc6d218a39e9b02f7cf6b9a7128284ab0">MATRIX_PRODUCT_2X2</a>(c, a, b)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gdc21637da1b9cedc06163f9af0e7788c">MATRIX_PRODUCT_3X3</a>(c, a, b)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gde4986deaf57f63ee5a4eb258414b72a">MATRIX_PRODUCT_4X4</a>(c, a, b)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g1347689289a110df968af8c15214c9bc">MAT_DOT_VEC_2X2</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g77509be9c7e6c17a775579cdadc3d48e">MAT_DOT_VEC_3X3</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga2b6f05b321f62577afc3c2e9684dbfe">MAT_DOT_VEC_4X4</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gfc3955bb0e49e39384e5df5554abe219">MAT_DOT_VEC_3X4</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gf099ab2260f399c4aae1b396765ecdd1">VEC_DOT_MAT_3X3</a>(p, v, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g6e2005ba7b646fadaaf57e593fdca191">MAT_DOT_VEC_2X3</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g58abfcd6bbdf0560a9bb35aa4175f711">MAT_TRANSFORM_PLANE_4X4</a>(pout, m, plane)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transform a plane. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g58abfcd6bbdf0560a9bb35aa4175f711"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gf871ca40e7e5ffdfd1821660e3961400">INV_TRANSP_MAT_DOT_VEC_2X2</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g97401951b8b624cfe5652522cfbfe65b">NORM_XFORM_2X2</a>(p, m, v)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g9313c2056bf737b573236e47abdaba9f">OUTER_PRODUCT_2X2</a>(m, v, t)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ge52945c1b7dc37230e31afe3ccc8737a">OUTER_PRODUCT_3X3</a>(m, v, t)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g31d5809366000ad6cc01d32bf994a0ba">OUTER_PRODUCT_4X4</a>(m, v, t)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g219b9f66b90352ed522890fe9420f4d1">ACCUM_OUTER_PRODUCT_2X2</a>(m, v, t)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g7fc096e2ff11c3bfe12c0db5f6733bd9">ACCUM_OUTER_PRODUCT_3X3</a>(m, v, t)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g5a116959cf47480f3e49d6837d47fb7a">ACCUM_OUTER_PRODUCT_4X4</a>(m, v, t)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g6f2a2ecb339390b21705b189a4cf65e9">DETERMINANT_2X2</a>(d, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gbaf7637d47710887964c835e29ad46b8">DETERMINANT_3X3</a>(d, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ge8fec7bfd2283940181f8e050f06dfa8">COFACTOR_4X4_IJ</a>(fac, m, i, j)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gc4e78a794775d0904337c7a4ce3569cd">DETERMINANT_4X4</a>(d, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g0c7f47fe924f32ef9be08595d87b2c53">COFACTOR_2X2</a>(a, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gc94b2e37161475c18640af73fa574c9a">COFACTOR_3X3</a>(a, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g84a345f6ac1e7eaffb43aaaaa20d3f54">COFACTOR_4X4</a>(a, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g6a5ec2c825cc7704fadc69ec4cb97fc1">ADJOINT_2X2</a>(a, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g62a11c86880325eeba50adc516983fcd">ADJOINT_3X3</a>(a, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g0040ecc26b5a2a5b6d7f46315d59e2ce">ADJOINT_4X4</a>(a, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gf4743de34fb47fcd15cada5f49aa1a8b">SCALE_ADJOINT_2X2</a>(a, s, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g08c6edf3ef72cbe5836da42d63696460">SCALE_ADJOINT_3X3</a>(a, s, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga023680dd19a4837fa370a5bc90fbc62">SCALE_ADJOINT_4X4</a>(a, s, m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g66f8f8c7c3d3ac25bd69f51a3109ddb0">INVERT_2X2</a>(b, det, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga6a79e64e50e8c70998b6a49e863c557">INVERT_3X3</a>(b, det, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g6ed4e9769b805b686a3f2d189b90067d">INVERT_4X4</a>(b, det, a)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g123c79dfb36acfa922c3525728b4d48d">MAT_GET_ROW</a>(mat, vec3, rowindex)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) row of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g123c79dfb36acfa922c3525728b4d48d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gdd7ad274f2996e62dd1436563b207c48">MAT_GET_ROW2</a>(mat, vec2, rowindex)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the tuple(2) row of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gdd7ad274f2996e62dd1436563b207c48"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga72c7af5b15f5e57dde9a02a7a7c3f07">MAT_GET_ROW4</a>(mat, vec4, rowindex)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the quad (4) row of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga72c7af5b15f5e57dde9a02a7a7c3f07"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g15b0c6a6e9db982215f6fb0566e8b666">MAT_GET_COL</a>(mat, vec3, colindex)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g15b0c6a6e9db982215f6fb0566e8b666"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gb0ab423328356a52b03676f737c4ad53">MAT_GET_COL2</a>(mat, vec2, colindex)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the tuple(2) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gb0ab423328356a52b03676f737c4ad53"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g9984145161a4f636cb1ee4f6f2509d2f">MAT_GET_COL4</a>(mat, vec4, colindex)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the quad (4) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g9984145161a4f636cb1ee4f6f2509d2f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g2677e39b950b572631838cc849f7140e">MAT_GET_X</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g2677e39b950b572631838cc849f7140e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gd293879383d89bbb78c689ab37b484ac">MAT_GET_Y</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gd293879383d89bbb78c689ab37b484ac"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g91e1043786f137bdd687ac6535de0e33">MAT_GET_Z</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g91e1043786f137bdd687ac6535de0e33"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g0a8d39f2682204f04133f1f17388fdd0">MAT_SET_X</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g0a8d39f2682204f04133f1f17388fdd0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gf008fcd9bfe801c91a9d0feca02a7587">MAT_SET_Y</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gf008fcd9bfe801c91a9d0feca02a7587"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g3f960fcf0ab237da3840f942cabdd16e">MAT_SET_Z</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g3f960fcf0ab237da3840f942cabdd16e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g17a4199c48e414577a63bffb68eb80a8">MAT_GET_TRANSLATION</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g17a4199c48e414577a63bffb68eb80a8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g5803b2075d988d1c7f49d20c7d2e03be">MAT_SET_TRANSLATION</a>(mat, vec3)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the triple(3) col of a transform matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g5803b2075d988d1c7f49d20c7d2e03be"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g47e40a107f8a62fe7fb028b4b92a51c0">MAT_DOT_ROW</a>(mat, vec3, rowindex)&nbsp;&nbsp;&nbsp;(vec3[0]*mat[rowindex][0] + vec3[1]*mat[rowindex][1] + vec3[2]*mat[rowindex][2])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the dot product between a vec3f and the row of a matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g47e40a107f8a62fe7fb028b4b92a51c0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gc6b8bdf794b6ce3c7d414379933f09c3">MAT_DOT_ROW2</a>(mat, vec2, rowindex)&nbsp;&nbsp;&nbsp;(vec2[0]*mat[rowindex][0] + vec2[1]*mat[rowindex][1])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the dot product between a vec2f and the row of a matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gc6b8bdf794b6ce3c7d414379933f09c3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g80c3de739bbcbffcc9d037943a17fb18">MAT_DOT_ROW4</a>(mat, vec4, rowindex)&nbsp;&nbsp;&nbsp;(vec4[0]*mat[rowindex][0] + vec4[1]*mat[rowindex][1] + vec4[2]*mat[rowindex][2] + vec4[3]*mat[rowindex][3])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the dot product between a vec4f and the row of a matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g80c3de739bbcbffcc9d037943a17fb18"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga461a89f97e69d8c98784c2c106664e5">MAT_DOT_COL</a>(mat, vec3, colindex)&nbsp;&nbsp;&nbsp;(vec3[0]*mat[0][colindex] + vec3[1]*mat[1][colindex] + vec3[2]*mat[2][colindex])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the dot product between a vec3f and the col of a matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#ga461a89f97e69d8c98784c2c106664e5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g460fbd6631a114654c6e51af775d146c">MAT_DOT_COL2</a>(mat, vec2, colindex)&nbsp;&nbsp;&nbsp;(vec2[0]*mat[0][colindex] + vec2[1]*mat[1][colindex])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the dot product between a vec2f and the col of a matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g460fbd6631a114654c6e51af775d146c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gdd74d080de7f33fc70354faa933bac45">MAT_DOT_COL4</a>(mat, vec4, colindex)&nbsp;&nbsp;&nbsp;(vec4[0]*mat[0][colindex] + vec4[1]*mat[1][colindex] + vec4[2]*mat[2][colindex] + vec4[3]*mat[3][colindex])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the dot product between a vec4f and the col of a matrix. <a href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#gdd74d080de7f33fc70354faa933bac45"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_t_r_i_x___o_p_e_r_a_t_i_o_n_s.html#g5b924b21f033ee45b8397d7ff3783a5f">INV_MAT_DOT_VEC_3X3</a>(p, m, v)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Francisco Le<4C>n N<>jera Type Independant Vector and matrix operations. </dd></dl>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 13 16:58:21 2007 for GIMPACT by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.2 </small></address>
</body>
</html>