<!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"/>
<meta name="generator" content="Doxygen 1.8.3.1"/>
<title>Chipmunk2D Pro API Reference: cpBody</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">Chipmunk2D Pro API Reference
 <span id="projectnumber">7.0.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.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><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</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><!-- top -->
<!-- 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><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Properties</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Pages</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 class="header">
<div class="summary">
<a href="#typedef-members">Typedefs</a> |
<a href="#enum-members">Enumerations</a> |
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">cpBody</div> </div>
</div><!--header-->
<div class="contents">
<p>Chipmunk's rigid body type.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga728eb52bef6367e8e33abff7dba0a089"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga728eb52bef6367e8e33abff7dba0a089"></a>
typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga728eb52bef6367e8e33abff7dba0a089">cpBodyVelocityFunc</a> )(<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> gravity, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> damping, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> dt)</td></tr>
<tr class="memdesc:ga728eb52bef6367e8e33abff7dba0a089"><td class="mdescLeft"> </td><td class="mdescRight">Rigid body velocity update function type. <br/></td></tr>
<tr class="separator:ga728eb52bef6367e8e33abff7dba0a089"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga4f84c8fc20fcb9918d1553e6dc29ffbd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4f84c8fc20fcb9918d1553e6dc29ffbd"></a>
typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga4f84c8fc20fcb9918d1553e6dc29ffbd">cpBodyPositionFunc</a> )(<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> dt)</td></tr>
<tr class="memdesc:ga4f84c8fc20fcb9918d1553e6dc29ffbd"><td class="mdescLeft"> </td><td class="mdescRight">Rigid body position update function type. <br/></td></tr>
<tr class="separator:ga4f84c8fc20fcb9918d1553e6dc29ffbd"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga2a71c91a297ece9ab06101df4b726645"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2a71c91a297ece9ab06101df4b726645"></a>
typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga2a71c91a297ece9ab06101df4b726645">cpBodyShapeIteratorFunc</a> )(<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_shape.html">cpShape</a> *shape, void *data)</td></tr>
<tr class="memdesc:ga2a71c91a297ece9ab06101df4b726645"><td class="mdescLeft"> </td><td class="mdescRight">Body/shape iterator callback function type. <br/></td></tr>
<tr class="separator:ga2a71c91a297ece9ab06101df4b726645"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga79c674e7767d6ff8769a9676404f589b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga79c674e7767d6ff8769a9676404f589b"></a>
typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga79c674e7767d6ff8769a9676404f589b">cpBodyConstraintIteratorFunc</a> )(<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_constraint.html">cpConstraint</a> *constraint, void *data)</td></tr>
<tr class="memdesc:ga79c674e7767d6ff8769a9676404f589b"><td class="mdescLeft"> </td><td class="mdescRight">Body/constraint iterator callback function type. <br/></td></tr>
<tr class="separator:ga79c674e7767d6ff8769a9676404f589b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gacdd17a9f98ca6e6c088b72f7d5f32ea3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacdd17a9f98ca6e6c088b72f7d5f32ea3"></a>
typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gacdd17a9f98ca6e6c088b72f7d5f32ea3">cpBodyArbiterIteratorFunc</a> )(<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_arbiter.html">cpArbiter</a> *arbiter, void *data)</td></tr>
<tr class="memdesc:gacdd17a9f98ca6e6c088b72f7d5f32ea3"><td class="mdescLeft"> </td><td class="mdescRight">Body/arbiter iterator callback function type. <br/></td></tr>
<tr class="separator:gacdd17a9f98ca6e6c088b72f7d5f32ea3"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga3581b128fd3e2734952aeac8545fd5ca"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga3581b128fd3e2734952aeac8545fd5ca">cpBodyType</a> { <a class="el" href="group__cp_body.html#gga3581b128fd3e2734952aeac8545fd5caa443c53c7b27e64799ee0eba728e60db6">CP_BODY_TYPE_DYNAMIC</a>,
<a class="el" href="group__cp_body.html#gga3581b128fd3e2734952aeac8545fd5caa95e6c8d1ff2714d17bc4f2258407e58d">CP_BODY_TYPE_KINEMATIC</a>,
<a class="el" href="group__cp_body.html#gga3581b128fd3e2734952aeac8545fd5caaa594879f082bbabce4bd16944f73456b">CP_BODY_TYPE_STATIC</a>
}</td></tr>
<tr class="separator:ga3581b128fd3e2734952aeac8545fd5ca"><td class="memSeparator" colspan="2"> </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:gab0a8b6afcd8468017a858b465e2add2a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab0a8b6afcd8468017a858b465e2add2a"></a>
CP_EXPORT <a class="el" href="structcp_body.html">cpBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gab0a8b6afcd8468017a858b465e2add2a">cpBodyAlloc</a> (void)</td></tr>
<tr class="memdesc:gab0a8b6afcd8468017a858b465e2add2a"><td class="mdescLeft"> </td><td class="mdescRight">Allocate a <a class="el" href="structcp_body.html">cpBody</a>. <br/></td></tr>
<tr class="separator:gab0a8b6afcd8468017a858b465e2add2a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga78d4405017bd20418ae9e8dc6a081184"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga78d4405017bd20418ae9e8dc6a081184"></a>
CP_EXPORT <a class="el" href="structcp_body.html">cpBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga78d4405017bd20418ae9e8dc6a081184">cpBodyInit</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> mass, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> moment)</td></tr>
<tr class="memdesc:ga78d4405017bd20418ae9e8dc6a081184"><td class="mdescLeft"> </td><td class="mdescRight">Initialize a <a class="el" href="structcp_body.html">cpBody</a>. <br/></td></tr>
<tr class="separator:ga78d4405017bd20418ae9e8dc6a081184"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaef447a337f267c19060a9d80e4edd7b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaef447a337f267c19060a9d80e4edd7b8"></a>
CP_EXPORT <a class="el" href="structcp_body.html">cpBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gaef447a337f267c19060a9d80e4edd7b8">cpBodyNew</a> (<a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> mass, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> moment)</td></tr>
<tr class="memdesc:gaef447a337f267c19060a9d80e4edd7b8"><td class="mdescLeft"> </td><td class="mdescRight">Allocate and initialize a <a class="el" href="structcp_body.html">cpBody</a>. <br/></td></tr>
<tr class="separator:gaef447a337f267c19060a9d80e4edd7b8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gacc49a0d0a771a8d873ccd7ee4106e9f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacc49a0d0a771a8d873ccd7ee4106e9f4"></a>
CP_EXPORT <a class="el" href="structcp_body.html">cpBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gacc49a0d0a771a8d873ccd7ee4106e9f4">cpBodyNewKinematic</a> (void)</td></tr>
<tr class="memdesc:gacc49a0d0a771a8d873ccd7ee4106e9f4"><td class="mdescLeft"> </td><td class="mdescRight">Allocate and initialize a <a class="el" href="structcp_body.html">cpBody</a>, and set it as a kinematic body. <br/></td></tr>
<tr class="separator:gacc49a0d0a771a8d873ccd7ee4106e9f4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaea14fca32e4f71bf50a0baf4af82463c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaea14fca32e4f71bf50a0baf4af82463c"></a>
CP_EXPORT <a class="el" href="structcp_body.html">cpBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gaea14fca32e4f71bf50a0baf4af82463c">cpBodyNewStatic</a> (void)</td></tr>
<tr class="memdesc:gaea14fca32e4f71bf50a0baf4af82463c"><td class="mdescLeft"> </td><td class="mdescRight">Allocate and initialize a <a class="el" href="structcp_body.html">cpBody</a>, and set it as a static body. <br/></td></tr>
<tr class="separator:gaea14fca32e4f71bf50a0baf4af82463c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gad1c5b4732223132e2e6f2cd25adea056"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad1c5b4732223132e2e6f2cd25adea056"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gad1c5b4732223132e2e6f2cd25adea056">cpBodyDestroy</a> (<a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gad1c5b4732223132e2e6f2cd25adea056"><td class="mdescLeft"> </td><td class="mdescRight">Destroy a <a class="el" href="structcp_body.html">cpBody</a>. <br/></td></tr>
<tr class="separator:gad1c5b4732223132e2e6f2cd25adea056"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gac7189e8502b0583a6bd6633b450fad0d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac7189e8502b0583a6bd6633b450fad0d"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gac7189e8502b0583a6bd6633b450fad0d">cpBodyFree</a> (<a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gac7189e8502b0583a6bd6633b450fad0d"><td class="mdescLeft"> </td><td class="mdescRight">Destroy and free a <a class="el" href="structcp_body.html">cpBody</a>. <br/></td></tr>
<tr class="separator:gac7189e8502b0583a6bd6633b450fad0d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga23741f9682e268913d9f6f8a72b64cf0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga23741f9682e268913d9f6f8a72b64cf0"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga23741f9682e268913d9f6f8a72b64cf0">cpBodyActivate</a> (<a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga23741f9682e268913d9f6f8a72b64cf0"><td class="mdescLeft"> </td><td class="mdescRight">Wake up a sleeping or idle body. <br/></td></tr>
<tr class="separator:ga23741f9682e268913d9f6f8a72b64cf0"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gabf84834a51b76230ecc83f90890559eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabf84834a51b76230ecc83f90890559eb"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gabf84834a51b76230ecc83f90890559eb">cpBodyActivateStatic</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_shape.html">cpShape</a> *filter)</td></tr>
<tr class="memdesc:gabf84834a51b76230ecc83f90890559eb"><td class="mdescLeft"> </td><td class="mdescRight">Wake up any sleeping or idle bodies touching a static body. <br/></td></tr>
<tr class="separator:gabf84834a51b76230ecc83f90890559eb"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gad19cfc0a8e8a96fedf723b165d32a108"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad19cfc0a8e8a96fedf723b165d32a108"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gad19cfc0a8e8a96fedf723b165d32a108">cpBodySleep</a> (<a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gad19cfc0a8e8a96fedf723b165d32a108"><td class="mdescLeft"> </td><td class="mdescRight">Force a body to fall asleep immediately. <br/></td></tr>
<tr class="separator:gad19cfc0a8e8a96fedf723b165d32a108"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaae5b2ea3123f996b4db92e63e5f55513"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaae5b2ea3123f996b4db92e63e5f55513"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gaae5b2ea3123f996b4db92e63e5f55513">cpBodySleepWithGroup</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_body.html">cpBody</a> *group)</td></tr>
<tr class="memdesc:gaae5b2ea3123f996b4db92e63e5f55513"><td class="mdescLeft"> </td><td class="mdescRight">Force a body to fall asleep immediately along with other bodies in a group. <br/></td></tr>
<tr class="separator:gaae5b2ea3123f996b4db92e63e5f55513"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga1bbf47da33d1a2260866f2a257e1b4fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1bbf47da33d1a2260866f2a257e1b4fa"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gabc5e752c48f3449ca26ef413ecbd647e">cpBool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga1bbf47da33d1a2260866f2a257e1b4fa">cpBodyIsSleeping</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga1bbf47da33d1a2260866f2a257e1b4fa"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if the body is sleeping. <br/></td></tr>
<tr class="separator:ga1bbf47da33d1a2260866f2a257e1b4fa"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gab29fcc05a72380a8ae4cb09af6def230"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab29fcc05a72380a8ae4cb09af6def230"></a>
CP_EXPORT <a class="el" href="group__cp_body.html#ga3581b128fd3e2734952aeac8545fd5ca">cpBodyType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gab29fcc05a72380a8ae4cb09af6def230">cpBodyGetType</a> (<a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gab29fcc05a72380a8ae4cb09af6def230"><td class="mdescLeft"> </td><td class="mdescRight">Get the type of the body. <br/></td></tr>
<tr class="separator:gab29fcc05a72380a8ae4cb09af6def230"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga0ad914398f84d9096a7292f5e55e5771"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0ad914398f84d9096a7292f5e55e5771"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga0ad914398f84d9096a7292f5e55e5771">cpBodySetType</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__cp_body.html#ga3581b128fd3e2734952aeac8545fd5ca">cpBodyType</a> type)</td></tr>
<tr class="memdesc:ga0ad914398f84d9096a7292f5e55e5771"><td class="mdescLeft"> </td><td class="mdescRight">Set the type of the body. <br/></td></tr>
<tr class="separator:ga0ad914398f84d9096a7292f5e55e5771"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga89651e80a253e8b53155bc9f13fa5718"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89651e80a253e8b53155bc9f13fa5718"></a>
CP_EXPORT <a class="el" href="structcp_space.html">cpSpace</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga89651e80a253e8b53155bc9f13fa5718">cpBodyGetSpace</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga89651e80a253e8b53155bc9f13fa5718"><td class="mdescLeft"> </td><td class="mdescRight">Get the space this body is added to. <br/></td></tr>
<tr class="separator:ga89651e80a253e8b53155bc9f13fa5718"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga1b9825773096740ac0a6b8c6320629bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1b9825773096740ac0a6b8c6320629bf"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga1b9825773096740ac0a6b8c6320629bf">cpBodyGetMass</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga1b9825773096740ac0a6b8c6320629bf"><td class="mdescLeft"> </td><td class="mdescRight">Get the mass of the body. <br/></td></tr>
<tr class="separator:ga1b9825773096740ac0a6b8c6320629bf"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gac9177db2517a408213b37b8d071c9732"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac9177db2517a408213b37b8d071c9732"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gac9177db2517a408213b37b8d071c9732">cpBodySetMass</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> m)</td></tr>
<tr class="memdesc:gac9177db2517a408213b37b8d071c9732"><td class="mdescLeft"> </td><td class="mdescRight">Set the mass of the body. <br/></td></tr>
<tr class="separator:gac9177db2517a408213b37b8d071c9732"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gada72b5ece7fe990a15516ab1d2a59fd2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gada72b5ece7fe990a15516ab1d2a59fd2"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gada72b5ece7fe990a15516ab1d2a59fd2">cpBodyGetMoment</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gada72b5ece7fe990a15516ab1d2a59fd2"><td class="mdescLeft"> </td><td class="mdescRight">Get the moment of inertia of the body. <br/></td></tr>
<tr class="separator:gada72b5ece7fe990a15516ab1d2a59fd2"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gab50551755486b071328e4a44a989cced"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab50551755486b071328e4a44a989cced"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gab50551755486b071328e4a44a989cced">cpBodySetMoment</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> i)</td></tr>
<tr class="memdesc:gab50551755486b071328e4a44a989cced"><td class="mdescLeft"> </td><td class="mdescRight">Set the moment of inertia of the body. <br/></td></tr>
<tr class="separator:gab50551755486b071328e4a44a989cced"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaf339449a9bbdd7341e4567a58e021523"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf339449a9bbdd7341e4567a58e021523"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gaf339449a9bbdd7341e4567a58e021523">cpBodyGetPosition</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gaf339449a9bbdd7341e4567a58e021523"><td class="mdescLeft"> </td><td class="mdescRight">Set the position of a body. <br/></td></tr>
<tr class="separator:gaf339449a9bbdd7341e4567a58e021523"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga959d9f215f1102cfc0ad6e9271c64ba4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga959d9f215f1102cfc0ad6e9271c64ba4"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga959d9f215f1102cfc0ad6e9271c64ba4">cpBodySetPosition</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> pos)</td></tr>
<tr class="memdesc:ga959d9f215f1102cfc0ad6e9271c64ba4"><td class="mdescLeft"> </td><td class="mdescRight">Set the position of the body. <br/></td></tr>
<tr class="separator:ga959d9f215f1102cfc0ad6e9271c64ba4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga32c08449fc0c120086b20f821d582a1f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga32c08449fc0c120086b20f821d582a1f"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga32c08449fc0c120086b20f821d582a1f">cpBodyGetCenterOfGravity</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga32c08449fc0c120086b20f821d582a1f"><td class="mdescLeft"> </td><td class="mdescRight">Get the offset of the center of gravity in body local coordinates. <br/></td></tr>
<tr class="separator:ga32c08449fc0c120086b20f821d582a1f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga85057b92d52ce18f6442c82d6fbb4f2c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga85057b92d52ce18f6442c82d6fbb4f2c"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga85057b92d52ce18f6442c82d6fbb4f2c">cpBodySetCenterOfGravity</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> cog)</td></tr>
<tr class="memdesc:ga85057b92d52ce18f6442c82d6fbb4f2c"><td class="mdescLeft"> </td><td class="mdescRight">Set the offset of the center of gravity in body local coordinates. <br/></td></tr>
<tr class="separator:ga85057b92d52ce18f6442c82d6fbb4f2c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gad7b8c4ed9d76d9eb139e925d5f1c09e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad7b8c4ed9d76d9eb139e925d5f1c09e5"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gad7b8c4ed9d76d9eb139e925d5f1c09e5">cpBodyGetVelocity</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gad7b8c4ed9d76d9eb139e925d5f1c09e5"><td class="mdescLeft"> </td><td class="mdescRight">Get the velocity of the body. <br/></td></tr>
<tr class="separator:gad7b8c4ed9d76d9eb139e925d5f1c09e5"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gacf91e39f46b062dba71d750f806aa60c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacf91e39f46b062dba71d750f806aa60c"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gacf91e39f46b062dba71d750f806aa60c">cpBodySetVelocity</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> velocity)</td></tr>
<tr class="memdesc:gacf91e39f46b062dba71d750f806aa60c"><td class="mdescLeft"> </td><td class="mdescRight">Set the velocity of the body. <br/></td></tr>
<tr class="separator:gacf91e39f46b062dba71d750f806aa60c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga8be8f23f2dd41bf20a23b41e87232f46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8be8f23f2dd41bf20a23b41e87232f46"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga8be8f23f2dd41bf20a23b41e87232f46">cpBodyGetForce</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga8be8f23f2dd41bf20a23b41e87232f46"><td class="mdescLeft"> </td><td class="mdescRight">Get the force applied to the body for the next time step. <br/></td></tr>
<tr class="separator:ga8be8f23f2dd41bf20a23b41e87232f46"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga475392f72dee32071e0248c492afc342"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga475392f72dee32071e0248c492afc342"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga475392f72dee32071e0248c492afc342">cpBodySetForce</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> force)</td></tr>
<tr class="memdesc:ga475392f72dee32071e0248c492afc342"><td class="mdescLeft"> </td><td class="mdescRight">Set the force applied to the body for the next time step. <br/></td></tr>
<tr class="separator:ga475392f72dee32071e0248c492afc342"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gae61b861f4de0179abbec6bbe32b88c0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae61b861f4de0179abbec6bbe32b88c0c"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gae61b861f4de0179abbec6bbe32b88c0c">cpBodyGetAngle</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gae61b861f4de0179abbec6bbe32b88c0c"><td class="mdescLeft"> </td><td class="mdescRight">Get the angle of the body. <br/></td></tr>
<tr class="separator:gae61b861f4de0179abbec6bbe32b88c0c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gacdb6ef07e0efedbde6f7742fb805e0e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacdb6ef07e0efedbde6f7742fb805e0e2"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gacdb6ef07e0efedbde6f7742fb805e0e2">cpBodySetAngle</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> a)</td></tr>
<tr class="memdesc:gacdb6ef07e0efedbde6f7742fb805e0e2"><td class="mdescLeft"> </td><td class="mdescRight">Set the angle of a body. <br/></td></tr>
<tr class="separator:gacdb6ef07e0efedbde6f7742fb805e0e2"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga68852fe11b09c4dd14385f7f5e4454bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga68852fe11b09c4dd14385f7f5e4454bf"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga68852fe11b09c4dd14385f7f5e4454bf">cpBodyGetAngularVelocity</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga68852fe11b09c4dd14385f7f5e4454bf"><td class="mdescLeft"> </td><td class="mdescRight">Get the angular velocity of the body. <br/></td></tr>
<tr class="separator:ga68852fe11b09c4dd14385f7f5e4454bf"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gacc650639383006ae40657883b9ecf02d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacc650639383006ae40657883b9ecf02d"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gacc650639383006ae40657883b9ecf02d">cpBodySetAngularVelocity</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> angularVelocity)</td></tr>
<tr class="memdesc:gacc650639383006ae40657883b9ecf02d"><td class="mdescLeft"> </td><td class="mdescRight">Set the angular velocity of the body. <br/></td></tr>
<tr class="separator:gacc650639383006ae40657883b9ecf02d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga77bde17091dff1496e695fbba26037bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga77bde17091dff1496e695fbba26037bb"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga77bde17091dff1496e695fbba26037bb">cpBodyGetTorque</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga77bde17091dff1496e695fbba26037bb"><td class="mdescLeft"> </td><td class="mdescRight">Get the torque applied to the body for the next time step. <br/></td></tr>
<tr class="separator:ga77bde17091dff1496e695fbba26037bb"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gade0bd4162880703b6e2f7a5de6a2fd0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gade0bd4162880703b6e2f7a5de6a2fd0c"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gade0bd4162880703b6e2f7a5de6a2fd0c">cpBodySetTorque</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> torque)</td></tr>
<tr class="memdesc:gade0bd4162880703b6e2f7a5de6a2fd0c"><td class="mdescLeft"> </td><td class="mdescRight">Set the torque applied to the body for the next time step. <br/></td></tr>
<tr class="separator:gade0bd4162880703b6e2f7a5de6a2fd0c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga064d1ba194075ebfe2b5aa45b56a800f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga064d1ba194075ebfe2b5aa45b56a800f"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga064d1ba194075ebfe2b5aa45b56a800f">cpBodyGetRotation</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga064d1ba194075ebfe2b5aa45b56a800f"><td class="mdescLeft"> </td><td class="mdescRight">Get the rotation vector of the body. (The x basis vector of it's transform.) <br/></td></tr>
<tr class="separator:ga064d1ba194075ebfe2b5aa45b56a800f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaec65efba933eb1072cc9c1088e15ba1f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaec65efba933eb1072cc9c1088e15ba1f"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#ga2ac2c3c31e21893941f9e4f8ee279447">cpDataPointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gaec65efba933eb1072cc9c1088e15ba1f">cpBodyGetUserData</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:gaec65efba933eb1072cc9c1088e15ba1f"><td class="mdescLeft"> </td><td class="mdescRight">Get the user data pointer assigned to the body. <br/></td></tr>
<tr class="separator:gaec65efba933eb1072cc9c1088e15ba1f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gab2bb264a606f865e3aaff1536b1d8de8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab2bb264a606f865e3aaff1536b1d8de8"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gab2bb264a606f865e3aaff1536b1d8de8">cpBodySetUserData</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#ga2ac2c3c31e21893941f9e4f8ee279447">cpDataPointer</a> userData)</td></tr>
<tr class="memdesc:gab2bb264a606f865e3aaff1536b1d8de8"><td class="mdescLeft"> </td><td class="mdescRight">Set the user data pointer assigned to the body. <br/></td></tr>
<tr class="separator:gab2bb264a606f865e3aaff1536b1d8de8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gafb735af90ab6087215af8efbebca771c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafb735af90ab6087215af8efbebca771c"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gafb735af90ab6087215af8efbebca771c">cpBodySetVelocityUpdateFunc</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__cp_body.html#ga728eb52bef6367e8e33abff7dba0a089">cpBodyVelocityFunc</a> velocityFunc)</td></tr>
<tr class="memdesc:gafb735af90ab6087215af8efbebca771c"><td class="mdescLeft"> </td><td class="mdescRight">Set the callback used to update a body's velocity. <br/></td></tr>
<tr class="separator:gafb735af90ab6087215af8efbebca771c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaa3c5a0ad4bfa91f4e24fb558c743fdba"><td class="memItemLeft" align="right" valign="top">CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gaa3c5a0ad4bfa91f4e24fb558c743fdba">cpBodySetPositionUpdateFunc</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__cp_body.html#ga4f84c8fc20fcb9918d1553e6dc29ffbd">cpBodyPositionFunc</a> positionFunc)</td></tr>
<tr class="memdesc:gaa3c5a0ad4bfa91f4e24fb558c743fdba"><td class="mdescLeft"> </td><td class="mdescRight">Set the callback used to update a body's position. <a href="#gaa3c5a0ad4bfa91f4e24fb558c743fdba">More...</a><br/></td></tr>
<tr class="separator:gaa3c5a0ad4bfa91f4e24fb558c743fdba"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga159fab7ed8170ccba8cfe66a9c97a4ac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga159fab7ed8170ccba8cfe66a9c97a4ac"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga159fab7ed8170ccba8cfe66a9c97a4ac">cpBodyUpdateVelocity</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> gravity, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> damping, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> dt)</td></tr>
<tr class="memdesc:ga159fab7ed8170ccba8cfe66a9c97a4ac"><td class="mdescLeft"> </td><td class="mdescRight">Default velocity integration function.. <br/></td></tr>
<tr class="separator:ga159fab7ed8170ccba8cfe66a9c97a4ac"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga20c279044f835290b0eb24dd4ff451ac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga20c279044f835290b0eb24dd4ff451ac"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga20c279044f835290b0eb24dd4ff451ac">cpBodyUpdatePosition</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> dt)</td></tr>
<tr class="memdesc:ga20c279044f835290b0eb24dd4ff451ac"><td class="mdescLeft"> </td><td class="mdescRight">Default position integration function. <br/></td></tr>
<tr class="separator:ga20c279044f835290b0eb24dd4ff451ac"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga35e470ae1d4c0df38fe7145d029f8399"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga35e470ae1d4c0df38fe7145d029f8399"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga35e470ae1d4c0df38fe7145d029f8399">cpBodyLocalToWorld</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body, const <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga35e470ae1d4c0df38fe7145d029f8399"><td class="mdescLeft"> </td><td class="mdescRight">Convert body relative/local coordinates to absolute/world coordinates. <br/></td></tr>
<tr class="separator:ga35e470ae1d4c0df38fe7145d029f8399"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga1a098b8788c6d910a8048300ac3f5c77"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1a098b8788c6d910a8048300ac3f5c77"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga1a098b8788c6d910a8048300ac3f5c77">cpBodyWorldToLocal</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body, const <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga1a098b8788c6d910a8048300ac3f5c77"><td class="mdescLeft"> </td><td class="mdescRight">Convert body absolute/world coordinates to relative/local coordinates. <br/></td></tr>
<tr class="separator:ga1a098b8788c6d910a8048300ac3f5c77"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga94ce4fa01218cbec17338829804c1025"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga94ce4fa01218cbec17338829804c1025"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga94ce4fa01218cbec17338829804c1025">cpBodyApplyForceAtWorldPoint</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> force, <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga94ce4fa01218cbec17338829804c1025"><td class="mdescLeft"> </td><td class="mdescRight">Apply a force to a body. Both the force and point are expressed in world coordinates. <br/></td></tr>
<tr class="separator:ga94ce4fa01218cbec17338829804c1025"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga3441a367681abd6074fa2fe351038c66"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3441a367681abd6074fa2fe351038c66"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga3441a367681abd6074fa2fe351038c66">cpBodyApplyForceAtLocalPoint</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> force, <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga3441a367681abd6074fa2fe351038c66"><td class="mdescLeft"> </td><td class="mdescRight">Apply a force to a body. Both the force and point are expressed in body local coordinates. <br/></td></tr>
<tr class="separator:ga3441a367681abd6074fa2fe351038c66"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga279494c5ddcfd7d76ec23ab7906d99dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga279494c5ddcfd7d76ec23ab7906d99dd"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga279494c5ddcfd7d76ec23ab7906d99dd">cpBodyApplyImpulseAtWorldPoint</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> impulse, <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga279494c5ddcfd7d76ec23ab7906d99dd"><td class="mdescLeft"> </td><td class="mdescRight">Apply an impulse to a body. Both the impulse and point are expressed in world coordinates. <br/></td></tr>
<tr class="separator:ga279494c5ddcfd7d76ec23ab7906d99dd"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga0bd09fbbf2a3260b7cda569dacec0a33"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0bd09fbbf2a3260b7cda569dacec0a33"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga0bd09fbbf2a3260b7cda569dacec0a33">cpBodyApplyImpulseAtLocalPoint</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> impulse, <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga0bd09fbbf2a3260b7cda569dacec0a33"><td class="mdescLeft"> </td><td class="mdescRight">Apply an impulse to a body. Both the impulse and point are expressed in body local coordinates. <br/></td></tr>
<tr class="separator:ga0bd09fbbf2a3260b7cda569dacec0a33"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gac53993c244cf2f792e6ae096b50ea9c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac53993c244cf2f792e6ae096b50ea9c3"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gac53993c244cf2f792e6ae096b50ea9c3">cpBodyGetVelocityAtWorldPoint</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:gac53993c244cf2f792e6ae096b50ea9c3"><td class="mdescLeft"> </td><td class="mdescRight">Get the velocity on a body (in world units) at a point on the body in world coordinates. <br/></td></tr>
<tr class="separator:gac53993c244cf2f792e6ae096b50ea9c3"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga5ce88dc62ccd4a7dffe59d0fa217f61e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5ce88dc62ccd4a7dffe59d0fa217f61e"></a>
CP_EXPORT <a class="el" href="structcp_vect.html">cpVect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga5ce88dc62ccd4a7dffe59d0fa217f61e">cpBodyGetVelocityAtLocalPoint</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="structcp_vect.html">cpVect</a> point)</td></tr>
<tr class="memdesc:ga5ce88dc62ccd4a7dffe59d0fa217f61e"><td class="mdescLeft"> </td><td class="mdescRight">Get the velocity on a body (in world units) at a point on the body in local coordinates. <br/></td></tr>
<tr class="separator:ga5ce88dc62ccd4a7dffe59d0fa217f61e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga97f83b89ca7faa47a4862aa1eade34cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga97f83b89ca7faa47a4862aa1eade34cc"></a>
CP_EXPORT <a class="el" href="group__basic_types.html#gac1ed65573e035bf892505768c852d8d3">cpFloat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga97f83b89ca7faa47a4862aa1eade34cc">cpBodyKineticEnergy</a> (const <a class="el" href="structcp_body.html">cpBody</a> *body)</td></tr>
<tr class="memdesc:ga97f83b89ca7faa47a4862aa1eade34cc"><td class="mdescLeft"> </td><td class="mdescRight">Get the amount of kinetic energy contained by the body. <br/></td></tr>
<tr class="separator:ga97f83b89ca7faa47a4862aa1eade34cc"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga4c8ab091fe6f38b6d55192170a031bf3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4c8ab091fe6f38b6d55192170a031bf3"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga4c8ab091fe6f38b6d55192170a031bf3">cpBodyEachShape</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__cp_body.html#ga2a71c91a297ece9ab06101df4b726645">cpBodyShapeIteratorFunc</a> func, void *data)</td></tr>
<tr class="memdesc:ga4c8ab091fe6f38b6d55192170a031bf3"><td class="mdescLeft"> </td><td class="mdescRight">Call <code>func</code> once for each shape attached to <code>body</code> and added to the space. <br/></td></tr>
<tr class="separator:ga4c8ab091fe6f38b6d55192170a031bf3"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gae497b4998a3379fa232bf4623114010d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae497b4998a3379fa232bf4623114010d"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#gae497b4998a3379fa232bf4623114010d">cpBodyEachConstraint</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__cp_body.html#ga79c674e7767d6ff8769a9676404f589b">cpBodyConstraintIteratorFunc</a> func, void *data)</td></tr>
<tr class="memdesc:gae497b4998a3379fa232bf4623114010d"><td class="mdescLeft"> </td><td class="mdescRight">Call <code>func</code> once for each constraint attached to <code>body</code> and added to the space. <br/></td></tr>
<tr class="separator:gae497b4998a3379fa232bf4623114010d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga1946a82f1a256333fae25c818a68b3ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1946a82f1a256333fae25c818a68b3ab"></a>
CP_EXPORT void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cp_body.html#ga1946a82f1a256333fae25c818a68b3ab">cpBodyEachArbiter</a> (<a class="el" href="structcp_body.html">cpBody</a> *body, <a class="el" href="group__cp_body.html#gacdd17a9f98ca6e6c088b72f7d5f32ea3">cpBodyArbiterIteratorFunc</a> func, void *data)</td></tr>
<tr class="memdesc:ga1946a82f1a256333fae25c818a68b3ab"><td class="mdescLeft"> </td><td class="mdescRight">Call <code>func</code> once for each arbiter that is currently active on the body. <br/></td></tr>
<tr class="separator:ga1946a82f1a256333fae25c818a68b3ab"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Chipmunk's rigid body type. </p>
<p>Rigid bodies hold the physical properties of an object like it's mass, and position and velocity of it's center of gravity. They don't have an shape on their own. They are given a shape by creating collision shapes (<a class="el" href="structcp_shape.html">cpShape</a>) that point to the body. </p>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga3581b128fd3e2734952aeac8545fd5ca"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__cp_body.html#ga3581b128fd3e2734952aeac8545fd5ca">cpBodyType</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga3581b128fd3e2734952aeac8545fd5caa443c53c7b27e64799ee0eba728e60db6"></a>CP_BODY_TYPE_DYNAMIC</em> </td><td class="fielddoc">
<p>A dynamic body is one that is affected by gravity, forces, and collisions. </p>
<p>This is the default body type. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga3581b128fd3e2734952aeac8545fd5caa95e6c8d1ff2714d17bc4f2258407e58d"></a>CP_BODY_TYPE_KINEMATIC</em> </td><td class="fielddoc">
<p>A kinematic body is an infinite mass, user controlled body that is not affected by gravity, forces or collisions. </p>
<p>Instead the body only moves based on it's velocity. Dynamic bodies collide normally with kinematic bodies, though the kinematic body will be unaffected. Collisions between two kinematic bodies, or a kinematic body and a static body produce collision callbacks, but no collision response. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga3581b128fd3e2734952aeac8545fd5caaa594879f082bbabce4bd16944f73456b"></a>CP_BODY_TYPE_STATIC</em> </td><td class="fielddoc">
<p>A static body is a body that never (or rarely) moves. </p>
<p>If you move a static body, you must call one of the cpSpaceReindex*() functions. Chipmunk uses this information to optimize the collision detection. Static bodies do not produce collision callbacks when colliding with other static bodies. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gaa3c5a0ad4bfa91f4e24fb558c743fdba"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CP_EXPORT void cpBodySetPositionUpdateFunc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcp_body.html">cpBody</a> * </td>
<td class="paramname"><em>body</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__cp_body.html#ga4f84c8fc20fcb9918d1553e6dc29ffbd">cpBodyPositionFunc</a> </td>
<td class="paramname"><em>positionFunc</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the callback used to update a body's position. </p>
<p>NOTE: It's not generally recommended to override this unless you call the default position update function. </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jul 2 2015 11:28:11 for Chipmunk2D Pro API Reference by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3.1
</small></address>
</body>
</html>