Files
recastnavigation/group__detour.html

425 lines
27 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Recast Navigation: Detour</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Recast Navigation
</div>
<div id="projectbrief">Navigation-mesh Toolset for Games</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('group__detour.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</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 class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">Detour</div> </div>
</div><!--header-->
<div class="contents">
<p>Members in this module are used to create, manipulate, and query navigation meshes.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtPoly.html">dtPoly</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines a polygon within a <a class="el" href="structdtMeshTile.html" title="Defines a navigation mesh tile.">dtMeshTile</a> object. <a href="structdtPoly.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtMeshHeader.html">dtMeshHeader</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides high level information related to a <a class="el" href="structdtMeshTile.html" title="Defines a navigation mesh tile.">dtMeshTile</a> object. <a href="structdtMeshHeader.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtMeshTile.html">dtMeshTile</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines a navigation mesh tile. <a href="structdtMeshTile.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtNavMeshParams.html">dtNavMeshParams</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configuration parameters used to define multi-tile navigation meshes. <a href="structdtNavMeshParams.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtNavMesh.html">dtNavMesh</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A navigation mesh based on tiles of convex polygons. <a href="classdtNavMesh.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtNavMeshCreateParams.html">dtNavMeshCreateParams</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents the source data used to build an navigation mesh tile. <a href="structdtNavMeshCreateParams.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtQueryFilter.html">dtQueryFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines polygon filtering and traversal costs for navigation mesh query operations. <a href="classdtQueryFilter.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtRaycastHit.html">dtRaycastHit</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides information about raycast hit filled by <a class="el" href="classdtNavMeshQuery.html#a7509a4bf31a215f20478c5050ef25913" title="Casts a &#39;walkability&#39; ray along the surface of the navigation mesh from the start position toward the...">dtNavMeshQuery::raycast</a>. <a href="structdtRaycastHit.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtPolyQuery.html">dtPolyQuery</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides custom polygon query behavior. <a href="classdtPolyQuery.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtNavMeshQuery.html">dtNavMeshQuery</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides the ability to perform pathfinding related queries against a navigation mesh. <a href="classdtNavMeshQuery.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtPathCorridor.html">dtPathCorridor</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents a dynamic polygon corridor used to plan agent movement. <a href="classdtPathCorridor.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gab4e0b2257a670c1a800057999612b466"><td class="memItemLeft" align="right" valign="top">typedef unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#gab4e0b2257a670c1a800057999612b466">dtPolyRef</a></td></tr>
<tr class="memdesc:gab4e0b2257a670c1a800057999612b466"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handle to a polygon within a navigation mesh tile. <a href="group__detour.html#gab4e0b2257a670c1a800057999612b466">More...</a><br /></td></tr>
<tr class="separator:gab4e0b2257a670c1a800057999612b466"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7ea56cfe01bd7c34a81d821d94cbeea5"><td class="memItemLeft" align="right" valign="top">typedef unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#ga7ea56cfe01bd7c34a81d821d94cbeea5">dtTileRef</a></td></tr>
<tr class="memdesc:ga7ea56cfe01bd7c34a81d821d94cbeea5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handle to a tile within a navigation mesh. <a href="group__detour.html#ga7ea56cfe01bd7c34a81d821d94cbeea5">More...</a><br /></td></tr>
<tr class="separator:ga7ea56cfe01bd7c34a81d821d94cbeea5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga73648d53c5a414855a2aa264aab9263c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdtNavMesh.html">dtNavMesh</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#ga73648d53c5a414855a2aa264aab9263c">dtAllocNavMesh</a> ()</td></tr>
<tr class="memdesc:ga73648d53c5a414855a2aa264aab9263c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocates a navigation mesh object using the Detour allocator. <a href="group__detour.html#ga73648d53c5a414855a2aa264aab9263c">More...</a><br /></td></tr>
<tr class="separator:ga73648d53c5a414855a2aa264aab9263c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad938af5675a2f62c7c3830b38ea9a184"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#gad938af5675a2f62c7c3830b38ea9a184">dtFreeNavMesh</a> (<a class="el" href="classdtNavMesh.html">dtNavMesh</a> *navmesh)</td></tr>
<tr class="memdesc:gad938af5675a2f62c7c3830b38ea9a184"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees the specified navigation mesh object using the Detour allocator. <a href="group__detour.html#gad938af5675a2f62c7c3830b38ea9a184">More...</a><br /></td></tr>
<tr class="separator:gad938af5675a2f62c7c3830b38ea9a184"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf56ac19e79e5948fdb1051158577e648"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#gaf56ac19e79e5948fdb1051158577e648">dtCreateNavMeshData</a> (<a class="el" href="structdtNavMeshCreateParams.html">dtNavMeshCreateParams</a> *params, unsigned char **outData, int *outDataSize)</td></tr>
<tr class="memdesc:gaf56ac19e79e5948fdb1051158577e648"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds navigation mesh tile data from the provided tile creation data. <a href="group__detour.html#gaf56ac19e79e5948fdb1051158577e648">More...</a><br /></td></tr>
<tr class="separator:gaf56ac19e79e5948fdb1051158577e648"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae547f165feefc955136130c8e22f207a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdtNavMeshQuery.html">dtNavMeshQuery</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#gae547f165feefc955136130c8e22f207a">dtAllocNavMeshQuery</a> ()</td></tr>
<tr class="memdesc:gae547f165feefc955136130c8e22f207a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocates a query object using the Detour allocator. <a href="group__detour.html#gae547f165feefc955136130c8e22f207a">More...</a><br /></td></tr>
<tr class="separator:gae547f165feefc955136130c8e22f207a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24ccc133f15a0aa85f06f1c1ead2e6c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#ga24ccc133f15a0aa85f06f1c1ead2e6c4">dtFreeNavMeshQuery</a> (<a class="el" href="classdtNavMeshQuery.html">dtNavMeshQuery</a> *query)</td></tr>
<tr class="memdesc:ga24ccc133f15a0aa85f06f1c1ead2e6c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees the specified query object using the Detour allocator. <a href="group__detour.html#ga24ccc133f15a0aa85f06f1c1ead2e6c4">More...</a><br /></td></tr>
<tr class="separator:ga24ccc133f15a0aa85f06f1c1ead2e6c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ga8591fdac662dbfabb580de626c64c9f3"><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#ga8591fdac662dbfabb580de626c64c9f3">DT_VERTS_PER_POLYGON</a> = 6</td></tr>
<tr class="memdesc:ga8591fdac662dbfabb580de626c64c9f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum number of vertices per navigation polygon. <a href="group__detour.html#ga8591fdac662dbfabb580de626c64c9f3">More...</a><br /></td></tr>
<tr class="separator:ga8591fdac662dbfabb580de626c64c9f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga954dc85eacf41248ee76968957484a9e"><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__detour.html#ga954dc85eacf41248ee76968957484a9e">DT_MAX_AREAS</a> = 64</td></tr>
<tr class="memdesc:ga954dc85eacf41248ee76968957484a9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum number of user defined area ids. <a href="group__detour.html#ga954dc85eacf41248ee76968957484a9e">More...</a><br /></td></tr>
<tr class="separator:ga954dc85eacf41248ee76968957484a9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
<p>Members in this module are used to create, manipulate, and query navigation meshes. </p>
<p>Members in this module are wrappers around the standard math library.</p>
<dl class="section note"><dt>Note</dt><dd>This is a summary list of members. Use the index or search feature to find minor members. </dd></dl>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="gab4e0b2257a670c1a800057999612b466"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab4e0b2257a670c1a800057999612b466">&#9670;&nbsp;</a></span>dtPolyRef</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__detour.html#gab4e0b2257a670c1a800057999612b466">dtPolyRef</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>A handle to a polygon within a navigation mesh tile. </p>
<dl class="section user"><dt></dt><dd></dd></dl>
<p>Polygon references are subject to the same invalidate/preserve/restore rules that apply to <a class="el" href="group__detour.html#ga7ea56cfe01bd7c34a81d821d94cbeea5" title="A handle to a tile within a navigation mesh.">dtTileRef</a>'s. If the <a class="el" href="group__detour.html#ga7ea56cfe01bd7c34a81d821d94cbeea5" title="A handle to a tile within a navigation mesh.">dtTileRef</a> for the polygon's tile changes, the polygon reference becomes invalid.</p>
<p>Changing a polygon's flags, area id, etc. does not impact its polygon reference. </p>
</div>
</div>
<a id="ga7ea56cfe01bd7c34a81d821d94cbeea5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7ea56cfe01bd7c34a81d821d94cbeea5">&#9670;&nbsp;</a></span>dtTileRef</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__detour.html#ga7ea56cfe01bd7c34a81d821d94cbeea5">dtTileRef</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>A handle to a tile within a navigation mesh. </p>
<dl class="section user"><dt></dt><dd></dd></dl>
<p>The following changes will invalidate a tile reference:</p>
<ul>
<li>The referenced tile has been removed from the navigation mesh.</li>
<li>The navigation mesh has been initialized using a different set of <a class="el" href="structdtNavMeshParams.html" title="Configuration parameters used to define multi-tile navigation meshes.">dtNavMeshParams</a>.</li>
</ul>
<p>A tile reference is preserved/restored if the tile is added to a navigation mesh initialized with the original <a class="el" href="structdtNavMeshParams.html" title="Configuration parameters used to define multi-tile navigation meshes.">dtNavMeshParams</a> and is added at the original reference location. (E.g. The lastRef parameter is used with <a class="el" href="classdtNavMesh.html#a5b5a7c4fa72c08d9a6d4cc4d8cd3bb89" title="Adds a tile to the navigation mesh.">dtNavMesh::addTile</a>.)</p>
<p>Basically, if the storage structure of a tile changes, its associated tile reference changes. </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga73648d53c5a414855a2aa264aab9263c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga73648d53c5a414855a2aa264aab9263c">&#9670;&nbsp;</a></span>dtAllocNavMesh()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdtNavMesh.html">dtNavMesh</a>* dtAllocNavMesh </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocates a navigation mesh object using the Detour allocator. </p>
<dl class="section return"><dt>Returns</dt><dd>A navigation mesh that is ready for initialization, or null on failure. </dd></dl>
</div>
</div>
<a id="gae547f165feefc955136130c8e22f207a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae547f165feefc955136130c8e22f207a">&#9670;&nbsp;</a></span>dtAllocNavMeshQuery()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdtNavMeshQuery.html">dtNavMeshQuery</a>* dtAllocNavMeshQuery </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocates a query object using the Detour allocator. </p>
<dl class="section return"><dt>Returns</dt><dd>An allocated query object, or null on failure. </dd></dl>
</div>
</div>
<a id="gaf56ac19e79e5948fdb1051158577e648"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf56ac19e79e5948fdb1051158577e648">&#9670;&nbsp;</a></span>dtCreateNavMeshData()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dtCreateNavMeshData </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structdtNavMeshCreateParams.html">dtNavMeshCreateParams</a> *&#160;</td>
<td class="paramname"><em>params</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned char **&#160;</td>
<td class="paramname"><em>outData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>outDataSize</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Builds navigation mesh tile data from the provided tile creation data. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">params</td><td>Tile creation data. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">outData</td><td>The resulting tile data. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">outDataSize</td><td>The size of the tile data array. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the tile data was successfully created.</dd></dl>
<dl class="section user"><dt></dt><dd></dd></dl>
<p>The output data array is allocated using the detour allocator (<a class="el" href="DetourAlloc_8h.html#ac7a1c461b037f7cc0cd1b2e480d12920" title="Allocates a memory block.">dtAlloc()</a>). The method used to free the memory will be determined by how the tile is added to the navigation mesh.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classdtNavMesh.html" title="A navigation mesh based on tiles of convex polygons.">dtNavMesh</a>, <a class="el" href="classdtNavMesh.html#a5b5a7c4fa72c08d9a6d4cc4d8cd3bb89" title="Adds a tile to the navigation mesh.">dtNavMesh::addTile()</a> </dd></dl>
</div>
</div>
<a id="gad938af5675a2f62c7c3830b38ea9a184"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad938af5675a2f62c7c3830b38ea9a184">&#9670;&nbsp;</a></span>dtFreeNavMesh()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void dtFreeNavMesh </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdtNavMesh.html">dtNavMesh</a> *&#160;</td>
<td class="paramname"><em>navmesh</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Frees the specified navigation mesh object using the Detour allocator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">navmesh</td><td>A navigation mesh allocated using <a class="el" href="group__detour.html#ga73648d53c5a414855a2aa264aab9263c" title="Allocates a navigation mesh object using the Detour allocator.">dtAllocNavMesh</a></td></tr>
</table>
</dd>
</dl>
<dl class="section user"><dt></dt><dd></dd></dl>
<p>This function will only free the memory for tiles with the <a class="el" href="DetourNavMesh_8h.html#ace45ee22124392a9026eb6266000ca1ca454ad5984fddf654fc291123ada94d1b" title="The navigation mesh owns the tile memory and is responsible for freeing it.">DT_TILE_FREE_DATA</a> flag set. </p>
</div>
</div>
<a id="ga24ccc133f15a0aa85f06f1c1ead2e6c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga24ccc133f15a0aa85f06f1c1ead2e6c4">&#9670;&nbsp;</a></span>dtFreeNavMeshQuery()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void dtFreeNavMeshQuery </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdtNavMeshQuery.html">dtNavMeshQuery</a> *&#160;</td>
<td class="paramname"><em>query</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Frees the specified query object using the Detour allocator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">query</td><td>A query object allocated using <a class="el" href="group__detour.html#gae547f165feefc955136130c8e22f207a" title="Allocates a query object using the Detour allocator.">dtAllocNavMeshQuery</a> </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="ga954dc85eacf41248ee76968957484a9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga954dc85eacf41248ee76968957484a9e">&#9670;&nbsp;</a></span>DT_MAX_AREAS</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int DT_MAX_AREAS = 64</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The maximum number of user defined area ids. </p>
</div>
</div>
<a id="ga8591fdac662dbfabb580de626c64c9f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8591fdac662dbfabb580de626c64c9f3">&#9670;&nbsp;</a></span>DT_VERTS_PER_POLYGON</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int DT_VERTS_PER_POLYGON = 6</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The maximum number of vertices per navigation polygon. </p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.6-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
&nbsp;&nbsp;<a href="https://github.com/recastnavigation/recastnavigation">Project Home</a>
| <a href="./License.txt">Licence (ZLib)</a>
| Copyright 2009 Mikko Mononen
</ul>
</div>
</body>
</html>