<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <!-- $Id: header.html 8799 2010-06-28 04:12:42Z jpgr87 $ --> <HEAD> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=utf-8"> <meta name="keywords" content="stage, robot, simulation, player, player/stage"> <link href="doxygen.css" rel="stylesheet" type="text/css"> <style type="text/css"> .floatright { float: right; margin: 0 0 1em 1em; } body { font-family: sans-serif; #font-family: Geneva, Verdana, Helvetica, Arial, sans-serif; background-color: #FFF; color:#000; } a:link { color: #A00; } a:visited { color: #800; } a { text-decoration: none; } a:hover { text-decoration: underline; } .timestamp { text-align:right; background-color: #DDD; font-size:75%;} h1 { font-size:160%; } h2 { font-size:110%; #color: #FFF; #background-color: #666; #padding:3px; } h3 { text-align:left; } img { border: 0; } ul.menu { position:relative; left:-2.5em; margin-bottom:0px; margin-top:0px; } ul.menu1 { position:relative; left:-2.1em; margin-bottom:0px; margin-top:0px; } li.menu { list-style-type: none; position:relative; #left:-0.5em; } #sidebar { position: absolute; left:0px; padding:2em; top:0em; width:12em;} #content { position: absolute; left:12em; top:0em; padding-left:3em; padding-right:3em; padding-bottom:2em; margin-top:1em; margin-right:2em; } div.box { background-color:#EEE; border: 1px solid #000; padding: 0.5ex 0.4em 0.5ex 0.6em; margin:1em; } div.title { font-weight:bold; background-color:#eee; margin-bottom:2px;} div.topbar { position: absolute; top:0px; left:9em; margin:1em; } </style> <TITLE>Player Manual</TITLE> </HEAD> <body> <div id="sidebar"> <h2 style="text-align:center;"> <a href="index.html"> <img width=140 src="http://playerstage.sourceforge.net/images/player_button_v3.png" alt="Player logo"><br></a> </h2> <div class="box"> <div class=title>Player</div> <ul class=menu> <li class=menu><a href="index.html">Frontpage</a> <li class=menu><a href="modules.html">Contents</a> </ul> </div> <div class="box"> <div class=title>User</div> <ul class=menu> <li class=menu><a href="install.html">Installation</a> <li class=menu><a href="start.html">Quick start</a> <li class=menu><a href="supported_hardware.html">Supported devices</a> <li class=menu><a href="group__tutorials.html">Tutorials</a> <li class=menu><a href="group__utils.html">Utilities</a> <li class=menu><a href="group__clientlibs.html">Client libraries</a> <li class=menu><a href="http://playerstage.sourceforge.net/wiki/Basic_FAQ">FAQ</a> <li class=menu><a href="help.html">Help</a> </ul> </div> <div class=box> <div class="title">Developer</div> <ul class=menu> <li class=menu><a href="architecture.html">Architecture</a> <li class=menu><a href="group__libplayercore.html">libplayercore</a> <ul class=menu1> <li class=menu><a href="group__interfaces.html">interfaces</a></li> </ul> <li class=menu><a href="group__libplayerdrivers.html">libplayerdrivers</a> <ul class=menu1> <li class=menu><a href="group__drivers.html">drivers</a></li> </ul> <li class=menu><a href="group__libplayercommon.html">libplayercommon</a> <li class=menu><a href="group__libplayerutils.html">libplayerutils</a> <li class=menu><a href="group__libplayersd.html">libplayersd</a> <li class=menu><a href="group__libplayertcp.html">libplayertcp</a> <li class=menu><a href="group__libplayerxdr.html">libplayerxdr</a> <li class=menu><a href="todo.html">TODO</a> </ul> </div> <div class=box> <!-- <a href="http://sourceforge.net"><img border=0 src="http://sourceforge.net/sflogo.php?group_id=42445&type=1"></a> --> <div class="title">Online</div> <a href="http://playerstage.sourceforge.net">Homepage</a><br> <a href="http://sourceforge.net/project/showfiles.php?group_id=42445">Download</a><br> <a href="http://sourceforge.net/projects/playerstage">Project</a><br> <a href="http://sourceforge.net/tracker/?group_id=42445">Bugs</a><br> <a href="http://sourceforge.net/mail/?group_id=42445">Help</a> </div> </div> <div id="content" > <!-- Generated by Doxygen 1.7.1 --> <div class="navpath"> <ul> <li><b>PlayerCc</b> </li> <li><a class="el" href="classPlayerCc_1_1Position2dProxy.html">PlayerCc::Position2dProxy</a> </li> </ul> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pri-methods">Private Member Functions</a> | <a href="#pri-attribs">Private Attributes</a> </div> <div class="headertitle"> <h1>PlayerCc::Position2dProxy Class Reference<br/> <small> [<a class="el" href="group__player__clientlib__cplusplus__proxies.html">Proxies</a>]</small> </h1> </div> </div> <div class="contents"> <!-- doxytag: class="PlayerCc::Position2dProxy" --><!-- doxytag: inherits="PlayerCc::ClientProxy" --> <p>The <code><a class="el" href="classPlayerCc_1_1Position2dProxy.html" title="The Position2dProxy class is used to control a position2d device.">Position2dProxy</a></code> class is used to control a <a class="el" href="group__interface__position2d.html">position2d</a> device. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="playerc_09_09_8h_source.html">playerc++.h</a>></code></p> <div class="dynheader"> Inheritance diagram for PlayerCc::Position2dProxy:</div> <div class="dyncontent"> <div class="center"> <img src="classPlayerCc_1_1Position2dProxy.png" usemap="#PlayerCc::Position2dProxy_map" alt=""/> <map id="PlayerCc::Position2dProxy_map" name="PlayerCc::Position2dProxy_map"> <area href="classPlayerCc_1_1ClientProxy.html" alt="PlayerCc::ClientProxy" shape="rect" coords="0,0,162,24"/> </map> </div> <p><a href="classPlayerCc_1_1Position2dProxy-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="ac370587f9458c30bb21137869593deee"></a><!-- doxytag: member="PlayerCc::Position2dProxy::Position2dProxy" ref="ac370587f9458c30bb21137869593deee" args="(PlayerClient *aPc, uint32_t aIndex=0)" --> </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#ac370587f9458c30bb21137869593deee">Position2dProxy</a> (<a class="el" href="classPlayerCc_1_1PlayerClient.html">PlayerClient</a> *aPc, uint32_t aIndex=0)</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="a4bf829c50ce82ab932a48e61a5636aea"></a><!-- doxytag: member="PlayerCc::Position2dProxy::~Position2dProxy" ref="a4bf829c50ce82ab932a48e61a5636aea" args="()" --> </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a4bf829c50ce82ab932a48e61a5636aea">~Position2dProxy</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">destructor <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a00d299f64e7fa2b3e83aa8034ce80ad6">SetSpeed</a> (double aXSpeed, double aYSpeed, double aYawSpeed)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Send a motor command for velocity control mode. <a href="#a00d299f64e7fa2b3e83aa8034ce80ad6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a687738f88dbb2e08f0d0289940d0ab46">SetSpeed</a> (double aXSpeed, double aYawSpeed)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Same as the previous <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a00d299f64e7fa2b3e83aa8034ce80ad6" title="Send a motor command for velocity control mode.">SetSpeed()</a>, but doesn't take the yspeed speed (so use this one for non-holonomic robots). <a href="#a687738f88dbb2e08f0d0289940d0ab46"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af98c9c8ed667bf15588adb6df38ff8b2"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetSpeed" ref="af98c9c8ed667bf15588adb6df38ff8b2" args="(player_pose2d_t vel)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#af98c9c8ed667bf15588adb6df38ff8b2">SetSpeed</a> (<a class="el" href="structplayer__pose2d.html">player_pose2d_t</a> vel)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Overloaded SetSpeed that takes player_pose2d_t as an argument. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#af51453538bbc36dfa566f61ab1576bde">SetVelHead</a> (double aXSpeed, double aYSpeed, double aYawHead)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Send a motor command for velocity/heading control mode. <a href="#af51453538bbc36dfa566f61ab1576bde"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a4f0fffcd6a6552323e8572076015de02">SetVelHead</a> (double aXSpeed, double aYawHead)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Same as the previous <a class="el" href="classPlayerCc_1_1Position2dProxy.html#af51453538bbc36dfa566f61ab1576bde" title="Send a motor command for velocity/heading control mode.">SetVelHead()</a>, but doesn't take the yspeed speed (so use this one for non-holonomic robots). <a href="#a4f0fffcd6a6552323e8572076015de02"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a2d84ba78b1077995c46bd37e35d0c481">GoTo</a> (<a class="el" href="structplayer__pose2d.html">player_pose2d_t</a> pos, <a class="el" href="structplayer__pose2d.html">player_pose2d_t</a> vel)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Send a motor command for position control mode. <a href="#a2d84ba78b1077995c46bd37e35d0c481"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a405167afa74cb6ac20325302a6333e9a"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GoTo" ref="a405167afa74cb6ac20325302a6333e9a" args="(player_pose2d_t pos)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a405167afa74cb6ac20325302a6333e9a">GoTo</a> (<a class="el" href="structplayer__pose2d.html">player_pose2d_t</a> pos)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Same as the previous <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a2d84ba78b1077995c46bd37e35d0c481" title="Send a motor command for position control mode.">GoTo()</a>, but doesn't take speed. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88c746a64b2f8f441ebd89dcdf362018"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GoTo" ref="a88c746a64b2f8f441ebd89dcdf362018" args="(double aX, double aY, double aYaw)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a88c746a64b2f8f441ebd89dcdf362018">GoTo</a> (double aX, double aY, double aYaw)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Same as the previous <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a2d84ba78b1077995c46bd37e35d0c481" title="Send a motor command for position control mode.">GoTo()</a>, but only takes position arguments, no motion speed setting. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a621d7bd3f2da3c9c9dc19b2ada47fe0e"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetCarlike" ref="a621d7bd3f2da3c9c9dc19b2ada47fe0e" args="(double aXSpeed, double aDriveAngle)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a621d7bd3f2da3c9c9dc19b2ada47fe0e">SetCarlike</a> (double aXSpeed, double aDriveAngle)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets command for carlike robot. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a12fa91ddc7a193b443c593164bb367d4">RequestGeom</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the device's geometry; it is read into the relevant class attributes. <a href="#a12fa91ddc7a193b443c593164bb367d4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8d433ee7a4ebb7099d6dd91ee1d0ceb"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetOffset" ref="ae8d433ee7a4ebb7099d6dd91ee1d0ceb" args="()" --> <a class="el" href="structplayer__pose3d.html">player_pose3d_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#ae8d433ee7a4ebb7099d6dd91ee1d0ceb">GetOffset</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor for the robot's pose with respect to its. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a923bcecccf8f9c2d247edfcf15c50fa2"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetSize" ref="a923bcecccf8f9c2d247edfcf15c50fa2" args="()" --> <a class="el" href="structplayer__bbox3d.html">player_bbox3d_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a923bcecccf8f9c2d247edfcf15c50fa2">GetSize</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor for the size (fill it in by calling RequestGeom). <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a319d8f265a83c916fb174a3ce892dc53">SetMotorEnable</a> (bool enable)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Enable/disable the motors. <a href="#a319d8f265a83c916fb174a3ce892dc53"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52cc89aecc5c587ad8f23bed13c554a2"></a><!-- doxytag: member="PlayerCc::Position2dProxy::ResetOdometry" ref="a52cc89aecc5c587ad8f23bed13c554a2" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a52cc89aecc5c587ad8f23bed13c554a2">ResetOdometry</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Reset odometry to (0,0,0). <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a139e51e54b4b0a2ad77f2993b8faef72">SetOdometry</a> (double aX, double aY, double aYaw)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Select position mode Set <code>mode</code> for 0 for velocity mode, 1 for position mode. <a href="#a139e51e54b4b0a2ad77f2993b8faef72"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#adf874103a6d767af65bd90fa9d640881">GetXPos</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set PID terms. <a href="#adf874103a6d767af65bd90fa9d640881"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a162e8f905b0c93219e39b49a3de90630"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetYPos" ref="a162e8f905b0c93219e39b49a3de90630" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a162e8f905b0c93219e39b49a3de90630">GetYPos</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor method. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13b85c9555b1674d462173cb1fd93379"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetYaw" ref="a13b85c9555b1674d462173cb1fd93379" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a13b85c9555b1674d462173cb1fd93379">GetYaw</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor method. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e6e2e5f7037b68ec2f1293b7114880b"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetXSpeed" ref="a4e6e2e5f7037b68ec2f1293b7114880b" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a4e6e2e5f7037b68ec2f1293b7114880b">GetXSpeed</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor method. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab8951448d66c3078db1cde299aabbaa2"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetYSpeed" ref="ab8951448d66c3078db1cde299aabbaa2" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#ab8951448d66c3078db1cde299aabbaa2">GetYSpeed</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor method. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5791f246a0fa47ca6b66af6d7525fc19"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetYawSpeed" ref="a5791f246a0fa47ca6b66af6d7525fc19" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a5791f246a0fa47ca6b66af6d7525fc19">GetYawSpeed</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor method. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a2421d124da4d0709911132e895b3dd"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetStall" ref="a9a2421d124da4d0709911132e895b3dd" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classPlayerCc_1_1Position2dProxy.html#a9a2421d124da4d0709911132e895b3dd">GetStall</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessor method. <br/></td></tr> <tr><td colspan="2"><h2><a name="pri-methods"></a> Private Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af8804a82a133db059a35f1f00fe108d1"></a><!-- doxytag: member="PlayerCc::Position2dProxy::Subscribe" ref="af8804a82a133db059a35f1f00fe108d1" args="(uint32_t aIndex)" --> void </td><td class="memItemRight" valign="bottom"><b>Subscribe</b> (uint32_t aIndex)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0e6a74739617bdab0fedf376f9f0a7b"></a><!-- doxytag: member="PlayerCc::Position2dProxy::Unsubscribe" ref="aa0e6a74739617bdab0fedf376f9f0a7b" args="()" --> void </td><td class="memItemRight" valign="bottom"><b>Unsubscribe</b> ()</td></tr> <tr><td colspan="2"><h2><a name="pri-attribs"></a> Private Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3a92b6f5eb939ed92f55fd06a7e76bf2"></a><!-- doxytag: member="PlayerCc::Position2dProxy::mDevice" ref="a3a92b6f5eb939ed92f55fd06a7e76bf2" args="" --> <a class="el" href="structplayerc__position2d__t.html">playerc_position2d_t</a> * </td><td class="memItemRight" valign="bottom"><b>mDevice</b></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>The <code><a class="el" href="classPlayerCc_1_1Position2dProxy.html" title="The Position2dProxy class is used to control a position2d device.">Position2dProxy</a></code> class is used to control a <a class="el" href="group__interface__position2d.html">position2d</a> device. </p> <p>The latest position data is contained in the attributes xpos, ypos, etc. </p> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="adf874103a6d767af65bd90fa9d640881"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GetXPos" ref="adf874103a6d767af65bd90fa9d640881" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double PlayerCc::Position2dProxy::GetXPos </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set PID terms. </p> <p>Set PID terms Set speed ramping profile spd rad/s, acc rad/s/s Accessor method </p> </div> </div> <a class="anchor" id="a2d84ba78b1077995c46bd37e35d0c481"></a><!-- doxytag: member="PlayerCc::Position2dProxy::GoTo" ref="a2d84ba78b1077995c46bd37e35d0c481" args="(player_pose2d_t pos, player_pose2d_t vel)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::GoTo </td> <td>(</td> <td class="paramtype"><a class="el" href="structplayer__pose2d.html">player_pose2d_t</a> </td> <td class="paramname"> <em>pos</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structplayer__pose2d.html">player_pose2d_t</a> </td> <td class="paramname"> <em>vel</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Send a motor command for position control mode. </p> <p>Specify the desired pose of the robot as a player_pose_t. desired motion speed as a player_pose_t. </p> </div> </div> <a class="anchor" id="a12fa91ddc7a193b443c593164bb367d4"></a><!-- doxytag: member="PlayerCc::Position2dProxy::RequestGeom" ref="a12fa91ddc7a193b443c593164bb367d4" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::RequestGeom </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Get the device's geometry; it is read into the relevant class attributes. </p> <p>Call <a class="el" href="classPlayerCc_1_1Position2dProxy.html#ae8d433ee7a4ebb7099d6dd91ee1d0ceb" title="Accessor for the robot's pose with respect to its.">GetOffset()</a> to access this data. </p> </div> </div> <a class="anchor" id="a319d8f265a83c916fb174a3ce892dc53"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetMotorEnable" ref="a319d8f265a83c916fb174a3ce892dc53" args="(bool enable)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::SetMotorEnable </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>enable</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Enable/disable the motors. </p> <p>Set <code>state</code> to 0 to disable or 1 to enable. Be VERY careful with this method! Your robot is likely to run across the room with the charger still attached. </p> </div> </div> <a class="anchor" id="a139e51e54b4b0a2ad77f2993b8faef72"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetOdometry" ref="a139e51e54b4b0a2ad77f2993b8faef72" args="(double aX, double aY, double aYaw)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::SetOdometry </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>aX</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aY</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYaw</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Select position mode Set <code>mode</code> for 0 for velocity mode, 1 for position mode. </p> <p>Sets the odometry to the pose <code></code>(x, y, yaw). Note that <code>x</code> and <code>y</code> are in m and <code>yaw</code> is in radians. </p> </div> </div> <a class="anchor" id="a687738f88dbb2e08f0d0289940d0ab46"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetSpeed" ref="a687738f88dbb2e08f0d0289940d0ab46" args="(double aXSpeed, double aYawSpeed)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::SetSpeed </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>aXSpeed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYawSpeed</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Same as the previous <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a00d299f64e7fa2b3e83aa8034ce80ad6" title="Send a motor command for velocity control mode.">SetSpeed()</a>, but doesn't take the yspeed speed (so use this one for non-holonomic robots). </p> <p>References <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a687738f88dbb2e08f0d0289940d0ab46">SetSpeed()</a>.</p> <p>Referenced by <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a687738f88dbb2e08f0d0289940d0ab46">SetSpeed()</a>.</p> </div> </div> <a class="anchor" id="a00d299f64e7fa2b3e83aa8034ce80ad6"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetSpeed" ref="a00d299f64e7fa2b3e83aa8034ce80ad6" args="(double aXSpeed, double aYSpeed, double aYawSpeed)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::SetSpeed </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>aXSpeed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYSpeed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYawSpeed</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Send a motor command for velocity control mode. </p> <p>Specify the forward, sideways, and angular speeds in m/sec, m/sec, and radians/sec, respectively. </p> </div> </div> <a class="anchor" id="af51453538bbc36dfa566f61ab1576bde"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetVelHead" ref="af51453538bbc36dfa566f61ab1576bde" args="(double aXSpeed, double aYSpeed, double aYawHead)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::SetVelHead </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>aXSpeed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYSpeed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYawHead</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Send a motor command for velocity/heading control mode. </p> <p>Specify the forward and sideways velocity (m/sec), and angular heading (rads). </p> </div> </div> <a class="anchor" id="a4f0fffcd6a6552323e8572076015de02"></a><!-- doxytag: member="PlayerCc::Position2dProxy::SetVelHead" ref="a4f0fffcd6a6552323e8572076015de02" args="(double aXSpeed, double aYawHead)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void PlayerCc::Position2dProxy::SetVelHead </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"> <em>aXSpeed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>aYawHead</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Same as the previous <a class="el" href="classPlayerCc_1_1Position2dProxy.html#af51453538bbc36dfa566f61ab1576bde" title="Send a motor command for velocity/heading control mode.">SetVelHead()</a>, but doesn't take the yspeed speed (so use this one for non-holonomic robots). </p> <p>References <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a4f0fffcd6a6552323e8572076015de02">SetVelHead()</a>.</p> <p>Referenced by <a class="el" href="classPlayerCc_1_1Position2dProxy.html#a4f0fffcd6a6552323e8572076015de02">SetVelHead()</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="playerc_09_09_8h_source.html">playerc++.h</a></li> </ul> </div> <!-- render the modification time of the source file --> <div class="timestamp"> <hr> <table style="width:100%;"> <tr> <td style="text-align:left;"> Last updated 12 September 2005 21:38:45 <!-- <td style="text-align:right;"> <a href="http://validator.w3.org/check/referer"><img style="vertical-align:middle;border:0;width:88px;height:31px" src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"></a> <a href="http://jigsaw.w3.org/css-validator/"> <img style="vertical-align:middle;border:0;width:88px;height:31px" src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"> </a> --> </tr> </table> </div> </tr> </table> </BODY> </HTML>