| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=9"/>
- <title>Frustum Class Reference</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- <link href="custom.css" rel="stylesheet" type="text/css" />
- <link href="search/search.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="search/search.js"></script>
- <script type="text/javascript">
- $(document).ready(function() { searchBox.OnSelectItem(0); });
- </script>
- </head>
- <body>
- <div id="top"><!-- do not remove this div! -->
- <table class="header" border="0">
- <tbody>
- <tr>
- <td id="logo"><a href="http://gameplay3d.io/"><img src="images/logo.png" alt="gameplay" border="0" height="64px"/></a></td>
- <td width="100%"/>
- <td><a href="http://gameplay3d.io/"><span class="button">overview</span></a></td><td width="12px"/>
- <td><a href="https://github.com/gameplay3d/GamePlay/wiki"><span class="button">wiki</span></a></td><td width="12px"/>
- <td><a href="http://gameplay3d.github.com/GamePlay/api/index.html"><span class="button">api reference</span></a></td><td width="12px"/>
- <td><a href="https://github.com/gameplay3d/GamePlay"><span class="button">download</span></a></td>
- </tr>
- </tbody>
- </table>
- <!-- Generated by Doxygen 1.7.6.1 -->
- <script type="text/javascript">
- var searchBox = new SearchBox("searchBox", "search",false,'Search');
- </script>
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
- <li>
- <div id="MSearchBox" class="MSearchBoxInactive">
- <span class="left">
- <img id="MSearchSelect" src="search/mag_sel.png"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- alt=""/>
- <input type="text" id="MSearchField" value="Search" accesskey="S"
- onfocus="searchBox.OnSearchFieldFocus(true)"
- onblur="searchBox.OnSearchFieldFocus(false)"
- onkeyup="searchBox.OnSearchFieldChange(event)"/>
- </span><span class="right">
- <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
- </span>
- </div>
- </li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Class List</span></a></li>
- <li><a href="classes.html"><span>Class Index</span></a></li>
- <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
- <li><a href="functions.html"><span>Class Members</span></a></li>
- </ul>
- </div>
- <!-- window showing the filter options -->
- <div id="MSearchSelectWindow"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- onkeydown="return searchBox.OnSearchSelectKey(event)">
- <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerator</a></div>
- <!-- iframe showing the search results (closed by default) -->
- <div id="MSearchResultsWindow">
- <iframe src="javascript:void(0)" frameborder="0"
- name="MSearchResults" id="MSearchResults">
- </iframe>
- </div>
- <div id="nav-path" class="navpath">
- <ul>
- <li class="navelem"><b>gameplay</b> </li>
- <li class="navelem"><a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> </li>
- </ul>
- </div>
- </div>
- <div class="header">
- <div class="summary">
- <a href="#pub-methods">Public Member Functions</a> </div>
- <div class="headertitle">
- <div class="title">gameplay::Frustum Class Reference</div> </div>
- </div><!--header-->
- <div class="contents">
- <!-- doxytag: class="gameplay::Frustum" -->
- <p><code>#include <Frustum.h></code></p>
- <p><a href="classgameplay_1_1_frustum-members.html">List of all members.</a></p>
- <table class="memberdecls">
- <tr><td colspan="2"><h2><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a592778a70f00d2e7438481e968208e93">Frustum</a> ()</td></tr>
- <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#ab48e7150951e5247e6901624e3781d65">Frustum</a> (const <a class="el" href="classgameplay_1_1_matrix.html">Matrix</a> &matrix)</td></tr>
- <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a96d45ad30ba1bdf4c3ad91b8ecde6963">Frustum</a> (const <a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> &frustum)</td></tr>
- <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a0e5615de855608f7359364282ee45b73">~Frustum</a> ()</td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#af1bc8533dd9791ab2114552c34b3b1b9">getNear</a> () const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a201a20084dbbd2c1b557ec70a687b8a9">getFar</a> () const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a63da043797d8768e9307459c107e7c56">getLeft</a> () const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#ad6cd6a1803c36662f5c58ff7baf31596">getRight</a> () const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#aa9492ad1056e134d820f5a8cb5a45a90">getBottom</a> () const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#ac9135b4becaea0698c29e5d43cda72a9">getTop</a> () const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#ad1ae967dc50ed4c262af0727cf4a701d">getMatrix</a> (<a class="el" href="classgameplay_1_1_matrix.html">Matrix</a> *dst) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a2570da2f955daec8fb44a95fe25af049">getCorners</a> (<a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> *corners) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a50294637b164c85b164da850cfde0a35">getNearCorners</a> (<a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> *corners) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#ad15680f12579a40d94600aec6cff7384">getFarCorners</a> (<a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> *corners) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">intersects</a> (const <a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> &point) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#aec557e485662234c4d36b616d11b4ab0">intersects</a> (float x, float y, float z) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a36cccd1d74cec754ffc8d4a239f60521">intersects</a> (const <a class="el" href="classgameplay_1_1_bounding_sphere.html">BoundingSphere</a> &sphere) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#a30b343395cbc095eb70144e1f81caf03">intersects</a> (const <a class="el" href="classgameplay_1_1_bounding_box.html">BoundingBox</a> &box) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#af0e15b937bf1146962b02045d2be03ef">intersects</a> (const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> &plane) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#aba6a55c86c0821f2ed58afdabc0a0a1e">intersects</a> (const <a class="el" href="classgameplay_1_1_ray.html">Ray</a> &ray) const </td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#afb4092a1bcf95d34f095a339c070bf1d">set</a> (const <a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> &frustum)</td></tr>
- <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgameplay_1_1_frustum.html#ac0d38971b895ff8955d0ad9ea8b5fbb5">set</a> (const <a class="el" href="classgameplay_1_1_matrix.html">Matrix</a> &matrix)</td></tr>
- </table>
- <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
- <div class="textblock"><p>Defines a 3-dimensional frustum.</p>
- <p>A frustum in computer graphics is generally a volume of 3D space, defined as the part of a rectangular pyramid that lies between two planes perpendicular to its center line. A frustum is often used to represent what a "camera" sees in your 3D space.</p>
- <p>The <a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> class allows you to define a bounding frustum using a combined matrix that is generally the product of a view matrix and a projection matrix.</p>
- <p>You can query a <a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> object for any one of its bounding planes, for its corners, and for whether it intersects with a given object. Since objects that don't intersect with your view frustum generally don't need to be rendered, culling them quickly can save you a lot of rendering time. </p>
- </div><hr/><h2>Constructor & Destructor Documentation</h2>
- <a class="anchor" id="a592778a70f00d2e7438481e968208e93"></a><!-- doxytag: member="gameplay::Frustum::Frustum" ref="a592778a70f00d2e7438481e968208e93" args="()" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgameplay_1_1_frustum.html#a592778a70f00d2e7438481e968208e93">gameplay::Frustum::Frustum</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Constructs the default frustum (corresponds to the identity matrix). </p>
- </div>
- </div>
- <a class="anchor" id="ab48e7150951e5247e6901624e3781d65"></a><!-- doxytag: member="gameplay::Frustum::Frustum" ref="ab48e7150951e5247e6901624e3781d65" args="(const Matrix &matrix)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgameplay_1_1_frustum.html#a592778a70f00d2e7438481e968208e93">gameplay::Frustum::Frustum</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_matrix.html">Matrix</a> & </td>
- <td class="paramname"><em>matrix</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Constructs a new frustum from the specified view projection matrix.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">matrix</td><td>The view projection matrix to create this frustum from. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="a96d45ad30ba1bdf4c3ad91b8ecde6963"></a><!-- doxytag: member="gameplay::Frustum::Frustum" ref="a96d45ad30ba1bdf4c3ad91b8ecde6963" args="(const Frustum &frustum)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgameplay_1_1_frustum.html#a592778a70f00d2e7438481e968208e93">gameplay::Frustum::Frustum</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> & </td>
- <td class="paramname"><em>frustum</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Constructs a new frustum from the given frustum.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">frustum</td><td>The frustum to create this frustum from. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="a0e5615de855608f7359364282ee45b73"></a><!-- doxytag: member="gameplay::Frustum::~Frustum" ref="a0e5615de855608f7359364282ee45b73" args="()" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgameplay_1_1_frustum.html#a0e5615de855608f7359364282ee45b73">gameplay::Frustum::~Frustum</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Destructor. </p>
- </div>
- </div>
- <hr/><h2>Member Function Documentation</h2>
- <a class="anchor" id="aa9492ad1056e134d820f5a8cb5a45a90"></a><!-- doxytag: member="gameplay::Frustum::getBottom" ref="aa9492ad1056e134d820f5a8cb5a45a90" args="() const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a>& <a class="el" href="classgameplay_1_1_frustum.html#aa9492ad1056e134d820f5a8cb5a45a90">gameplay::Frustum::getBottom</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the bottom plane of the frustum.</p>
- <dl class="return"><dt><b>Returns:</b></dt><dd>bottom The bottom plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a2570da2f955daec8fb44a95fe25af049"></a><!-- doxytag: member="gameplay::Frustum::getCorners" ref="a2570da2f955daec8fb44a95fe25af049" args="(Vector3 *corners) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void <a class="el" href="classgameplay_1_1_frustum.html#a2570da2f955daec8fb44a95fe25af049">gameplay::Frustum::getCorners</a> </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> * </td>
- <td class="paramname"><em>corners</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the corners of the frustum in the specified array.</p>
- <p>The corners are stored in the following order: (N-near, F-far, L-left, R-right, B-bottom, T-top) LTN, LBN, RBN, RTN, RTF, RBF, LBF, LTF.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">corners</td><td>The array (of at least size 8) to store the corners in. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="a201a20084dbbd2c1b557ec70a687b8a9"></a><!-- doxytag: member="gameplay::Frustum::getFar" ref="a201a20084dbbd2c1b557ec70a687b8a9" args="() const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a>& <a class="el" href="classgameplay_1_1_frustum.html#a201a20084dbbd2c1b557ec70a687b8a9">gameplay::Frustum::getFar</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the far plane of the frustum.</p>
- <dl class="return"><dt><b>Returns:</b></dt><dd>far The far plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ad15680f12579a40d94600aec6cff7384"></a><!-- doxytag: member="gameplay::Frustum::getFarCorners" ref="ad15680f12579a40d94600aec6cff7384" args="(Vector3 *corners) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void <a class="el" href="classgameplay_1_1_frustum.html#ad15680f12579a40d94600aec6cff7384">gameplay::Frustum::getFarCorners</a> </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> * </td>
- <td class="paramname"><em>corners</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the corners of the frustum's far plane in the specified array.</p>
- <p>The corners are stored in the following order: right-top, right-bottom, left-bottom, left-top.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">corners</td><td>The array (of at least size 4) to store the corners in. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="a63da043797d8768e9307459c107e7c56"></a><!-- doxytag: member="gameplay::Frustum::getLeft" ref="a63da043797d8768e9307459c107e7c56" args="() const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a>& <a class="el" href="classgameplay_1_1_frustum.html#a63da043797d8768e9307459c107e7c56">gameplay::Frustum::getLeft</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the left plane of the frustum.</p>
- <dl class="return"><dt><b>Returns:</b></dt><dd>left The left plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ad1ae967dc50ed4c262af0727cf4a701d"></a><!-- doxytag: member="gameplay::Frustum::getMatrix" ref="ad1ae967dc50ed4c262af0727cf4a701d" args="(Matrix *dst) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void <a class="el" href="classgameplay_1_1_frustum.html#ad1ae967dc50ed4c262af0727cf4a701d">gameplay::Frustum::getMatrix</a> </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgameplay_1_1_matrix.html">Matrix</a> * </td>
- <td class="paramname"><em>dst</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the projection matrix corresponding to the frustum in the specified matrix.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">dst</td><td>The projection matrix to copy into. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="af1bc8533dd9791ab2114552c34b3b1b9"></a><!-- doxytag: member="gameplay::Frustum::getNear" ref="af1bc8533dd9791ab2114552c34b3b1b9" args="() const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a>& <a class="el" href="classgameplay_1_1_frustum.html#af1bc8533dd9791ab2114552c34b3b1b9">gameplay::Frustum::getNear</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the near plane of the frustum.</p>
- <dl class="return"><dt><b>Returns:</b></dt><dd>near The near plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a50294637b164c85b164da850cfde0a35"></a><!-- doxytag: member="gameplay::Frustum::getNearCorners" ref="a50294637b164c85b164da850cfde0a35" args="(Vector3 *corners) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void <a class="el" href="classgameplay_1_1_frustum.html#a50294637b164c85b164da850cfde0a35">gameplay::Frustum::getNearCorners</a> </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> * </td>
- <td class="paramname"><em>corners</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the corners of the frustum's near plane in the specified array.</p>
- <p>The corners are stored in the following order: left-top, left-bottom, right-bottom, right-top.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">corners</td><td>The array (of at least size 4) to store the corners in. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="ad6cd6a1803c36662f5c58ff7baf31596"></a><!-- doxytag: member="gameplay::Frustum::getRight" ref="ad6cd6a1803c36662f5c58ff7baf31596" args="() const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a>& <a class="el" href="classgameplay_1_1_frustum.html#ad6cd6a1803c36662f5c58ff7baf31596">gameplay::Frustum::getRight</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the right plane of the frustum.</p>
- <dl class="return"><dt><b>Returns:</b></dt><dd>right The right plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ac9135b4becaea0698c29e5d43cda72a9"></a><!-- doxytag: member="gameplay::Frustum::getTop" ref="ac9135b4becaea0698c29e5d43cda72a9" args="() const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a>& <a class="el" href="classgameplay_1_1_frustum.html#ac9135b4becaea0698c29e5d43cda72a9">gameplay::Frustum::getTop</a> </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Gets the top plane of the frustum.</p>
- <dl class="return"><dt><b>Returns:</b></dt><dd>top The top plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a796be313f7c0d1e4f9e604eca635cd33"></a><!-- doxytag: member="gameplay::Frustum::intersects" ref="a796be313f7c0d1e4f9e604eca635cd33" args="(const Vector3 &point) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool <a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">gameplay::Frustum::intersects</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_vector3.html">Vector3</a> & </td>
- <td class="paramname"><em>point</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Tests whether this frustum intersects the specified point.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">point</td><td>The point to test intersection with.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="return"><dt><b>Returns:</b></dt><dd>true if the specified point intersects this frustum; false otherwise. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="aec557e485662234c4d36b616d11b4ab0"></a><!-- doxytag: member="gameplay::Frustum::intersects" ref="aec557e485662234c4d36b616d11b4ab0" args="(float x, float y, float z) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool <a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">gameplay::Frustum::intersects</a> </td>
- <td>(</td>
- <td class="paramtype">float </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">float </td>
- <td class="paramname"><em>y</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">float </td>
- <td class="paramname"><em>z</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Tests whether this frustum intersects the specified point.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">x</td><td>The x coordinate. </td></tr>
- <tr><td class="paramname">y</td><td>The y coordinate. </td></tr>
- <tr><td class="paramname">z</td><td>The z coordinate.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="return"><dt><b>Returns:</b></dt><dd>true if the specified point intersects this frustum; false otherwise. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a36cccd1d74cec754ffc8d4a239f60521"></a><!-- doxytag: member="gameplay::Frustum::intersects" ref="a36cccd1d74cec754ffc8d4a239f60521" args="(const BoundingSphere &sphere) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool <a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">gameplay::Frustum::intersects</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_bounding_sphere.html">BoundingSphere</a> & </td>
- <td class="paramname"><em>sphere</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Tests whether this frustum intersects the specified bounding sphere.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">sphere</td><td>The bounding sphere to test intersection with.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="return"><dt><b>Returns:</b></dt><dd>true if the specified bounding sphere intersects this frustum; false otherwise. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a30b343395cbc095eb70144e1f81caf03"></a><!-- doxytag: member="gameplay::Frustum::intersects" ref="a30b343395cbc095eb70144e1f81caf03" args="(const BoundingBox &box) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool <a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">gameplay::Frustum::intersects</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_bounding_box.html">BoundingBox</a> & </td>
- <td class="paramname"><em>box</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Tests whether this frustum intersects the specified bounding box.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">box</td><td>The bounding box to test intersection with.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="return"><dt><b>Returns:</b></dt><dd>true if the specified bounding box intersects this frustum; false otherwise. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="af0e15b937bf1146962b02045d2be03ef"></a><!-- doxytag: member="gameplay::Frustum::intersects" ref="af0e15b937bf1146962b02045d2be03ef" args="(const Plane &plane) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">float <a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">gameplay::Frustum::intersects</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_plane.html">Plane</a> & </td>
- <td class="paramname"><em>plane</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Tests whether this frustum intersects the specified plane.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">plane</td><td>The plane to test intersection with.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="classgameplay_1_1_plane.html#ae1efc1fd96443343d3a0a289ec8f3858">Plane::INTERSECTS_BACK</a> if the specified bounding object is in the negative half-space of this plane, <a class="el" href="classgameplay_1_1_plane.html#abb4fdfda5773a0d6e7c31d80e5f33a6e">Plane::INTERSECTS_FRONT</a> if it is in the positive half-space of this plane, and <a class="el" href="classgameplay_1_1_plane.html#a4120d77f30efdb5274bc5a7a4ae87dd1">Plane::INTERSECTS_INTERSECTING</a> if it intersects this plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="aba6a55c86c0821f2ed58afdabc0a0a1e"></a><!-- doxytag: member="gameplay::Frustum::intersects" ref="aba6a55c86c0821f2ed58afdabc0a0a1e" args="(const Ray &ray) const " -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">float <a class="el" href="classgameplay_1_1_frustum.html#a796be313f7c0d1e4f9e604eca635cd33">gameplay::Frustum::intersects</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_ray.html">Ray</a> & </td>
- <td class="paramname"><em>ray</em></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Tests whether this frustum intersects the specified ray.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">ray</td><td>The ray to test intersection with.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="classgameplay_1_1_plane.html#ae1efc1fd96443343d3a0a289ec8f3858">Plane::INTERSECTS_BACK</a> if the specified ray is in the negative half-space of this plane, <a class="el" href="classgameplay_1_1_plane.html#abb4fdfda5773a0d6e7c31d80e5f33a6e">Plane::INTERSECTS_FRONT</a> if it is in the positive half-space of this plane, and <a class="el" href="classgameplay_1_1_plane.html#a4120d77f30efdb5274bc5a7a4ae87dd1">Plane::INTERSECTS_INTERSECTING</a> if it intersects this plane. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="afb4092a1bcf95d34f095a339c070bf1d"></a><!-- doxytag: member="gameplay::Frustum::set" ref="afb4092a1bcf95d34f095a339c070bf1d" args="(const Frustum &frustum)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void <a class="el" href="classgameplay_1_1_frustum.html#afb4092a1bcf95d34f095a339c070bf1d">gameplay::Frustum::set</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_frustum.html">Frustum</a> & </td>
- <td class="paramname"><em>frustum</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Sets this frustum to the specified frustum.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">frustum</td><td>The frustum to set to. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="ac0d38971b895ff8955d0ad9ea8b5fbb5"></a><!-- doxytag: member="gameplay::Frustum::set" ref="ac0d38971b895ff8955d0ad9ea8b5fbb5" args="(const Matrix &matrix)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void <a class="el" href="classgameplay_1_1_frustum.html#afb4092a1bcf95d34f095a339c070bf1d">gameplay::Frustum::set</a> </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgameplay_1_1_matrix.html">Matrix</a> & </td>
- <td class="paramname"><em>matrix</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Sets the frustum to the frustum corresponding to the specified view projection matrix.</p>
- <dl class="params"><dt><b>Parameters:</b></dt><dd>
- <table class="params">
- <tr><td class="paramname">matrix</td><td>The view projection matrix. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- </div><!-- contents -->
- <!-- window showing the filter options -->
- <div id="MSearchSelectWindow"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- onkeydown="return searchBox.OnSearchSelectKey(event)">
- <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerator</a></div>
- <!-- iframe showing the search results (closed by default) -->
- <div id="MSearchResultsWindow">
- <iframe src="javascript:void(0)" frameborder="0"
- name="MSearchResults" id="MSearchResults">
- </iframe>
- </div>
- <hr class="footer"/><address class="footer"><small>
- Generated on Sat Jan 24 2015 15:29:42 for gameplay by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.7.6.1
- </small></address>
- </body>
- </html>
|