<!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"/> <title>OMPL: ompl::control::PathControl Class Reference</title> <meta name="author" content="Ioan A. Șucan, Mark Moll, Lydia E. Kavraki"> <link rel="stylesheet" href="../css/screen.css" type="text/css" media="screen, projection"> <link rel="stylesheet" href="../css/print.css" type="text/css" media="print"> <!--[if lt IE 7]> <script type="text/javascript" src="../js/jquery/jquery.js"></script> <script type="text/javascript" src="../js/jquery/jquery.dropdown.js"></script> <![endif]--> <script type="text/javaScript" src="search/search.js"></script> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-9156598-2']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> </head> <body onload='searchBox.OnSelectItem(0);'> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search API'); --></script> <div class="navigation" id="top"> <div class="tabs" id="ompltitle"> <ul class="tablist"> <li>The Open Motion Planning Library</li> <li id="searchli"> <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 API" 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> <ul id="nav" class="dropdown"> <li class="first"><a href="index.html">Home</a></li> <li><a href="download.html">Download</a></li> <li><a href="documentation.html">Documentation</a></li> <li><span class="dir">Code API</span> <ul> <li><a href="api_overview.html">API Overview</a></li> <li><a href="namespaces.html">Namespaces</a></li> <li><a href="annotated.html">Classes</a></li> <li><a href="files.html">Files</a></li> <li><a href="dirs.html">Directories</a></li> </ul> </li> <li><span class="dir">Community</span> <ul> <li><a href="developers.html">Developers</a></li> <li><a href="thirdparty.html">Contributions</a></li> <li><a href="education.html">Education</a></li> <li><a href="gallery.html">Gallery</a></li> </ul> </li> <li><span class="dir">About</span> <ul> <li><a href="license.html">License</a></li> <li><a href="citations.html">Citations</a></li> <li><a href="acknowledgements.html">Acknowledgments</a></li> <li><a href="contact.html">Contact Us</a></li> </ul> </li> </ul> </div> <!--- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="" frameborder="0"name="MSearchResults" id="MSearchResults"></iframe> </div> <div class="container"> <div class="span-22 push-2 first last"> <div> <!-- Generated by Doxygen 1.7.4 --> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search'); --></script> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceompl.html">ompl</a> </li> <li class="navelem"><a class="el" href="namespaceompl_1_1control.html">control</a> </li> <li class="navelem"><a class="el" href="classompl_1_1control_1_1PathControl.html">PathControl</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-attribs">Public Attributes</a> | <a href="#pro-methods">Protected Member Functions</a> </div> <div class="headertitle"> <div class="title">ompl::control::PathControl Class Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="ompl::control::PathControl" --><!-- doxytag: inherits="ompl::base::Path" --> <p>Definition of a control path. <a href="classompl_1_1control_1_1PathControl.html#details">More...</a></p> <p><code>#include <<a class="el" href="PathControl_8h_source.html">PathControl.h</a>></code></p> <div class="dynheader"> Inheritance diagram for ompl::control::PathControl:</div> <div class="dyncontent"> <div class="center"><img src="classompl_1_1control_1_1PathControl__inherit__graph.png" border="0" usemap="#ompl_1_1control_1_1PathControl_inherit__map" alt="Inheritance graph"/></div> <map name="ompl_1_1control_1_1PathControl_inherit__map" id="ompl_1_1control_1_1PathControl_inherit__map"> <area shape="rect" id="node2" href="classompl_1_1base_1_1Path.html" title="Abstract definition of a path." alt="" coords="32,5,152,35"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="classompl_1_1control_1_1PathControl-members.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acad02bde7b3869b242e5bf7f2b9d9546"></a><!-- doxytag: member="ompl::control::PathControl::PathControl" ref="acad02bde7b3869b242e5bf7f2b9d9546" args="(const base::SpaceInformationPtr &si)" -->  </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#acad02bde7b3869b242e5bf7f2b9d9546">PathControl</a> (const <a class="el" href="classompl_1_1base_1_1SpaceInformationPtr.html">base::SpaceInformationPtr</a> &si)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52e694c4f5e5d0acddda7e3053c2d6eb"></a><!-- doxytag: member="ompl::control::PathControl::PathControl" ref="a52e694c4f5e5d0acddda7e3053c2d6eb" args="(const PathControl &path)" -->  </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a52e694c4f5e5d0acddda7e3053c2d6eb">PathControl</a> (const <a class="el" href="classompl_1_1control_1_1PathControl.html">PathControl</a> &path)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae38b0401aa76d832ad9098d51065130"></a><!-- doxytag: member="ompl::control::PathControl::operator=" ref="aae38b0401aa76d832ad9098d51065130" args="(const PathControl &other)" --> <a class="el" href="classompl_1_1control_1_1PathControl.html">PathControl</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#aae38b0401aa76d832ad9098d51065130">operator=</a> (const <a class="el" href="classompl_1_1control_1_1PathControl.html">PathControl</a> &other)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97e5f036db976943e2fd8981fa1576d9"></a><!-- doxytag: member="ompl::control::PathControl::length" ref="a97e5f036db976943e2fd8981fa1576d9" args="(void) const " --> virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a97e5f036db976943e2fd8981fa1576d9">length</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The path length (sum of control durations) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9327a78ee2e1daa40ca9d36a985669cd"></a><!-- doxytag: member="ompl::control::PathControl::check" ref="a9327a78ee2e1daa40ca9d36a985669cd" args="(void) const " --> virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a9327a78ee2e1daa40ca9d36a985669cd">check</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if the path is valid. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a29fa8adb0eea5674ae095623f7a59f1d"></a><!-- doxytag: member="ompl::control::PathControl::print" ref="a29fa8adb0eea5674ae095623f7a59f1d" args="(std::ostream &out) const " --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a29fa8adb0eea5674ae095623f7a59f1d">print</a> (std::ostream &out) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the path to a stream. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada0ebf95a7cfc3b540e423aa1ba4b6f0"></a><!-- doxytag: member="ompl::control::PathControl::interpolate" ref="ada0ebf95a7cfc3b540e423aa1ba4b6f0" args="(void)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#ada0ebf95a7cfc3b540e423aa1ba4b6f0">interpolate</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Make the path such that all controls are applied for a single time step (computes intermediate states) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac832244ac760aff8861762c989931864"></a><!-- doxytag: member="ompl::control::PathControl::random" ref="ac832244ac760aff8861762c989931864" args="(void)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#ac832244ac760aff8861762c989931864">random</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set this path to a random segment. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7f230dba3a6f6e2e7a59130fd4dd795"></a><!-- doxytag: member="ompl::control::PathControl::randomValid" ref="aa7f230dba3a6f6e2e7a59130fd4dd795" args="(unsigned int attempts)" --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#aa7f230dba3a6f6e2e7a59130fd4dd795">randomValid</a> (unsigned int attempts)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set this path to a random valid segment. Sample <em>attempts</em> times for valid segments. Returns true on success. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3bca482c4b24fd3bec6dce4d1828e269"></a><!-- doxytag: member="ompl::control::PathControl::asGeometric" ref="a3bca482c4b24fd3bec6dce4d1828e269" args="(void) const " --> <a class="el" href="classompl_1_1geometric_1_1PathGeometric.html">geometric::PathGeometric</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a3bca482c4b24fd3bec6dce4d1828e269">asGeometric</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert this path into a geometric path (interpolation is performed and then states are copied) <br/></td></tr> <tr><td colspan="2"><h2><a name="pub-attribs"></a> Public Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2bd25b55f0de06ecac55cabb4b90a606"></a><!-- doxytag: member="ompl::control::PathControl::states" ref="a2bd25b55f0de06ecac55cabb4b90a606" args="" --> std::vector< <a class="el" href="classompl_1_1base_1_1State.html">base::State</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a2bd25b55f0de06ecac55cabb4b90a606">states</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The list of states that make up the path. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69d77e39906c91394470f9e988b4944a"></a><!-- doxytag: member="ompl::control::PathControl::controls" ref="a69d77e39906c91394470f9e988b4944a" args="" --> std::vector< <a class="el" href="classompl_1_1control_1_1Control.html">Control</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a69d77e39906c91394470f9e988b4944a">controls</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The control applied at each state. This array contains one element less than the list of states. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3a8b0e7b00684789eac7d51d65d81b49"></a><!-- doxytag: member="ompl::control::PathControl::controlDurations" ref="a3a8b0e7b00684789eac7d51d65d81b49" args="" --> std::vector< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a3a8b0e7b00684789eac7d51d65d81b49">controlDurations</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The duration of the control applied at each state. This array contains one element less than the list of states. <br/></td></tr> <tr><td colspan="2"><h2><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c503c93b4ab95356d4c08e482d11f7c"></a><!-- doxytag: member="ompl::control::PathControl::freeMemory" ref="a0c503c93b4ab95356d4c08e482d11f7c" args="(void)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#a0c503c93b4ab95356d4c08e482d11f7c">freeMemory</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Free the memory allocated by the path. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba52a0ae46c87f57a8a4e9f75855cbc2"></a><!-- doxytag: member="ompl::control::PathControl::copyFrom" ref="aba52a0ae46c87f57a8a4e9f75855cbc2" args="(const PathControl &other)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1PathControl.html#aba52a0ae46c87f57a8a4e9f75855cbc2">copyFrom</a> (const <a class="el" href="classompl_1_1control_1_1PathControl.html">PathControl</a> &other)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy the content of a path to this one. <br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Definition of a control path. </p> <p>This is the type of path produced when planning with differential constraints. </p> <p>Definition at line <a class="el" href="PathControl_8h_source.html#l00054">54</a> of file <a class="el" href="PathControl_8h_source.html">PathControl.h</a>.</p> </div><hr/>The documentation for this class was generated from the following files:<ul> <li>src/ompl/control/<a class="el" href="PathControl_8h_source.html">PathControl.h</a></li> <li>src/ompl/control/src/<a class="el" href="PathControl_8cpp_source.html">PathControl.cpp</a></li> </ul> </div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> </div> <div class="footer span-22 push-2 last"> <a href="http://www.kavrakilab.org">Physical and Biological Computing Group</a> • <a href="http://www.cs.rice.edu">Department of Computer Science</a> • <a href="http://www.rice.edu">Rice University</a><br> <div class="gray">Generated on Sun Oct 9 2011 23:04:42 by <a href="http://www.doxygen.org/index.html">doxygen</a> 1.7.4</div> </div> </div> </body> </html>