Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > e7618febbb9cbed15bb79e326774c050 > files > 356

ompl-devel-0.9.5-1.fc14.i686.rpm

<!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::RNG 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">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</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="classompl_1_1RNG.html">RNG</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">ompl::RNG Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="ompl::RNG" -->
<p>Random number generation. An instance of this class cannot be used by multiple threads at once (member functions are not const). However, the constructor is thread safe and different instances can be used safely in any number of threads. It is also guaranteed that all created instances will have a different random seed.  
 <a href="classompl_1_1RNG.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="RandomNumbers_8h_source.html">RandomNumbers.h</a>&gt;</code></p>

<p><a href="classompl_1_1RNG-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="ab68b8c575909d7897776e0dee5a64baf"></a><!-- doxytag: member="ompl::RNG::RNG" ref="ab68b8c575909d7897776e0dee5a64baf" args="(void)" -->
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#ab68b8c575909d7897776e0dee5a64baf">RNG</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. Always sets a different random seed. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac49dc7cc9fe4a8d6f73faf7e62df1621"></a><!-- doxytag: member="ompl::RNG::uniform01" ref="ac49dc7cc9fe4a8d6f73faf7e62df1621" args="(void)" -->
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#ac49dc7cc9fe4a8d6f73faf7e62df1621">uniform01</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random real between 0 and 1. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a691ddf8d21630c69d4ba3f8b1f8c449f"></a><!-- doxytag: member="ompl::RNG::uniformReal" ref="a691ddf8d21630c69d4ba3f8b1f8c449f" args="(double lower_bound, double upper_bound)" -->
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#a691ddf8d21630c69d4ba3f8b1f8c449f">uniformReal</a> (double lower_bound, double upper_bound)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random real within given bounds: [<em>lower_bound</em>, <em>upper_bound</em>) <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad122fd3309d2a2c72ca1dd665c1a2803"></a><!-- doxytag: member="ompl::RNG::uniformInt" ref="ad122fd3309d2a2c72ca1dd665c1a2803" args="(int lower_bound, int upper_bound)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#ad122fd3309d2a2c72ca1dd665c1a2803">uniformInt</a> (int lower_bound, int upper_bound)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random integer within given bounds: [<em>lower_bound</em>, <em>upper_bound</em>]. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab00f391bc2f829da69dbd4e226b0dbf"></a><!-- doxytag: member="ompl::RNG::uniformBool" ref="aab00f391bc2f829da69dbd4e226b0dbf" args="(void)" -->
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#aab00f391bc2f829da69dbd4e226b0dbf">uniformBool</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random boolean. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3285a1511e1878ba898dd6adca1a61f"></a><!-- doxytag: member="ompl::RNG::gaussian01" ref="ab3285a1511e1878ba898dd6adca1a61f" args="(void)" -->
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#ab3285a1511e1878ba898dd6adca1a61f">gaussian01</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random real using a normal distribution with mean 0 and variance 1. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13631925b09cc5bc7d977240bf67cfd3"></a><!-- doxytag: member="ompl::RNG::gaussian" ref="a13631925b09cc5bc7d977240bf67cfd3" args="(double mean, double stddev)" -->
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#a13631925b09cc5bc7d977240bf67cfd3">gaussian</a> (double mean, double stddev)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random real using a normal distribution with given mean and variance. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa042546370a4144a4250ee30052496d5"></a><!-- doxytag: member="ompl::RNG::halfNormalReal" ref="aa042546370a4144a4250ee30052496d5" args="(double r_min, double r_max, double focus=3.0)" -->
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#aa042546370a4144a4250ee30052496d5">halfNormalReal</a> (double r_min, double r_max, double focus=3.0)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random real using a half-normal distribution. The value is within specified bounds [<em>r_min</em>, <em>r_max</em>], but with a bias towards <em>r_max</em>. The function is implemended using a Gaussian distribution with mean at <em>r_max</em> - <em>r_min</em>. The distribution is 'folded' around <em>r_max</em> axis towards <em>r_min</em>. The variance of the distribution is (<em>r_max</em> - <em>r_min</em>) / <em>focus</em>. The higher the focus, the more probable it is that generated numbers are close to <em>r_max</em>. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26c0a9c26d9a34e2f6004536dc92bf1d"></a><!-- doxytag: member="ompl::RNG::halfNormalInt" ref="a26c0a9c26d9a34e2f6004536dc92bf1d" args="(int r_min, int r_max, double focus=3.0)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#a26c0a9c26d9a34e2f6004536dc92bf1d">halfNormalInt</a> (int r_min, int r_max, double focus=3.0)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random integer using a half-normal distribution. The value is within specified bounds ([<em>r_min</em>, <em>r_max</em>]), but with a bias towards <em>r_max</em>. The function is implemented on top of <a class="el" href="classompl_1_1RNG.html#aa042546370a4144a4250ee30052496d5" title="Generate a random real using a half-normal distribution. The value is within specified bounds [r_min...">halfNormalReal()</a> <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a082bc8ed509e999acea09880447a7955"></a><!-- doxytag: member="ompl::RNG::quaternion" ref="a082bc8ed509e999acea09880447a7955" args="(double value[4])" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#a082bc8ed509e999acea09880447a7955">quaternion</a> (double value[4])</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Uniform random unit quaternion sampling. The returned value has the order (x,y,z,w) <br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d1f331229e9c85121ac9af72550fc99"></a><!-- doxytag: member="ompl::RNG::setSeed" ref="a0d1f331229e9c85121ac9af72550fc99" args="(boost::uint32_t seed)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#a0d1f331229e9c85121ac9af72550fc99">setSeed</a> (boost::uint32_t seed)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the seed for random number generation. Use this function to ensure the same sequence of random numbers is generated. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6609dc30a714e43d5f96673c30c30872"></a><!-- doxytag: member="ompl::RNG::getSeed" ref="a6609dc30a714e43d5f96673c30c30872" args="(void)" -->
static boost::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1RNG.html#a6609dc30a714e43d5f96673c30c30872">getSeed</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the seed used for random number generation. Passing the returned value to <a class="el" href="classompl_1_1RNG.html#a0d1f331229e9c85121ac9af72550fc99" title="Set the seed for random number generation. Use this function to ensure the same sequence of random nu...">setSeed()</a> at a subsequent execution of the code will ensure deterministic (repeatable) behaviour. Useful for debugging. <br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Random number generation. An instance of this class cannot be used by multiple threads at once (member functions are not const). However, the constructor is thread safe and different instances can be used safely in any number of threads. It is also guaranteed that all created instances will have a different random seed. </p>

<p>Definition at line <a class="el" href="RandomNumbers_8h_source.html#l00054">54</a> of file <a class="el" href="RandomNumbers_8h_source.html">RandomNumbers.h</a>.</p>
</div><hr/>The documentation for this class was generated from the following files:<ul>
<li>src/ompl/util/<a class="el" href="RandomNumbers_8h_source.html">RandomNumbers.h</a></li>
<li>src/ompl/util/src/<a class="el" href="RandomNumbers_8cpp_source.html">RandomNumbers.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">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</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> &bull;
  <a href="http://www.cs.rice.edu">Department of Computer Science</a> &bull;
  <a href="http://www.rice.edu">Rice University</a><br>
  <div class="gray">Generated on Sun Oct 9 2011 23:04:41 by&#160;<a href="http://www.doxygen.org/index.html">doxygen</a> 1.7.4</div>
</div>
</div>
</body>
</html>