<?xml version="1.0" encoding="ascii"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>pybox2d.Box2D.b2ContactListener</title> <link rel="stylesheet" href="epydoc.css" type="text/css" /> <script type="text/javascript" src="epydoc.js"></script> </head> <body bgcolor="white" text="black" link="blue" vlink="#204080" alink="#204080"> <!-- ==================== NAVIGATION BAR ==================== --> <table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> <tr valign="middle"> <!-- Home link --> <th> <a href="pybox2d.Box2D-module.html">Home</a> </th> <!-- Tree link --> <th> <a href="module-tree.html">Trees</a> </th> <!-- Index link --> <th> <a href="identifier-index.html">Indices</a> </th> <!-- Help link --> <th> <a href="help.html">Help</a> </th> <!-- Project homepage --> <th class="navbar" align="right" width="100%"> <table border="0" cellpadding="0" cellspacing="0"> <tr><th class="navbar" align="center" ><a class="navbar" target="_top" href="http://code.google.com/p/pybox2d/">pybox2d</a></th> </tr></table></th> </tr> </table> <table width="100%" cellpadding="0" cellspacing="0"> <tr valign="top"> <td width="100%"> <span class="breadcrumbs"> Package pybox2d :: <a href="pybox2d.Box2D-module.html">Module Box2D</a> :: Class b2ContactListener </span> </td> <td> <table cellpadding="0" cellspacing="0"> <!-- hide/show private --> <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink" onclick="toggle_private();">hide private</a>]</span></td></tr> <tr><td align="right"><span class="options" >[<a href="frames.html" target="_top">frames</a >] | <a href="pybox2d.Box2D.b2ContactListener-class.html" target="_top">no frames</a>]</span></td></tr> </table> </td> </tr> </table> <!-- ==================== TYPE DESCRIPTION ==================== --> <h1 class="epydoc">type b2ContactListener</h1><p class="nomargin-top"><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener">source code</a></span></p> <center> </center> <hr /> <p>Implement this class to get collision results. You can use these results for things like sounds and game logic. You can also get contact results by traversing the contact lists after the time step. However, you might miss some contacts because continuous physics leads to sub-stepping. Additionally you may receive multiple callbacks for the same contact in a single time step. You should strive to make your callbacks efficient because there may be many callbacks per time step. WARNING: The contact separation is the last computed value.</p> <p>You cannot create/destroy Box2D entities inside these callbacks.</p> <!-- ==================== INSTANCE METHODS ==================== --> <a name="section-InstanceMethods"></a> <table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Instance Methods</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-InstanceMethods" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a name="__swig_destroy__"></a><span class="summary-sig-name">__swig_destroy__</span>(<span class="summary-sig-arg">...</span>)</span><br /> delete_b2ContactListener(b2ContactListener self)</td> <td align="right" valign="top"> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span></td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.__repr__">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#__getstate__" class="summary-sig-name">__getstate__</a>(<span class="summary-sig-arg">self</span>, <span class="summary-sig-arg">additional_ignore</span>=<span class="summary-sig-default"><code class="variable-group">[</code><code class="variable-group">]</code></span>)</span><br /> Returns a dictionary representation of self, with dict(var=value [, ...])</td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#_generic_getstate">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a name="__setstate__"></a><span class="summary-sig-name">__setstate__</span>(<span class="summary-sig-arg">self</span>, <span class="summary-sig-arg">dict</span>)</span><br /> Takes each variable=value pair in the dictionary and sets the attributes based on them</td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#_generic_setstate">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type">b2ContactListener</span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span></td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.__init__">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a name="__disown__"></a><span class="summary-sig-name">__disown__</span>(<span class="summary-sig-arg">self</span>)</span></td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.__disown__">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#Add" class="summary-sig-name">Add</a>(<span class="summary-sig-arg">...</span>)</span><br /> b2ContactListener_Add(b2ContactListener self, b2ContactPoint point)</td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Add">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#Persist" class="summary-sig-name">Persist</a>(<span class="summary-sig-arg">...</span>)</span><br /> b2ContactListener_Persist(b2ContactListener self, b2ContactPoint point)</td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Persist">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#Remove" class="summary-sig-name">Remove</a>(<span class="summary-sig-arg">...</span>)</span><br /> b2ContactListener_Remove(b2ContactListener self, b2ContactPoint point)</td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Remove">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pybox2d.Box2D.b2ContactListener-class.html#Result" class="summary-sig-name">Result</a>(<span class="summary-sig-arg">...</span>)</span><br /> b2ContactListener_Result(b2ContactListener self, b2ContactResult point)</td> <td align="right" valign="top"> <span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Result">source code</a></span> </td> </tr> </table> </td> </tr> </table> <!-- ==================== PROPERTIES ==================== --> <a name="section-Properties"></a> <table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Properties</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-Properties" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <a href="pybox2d.Box2D.b2ContactListener-class.html#thisown" class="summary-name">thisown</a><br /> The membership flag </td> </tr> </table> <!-- ==================== METHOD DETAILS ==================== --> <a name="section-MethodDetails"></a> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Method Details</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-MethodDetails" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> </table> <a name="__repr__"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span> <br /><em class="fname">(Representation operator)</em> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.__repr__">source code</a></span> </td> </tr></table> <dl class="fields"> <dt>Overrides: object.__repr__ <dd><em class="note">(inherited documentation)</em></dd> </dt> </dl> </td></tr></table> </div> <a name="__getstate__"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">__getstate__</span>(<span class="sig-arg">self</span>, <span class="sig-arg">additional_ignore</span>=<span class="sig-default"><code class="variable-group">[</code><code class="variable-group">]</code></span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#_generic_getstate">source code</a></span> </td> </tr></table> <pre class="literalblock"> Returns a dictionary representation of self, with dict(var=value [, ...]) additional_ignore can be specified to ignore certain properties. </pre> <dl class="fields"> </dl> </td></tr></table> </div> <a name="__init__"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span> <br /><em class="fname">(Constructor)</em> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.__init__">source code</a></span> </td> </tr></table> <dl class="fields"> <dt>Returns: b2ContactListener</dt> <dt>Overrides: object.__init__ </dt> </dl> </td></tr></table> </div> <a name="Add"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">Add</span>(<span class="sig-arg">...</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Add">source code</a></span> </td> </tr></table> <p>b2ContactListener_Add(b2ContactListener self, b2ContactPoint point)</p> <p>Called when a contact point is added. This includes the geometry and the forces.</p> <dl class="fields"> </dl> </td></tr></table> </div> <a name="Persist"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">Persist</span>(<span class="sig-arg">...</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Persist">source code</a></span> </td> </tr></table> <p>b2ContactListener_Persist(b2ContactListener self, b2ContactPoint point)</p> <p>Called when a contact point persists. This includes the geometry and the forces.</p> <dl class="fields"> </dl> </td></tr></table> </div> <a name="Remove"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">Remove</span>(<span class="sig-arg">...</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Remove">source code</a></span> </td> </tr></table> <p>b2ContactListener_Remove(b2ContactListener self, b2ContactPoint point)</p> <p>Called when a contact point is removed. This includes the last computed geometry and forces.</p> <dl class="fields"> </dl> </td></tr></table> </div> <a name="Result"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">Result</span>(<span class="sig-arg">...</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pybox2d.Box2D-pysrc.html#b2ContactListener.Result">source code</a></span> </td> </tr></table> <p>b2ContactListener_Result(b2ContactListener self, b2ContactResult point)</p> <p>Called after a contact point is solved.</p> <dl class="fields"> </dl> </td></tr></table> </div> <br /> <!-- ==================== PROPERTY DETAILS ==================== --> <a name="section-PropertyDetails"></a> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Property Details</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-PropertyDetails" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> </table> <a name="thisown"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <h3 class="epydoc">thisown</h3> <p>The membership flag</p> <dl class="fields"> </dl> </td></tr></table> </div> <br /> <!-- ==================== NAVIGATION BAR ==================== --> <table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> <tr valign="middle"> <!-- Home link --> <th> <a href="pybox2d.Box2D-module.html">Home</a> </th> <!-- Tree link --> <th> <a href="module-tree.html">Trees</a> </th> <!-- Index link --> <th> <a href="identifier-index.html">Indices</a> </th> <!-- Help link --> <th> <a href="help.html">Help</a> </th> <!-- Project homepage --> <th class="navbar" align="right" width="100%"> <table border="0" cellpadding="0" cellspacing="0"> <tr><th class="navbar" align="center" ><a class="navbar" target="_top" href="http://code.google.com/p/pybox2d/">pybox2d</a></th> </tr></table></th> </tr> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%%"> <tr> <td align="left" class="footer"> Generated by Epydoc 3.0.1 on Tue Feb 24 18:39:58 2009 </td> <td align="right" class="footer"> <a target="mainFrame" href="http://epydoc.sourceforge.net" >http://epydoc.sourceforge.net</a> </td> </tr> </table> <script type="text/javascript"> <!-- // Private objects are initially displayed (because if // javascript is turned off then we want them to be // visible); but by default, we want to hide them. So hide // them unless we have a cookie that says to show them. checkCookie(); // --> </script> </body> </html>