source: OGRE/trunk/ogrenew/Docs/api/html/classOgreRefApp_1_1Joint.html @ 657

Revision 657, 29.7 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>OgreRefApp::Joint class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>OgreRefApp::Joint Class Reference</h1>Represents a linkage between application objects or between them and the world, enforcing certain constraints. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for OgreRefApp::Joint:
16<p><center><img src="classOgreRefApp_1_1Joint.png" usemap="#OgreRefApp::Joint_map" border="0" alt=""></center>
17<map name="OgreRefApp::Joint_map">
18<area href="classOgreRefApp_1_1BallJoint.html" alt="OgreRefApp::BallJoint" shape="rect" coords="0,56,169,80">
19<area href="classOgreRefApp_1_1Hinge2Joint.html" alt="OgreRefApp::Hinge2Joint" shape="rect" coords="179,56,348,80">
20<area href="classOgreRefApp_1_1HingeJoint.html" alt="OgreRefApp::HingeJoint" shape="rect" coords="358,56,527,80">
21<area href="classOgreRefApp_1_1SliderJoint.html" alt="OgreRefApp::SliderJoint" shape="rect" coords="537,56,706,80">
22<area href="classOgreRefApp_1_1UniversalJoint.html" alt="OgreRefApp::UniversalJoint" shape="rect" coords="716,56,885,80">
23</map>
24<a href="classOgreRefApp_1_1Joint-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
25<tr><td></td></tr>
26<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
27<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a> { <br>
28&nbsp;&nbsp;<a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw0">JT_BALL</a>,
29<a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw1">JT_SLIDER</a>,
30<a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw2">JT_HINGE</a>,
31<a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw3">JT_UNIVERSAL</a>,
32<br>
33&nbsp;&nbsp;<a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw4">JT_HINGE2</a>
34<br>
35 }</td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The type of joint.  <a href="#OgreRefApp_1_1UniversalJointw5">More...</a><br><br></td></tr>
38<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
39<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1Jointa0">Joint</a> (<a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a> jtype)</td></tr>
40
41<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor, however you should use World::createJoint(type, obj1, obj2).  <a href="#OgreRefApp_1_1Jointa0"></a><br><br></td></tr>
42<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1Jointa1">~Joint</a> ()</td></tr>
43
44<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointa4">getType</a> (void)</td></tr>
45
46<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the type of this joint.  <a href="#OgreRefApp_1_1UniversalJointa4"></a><br><br></td></tr>
47<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1Jointa3">setAnchorPosition</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;point)=0</td></tr>
48
49<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the anchor point of this joint.  <a href="#OgreRefApp_1_1Jointa3"></a><br><br></td></tr>
50<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointa5">getAnchorPosition</a> (void)</td></tr>
51
52<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the anchor position of this joint.  <a href="#OgreRefApp_1_1UniversalJointa5"></a><br><br></td></tr>
53<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const std::pair&lt; <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> *,<br>
54 <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> * &gt; &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointa6">getAttachments</a> (void)</td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the attached objects, a NULL means no object ie a static attachment.  <a href="#OgreRefApp_1_1UniversalJointa6"></a><br><br></td></tr>
57<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1Jointa6">setAxes</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;primaryAxis, const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;secondaryAxis=<a class="el" href="classOgre_1_1Vector3.html#Ogre_1_1Vector3s0">Vector3::ZERO</a>)=0</td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the axes for this joint.  <a href="#OgreRefApp_1_1Jointa6"></a><br><br></td></tr>
60<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const std::pair&lt; <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>,<br>
61 <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &gt; &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointa7">getAxes</a> (void)</td></tr>
62
63<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the axes of this joint.  <a href="#OgreRefApp_1_1UniversalJointa7"></a><br><br></td></tr>
64<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
65<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointb0">setAttachments</a> (<a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> *obj1, <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> *obj2)</td></tr>
66
67<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the objects attached to this joint.  <a href="#OgreRefApp_1_1UniversalJointb0"></a><br><br></td></tr>
68<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
69<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp0">mType</a></td></tr>
70
71<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp1">mAnchor</a></td></tr>
72
73<tr><td class="memItemLeft" nowrap align=right valign=top>std::pair&lt; <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> *,<br>
74 <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp2">mAttachedObjects</a></td></tr>
75
76<tr><td class="memItemLeft" nowrap align=right valign=top>std::pair&lt; <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>, <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp3">mAxes</a></td></tr>
77
78<tr><td class="memItemLeft" nowrap align=right valign=top>dJoint *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp4">mOdeJoint</a></td></tr>
79
80</table>
81<hr><a name="_details"></a><h2>Detailed Description</h2>
82Represents a linkage between application objects or between them and the world, enforcing certain constraints.
83<p>
84<dl compact><dt><b>Remarks:</b></dt><dd>Joints can be used to link application objects together, or to link them to a static point in the world according to certain constraints. You should create joints using <a class="el" href="classOgreRefApp_1_1World.html#OgreRefApp_1_1Worlda16">World::createJoint</a>. You should then set certain global options, like it's world anchor position, before attaching it to application objects. You application objects should already be positioned how you would like relative to the joint anchor, since once they are attached, they will be constrained by it. </dd></dl>
85
86<p>
87
88<p>
89Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00042">42</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.<hr><h2>Member Enumeration Documentation</h2>
90<a class="anchor" name="OgreRefApp_1_1UniversalJointw5" doxytag="OgreRefApp::Joint::JointType" ></a><p>
91<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
92  <tr>
93    <td class="mdRow">
94      <table cellpadding="0" cellspacing="0" border="0">
95        <tr>
96          <td class="md" nowrap valign="top"> enum <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">OgreRefApp::Joint::JointType</a>
97      </table>
98    </td>
99  </tr>
100</table>
101<table cellspacing=5 cellpadding=0 border=0>
102  <tr>
103    <td>
104      &nbsp;
105    </td>
106    <td>
107
108<p>
109The type of joint.
110<p>
111<dl compact><dt><b>Enumeration values: </b></dt><dd>
112<table border=0 cellspacing=2 cellpadding=0>
113<tr><td valign=top><em><a class="anchor" name="OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw0" doxytag="JT_BALL" ></a>JT_BALL</em>&nbsp;</td><td>
114<a class="el" href="classOgreRefApp_1_1Ball.html">Ball</a> &amp; socket joint, has 3 degrees of freedom. </td></tr>
115<tr><td valign=top><em><a class="anchor" name="OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw1" doxytag="JT_SLIDER" ></a>JT_SLIDER</em>&nbsp;</td><td>
116Sliding joint, 1 degree of freedom (in-out). </td></tr>
117<tr><td valign=top><em><a class="anchor" name="OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw2" doxytag="JT_HINGE" ></a>JT_HINGE</em>&nbsp;</td><td>
118Hinge joint, 1 degree of freedom. </td></tr>
119<tr><td valign=top><em><a class="anchor" name="OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw3" doxytag="JT_UNIVERSAL" ></a>JT_UNIVERSAL</em>&nbsp;</td><td>
120Universal joint, like a double-hinge, 2 degrees of freedom. </td></tr>
121<tr><td valign=top><em><a class="anchor" name="OgreRefApp_1_1UniversalJointw5OgreRefApp_1_1UniversalJointw4" doxytag="JT_HINGE2" ></a>JT_HINGE2</em>&nbsp;</td><td>
1222 hinges in series, like the axel of a car </td></tr>
123</table>
124</dl>
125
126<p>
127Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00046">46</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
128  </tr>
129</table>
130<hr><h2>Constructor &amp; Destructor Documentation</h2>
131<a class="anchor" name="OgreRefApp_1_1Jointa0" doxytag="OgreRefApp::Joint::Joint" ></a><p>
132<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
133  <tr>
134    <td class="mdRow">
135      <table cellpadding="0" cellspacing="0" border="0">
136        <tr>
137          <td class="md" nowrap valign="top"> OgreRefApp::Joint::Joint </td>
138          <td class="md" valign="top">(&nbsp;</td>
139          <td class="md" nowrap valign="top"><a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a>&nbsp;</td>
140          <td class="mdname1" valign="top" nowrap> <em>jtype</em>          </td>
141          <td class="md" valign="top">&nbsp;)&nbsp;</td>
142          <td class="md" nowrap></td>
143        </tr>
144
145      </table>
146    </td>
147  </tr>
148</table>
149<table cellspacing=5 cellpadding=0 border=0>
150  <tr>
151    <td>
152      &nbsp;
153    </td>
154    <td>
155
156<p>
157Constructor, however you should use World::createJoint(type, obj1, obj2).
158<p>
159    </td>
160  </tr>
161</table>
162<a class="anchor" name="OgreRefApp_1_1Jointa1" doxytag="OgreRefApp::Joint::~Joint" ></a><p>
163<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
164  <tr>
165    <td class="mdRow">
166      <table cellpadding="0" cellspacing="0" border="0">
167        <tr>
168          <td class="md" nowrap valign="top"> virtual OgreRefApp::Joint::~<a class="el" href="classOgreRefApp_1_1Joint.html">Joint</a> </td>
169          <td class="md" valign="top">(&nbsp;</td>
170          <td class="mdname1" valign="top" nowrap>          </td>
171          <td class="md" valign="top">&nbsp;)&nbsp;</td>
172          <td class="md" nowrap><code> [virtual]</code></td>
173        </tr>
174
175      </table>
176    </td>
177  </tr>
178</table>
179<table cellspacing=5 cellpadding=0 border=0>
180  <tr>
181    <td>
182      &nbsp;
183    </td>
184    <td>
185
186<p>
187
188<p>
189Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00060">60</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
190  </tr>
191</table>
192<hr><h2>Member Function Documentation</h2>
193<a class="anchor" name="OgreRefApp_1_1UniversalJointa5" doxytag="OgreRefApp::Joint::getAnchorPosition" ></a><p>
194<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
195  <tr>
196    <td class="mdRow">
197      <table cellpadding="0" cellspacing="0" border="0">
198        <tr>
199          <td class="md" nowrap valign="top"> virtual const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&amp; OgreRefApp::Joint::getAnchorPosition </td>
200          <td class="md" valign="top">(&nbsp;</td>
201          <td class="md" nowrap valign="top">void&nbsp;</td>
202          <td class="mdname1" valign="top" nowrap>          </td>
203          <td class="md" valign="top">&nbsp;)&nbsp;</td>
204          <td class="md" nowrap><code> [virtual]</code></td>
205        </tr>
206
207      </table>
208    </td>
209  </tr>
210</table>
211<table cellspacing=5 cellpadding=0 border=0>
212  <tr>
213    <td>
214      &nbsp;
215    </td>
216    <td>
217
218<p>
219Gets the anchor position of this joint.
220<p>
221    </td>
222  </tr>
223</table>
224<a class="anchor" name="OgreRefApp_1_1UniversalJointa6" doxytag="OgreRefApp::Joint::getAttachments" ></a><p>
225<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
226  <tr>
227    <td class="mdRow">
228      <table cellpadding="0" cellspacing="0" border="0">
229        <tr>
230          <td class="md" nowrap valign="top"> virtual const std::pair&lt;<a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a>*, <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a>*&gt;&amp; OgreRefApp::Joint::getAttachments </td>
231          <td class="md" valign="top">(&nbsp;</td>
232          <td class="md" nowrap valign="top">void&nbsp;</td>
233          <td class="mdname1" valign="top" nowrap>          </td>
234          <td class="md" valign="top">&nbsp;)&nbsp;</td>
235          <td class="md" nowrap><code> [virtual]</code></td>
236        </tr>
237
238      </table>
239    </td>
240  </tr>
241</table>
242<table cellspacing=5 cellpadding=0 border=0>
243  <tr>
244    <td>
245      &nbsp;
246    </td>
247    <td>
248
249<p>
250Gets the attached objects, a NULL means no object ie a static attachment.
251<p>
252    </td>
253  </tr>
254</table>
255<a class="anchor" name="OgreRefApp_1_1UniversalJointa7" doxytag="OgreRefApp::Joint::getAxes" ></a><p>
256<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
257  <tr>
258    <td class="mdRow">
259      <table cellpadding="0" cellspacing="0" border="0">
260        <tr>
261          <td class="md" nowrap valign="top"> virtual const std::pair&lt;<a class="el" href="classOgre_1_1Vector3.html">Vector3</a>, <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&gt;&amp; OgreRefApp::Joint::getAxes </td>
262          <td class="md" valign="top">(&nbsp;</td>
263          <td class="md" nowrap valign="top">void&nbsp;</td>
264          <td class="mdname1" valign="top" nowrap>          </td>
265          <td class="md" valign="top">&nbsp;)&nbsp;</td>
266          <td class="md" nowrap><code> [virtual]</code></td>
267        </tr>
268
269      </table>
270    </td>
271  </tr>
272</table>
273<table cellspacing=5 cellpadding=0 border=0>
274  <tr>
275    <td>
276      &nbsp;
277    </td>
278    <td>
279
280<p>
281Gets the axes of this joint.
282<p>
283    </td>
284  </tr>
285</table>
286<a class="anchor" name="OgreRefApp_1_1UniversalJointa4" doxytag="OgreRefApp::Joint::getType" ></a><p>
287<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
288  <tr>
289    <td class="mdRow">
290      <table cellpadding="0" cellspacing="0" border="0">
291        <tr>
292          <td class="md" nowrap valign="top"> <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a> OgreRefApp::Joint::getType </td>
293          <td class="md" valign="top">(&nbsp;</td>
294          <td class="md" nowrap valign="top">void&nbsp;</td>
295          <td class="mdname1" valign="top" nowrap>          </td>
296          <td class="md" valign="top">&nbsp;)&nbsp;</td>
297          <td class="md" nowrap></td>
298        </tr>
299
300      </table>
301    </td>
302  </tr>
303</table>
304<table cellspacing=5 cellpadding=0 border=0>
305  <tr>
306    <td>
307      &nbsp;
308    </td>
309    <td>
310
311<p>
312Returns the type of this joint.
313<p>
314    </td>
315  </tr>
316</table>
317<a class="anchor" name="OgreRefApp_1_1Jointa3" doxytag="OgreRefApp::Joint::setAnchorPosition" ></a><p>
318<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
319  <tr>
320    <td class="mdRow">
321      <table cellpadding="0" cellspacing="0" border="0">
322        <tr>
323          <td class="md" nowrap valign="top"> virtual void OgreRefApp::Joint::setAnchorPosition </td>
324          <td class="md" valign="top">(&nbsp;</td>
325          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
326          <td class="mdname1" valign="top" nowrap> <em>point</em>          </td>
327          <td class="md" valign="top">&nbsp;)&nbsp;</td>
328          <td class="md" nowrap><code> [pure virtual]</code></td>
329        </tr>
330
331      </table>
332    </td>
333  </tr>
334</table>
335<table cellspacing=5 cellpadding=0 border=0>
336  <tr>
337    <td>
338      &nbsp;
339    </td>
340    <td>
341
342<p>
343Set the anchor point of this joint.
344<p>
345<dl compact><dt><b>Remarks:</b></dt><dd>Sets the location, in world space, of the anchor point of this joint, which is usually the hinge point or just the origin of joint. It has no meaning for JT_SLIDER and thus you don't need to call it for that. </dd></dl>
346
347<p>
348Implemented in <a class="el" href="classOgreRefApp_1_1BallJoint.html#OgreRefApp_1_1BallJointa2">OgreRefApp::BallJoint</a>, <a class="el" href="classOgreRefApp_1_1SliderJoint.html#OgreRefApp_1_1SliderJointa2">OgreRefApp::SliderJoint</a>, <a class="el" href="classOgreRefApp_1_1HingeJoint.html#OgreRefApp_1_1HingeJointa2">OgreRefApp::HingeJoint</a>, <a class="el" href="classOgreRefApp_1_1UniversalJoint.html#OgreRefApp_1_1UniversalJointa2">OgreRefApp::UniversalJoint</a>, and <a class="el" href="classOgreRefApp_1_1Hinge2Joint.html#OgreRefApp_1_1Hinge2Jointa2">OgreRefApp::Hinge2Joint</a>.    </td>
349  </tr>
350</table>
351<a class="anchor" name="OgreRefApp_1_1UniversalJointb0" doxytag="OgreRefApp::Joint::setAttachments" ></a><p>
352<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
353  <tr>
354    <td class="mdRow">
355      <table cellpadding="0" cellspacing="0" border="0">
356        <tr>
357          <td class="md" nowrap valign="top"> void OgreRefApp::Joint::setAttachments </td>
358          <td class="md" valign="top">(&nbsp;</td>
359          <td class="md" nowrap valign="top"><a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> *&nbsp;</td>
360          <td class="mdname" nowrap> <em>obj1</em>, </td>
361        </tr>
362        <tr>
363          <td class="md" nowrap align="right"></td>
364          <td></td>
365          <td class="md" nowrap><a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a> *&nbsp;</td>
366          <td class="mdname" nowrap> <em>obj2</em></td>
367        </tr>
368        <tr>
369          <td></td>
370          <td class="md">)&nbsp;</td>
371          <td class="md" colspan="2"><code> [protected]</code></td>
372        </tr>
373
374      </table>
375    </td>
376  </tr>
377</table>
378<table cellspacing=5 cellpadding=0 border=0>
379  <tr>
380    <td>
381      &nbsp;
382    </td>
383    <td>
384
385<p>
386Sets the objects attached to this joint.
387<p>
388<dl compact><dt><b>Remarks:</b></dt><dd>It appears that this has to be set before other joint params like anchor etc, otherwise the joint does not behave. Therefore it is internal and is called during construction. </dd></dl>
389    </td>
390  </tr>
391</table>
392<a class="anchor" name="OgreRefApp_1_1Jointa6" doxytag="OgreRefApp::Joint::setAxes" ></a><p>
393<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
394  <tr>
395    <td class="mdRow">
396      <table cellpadding="0" cellspacing="0" border="0">
397        <tr>
398          <td class="md" nowrap valign="top"> virtual void OgreRefApp::Joint::setAxes </td>
399          <td class="md" valign="top">(&nbsp;</td>
400          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
401          <td class="mdname" nowrap> <em>primaryAxis</em>, </td>
402        </tr>
403        <tr>
404          <td class="md" nowrap align="right"></td>
405          <td></td>
406          <td class="md" nowrap>const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
407          <td class="mdname" nowrap> <em>secondaryAxis</em> = <a class="el" href="classOgre_1_1Vector3.html#Ogre_1_1Vector3s0">Vector3::ZERO</a></td>
408        </tr>
409        <tr>
410          <td></td>
411          <td class="md">)&nbsp;</td>
412          <td class="md" colspan="2"><code> [pure virtual]</code></td>
413        </tr>
414
415      </table>
416    </td>
417  </tr>
418</table>
419<table cellspacing=5 cellpadding=0 border=0>
420  <tr>
421    <td>
422      &nbsp;
423    </td>
424    <td>
425
426<p>
427Sets the axes for this joint.
428<p>
429<dl compact><dt><b>Remarks:</b></dt><dd>The meaning of axes for a joint depends on it's type: <ul>
430<li>
431For JT_BALL, it has no meaning and you don't need to call it. </li>
432<li>
433For JT_SLIDER, only one is applicable and it's the axis along which the slide occurs.  </li>
434<li>
435For JT_HINGE, only one is applicable and it's the hinge axis.  </li>
436<li>
437For JT_UNIVERSAL, and JT_HINGE2 it's the 2 hinge axes. </li>
438</ul>
439</dd></dl>
440
441<p>
442Implemented in <a class="el" href="classOgreRefApp_1_1BallJoint.html#OgreRefApp_1_1BallJointa3">OgreRefApp::BallJoint</a>, <a class="el" href="classOgreRefApp_1_1SliderJoint.html#OgreRefApp_1_1SliderJointa3">OgreRefApp::SliderJoint</a>, <a class="el" href="classOgreRefApp_1_1HingeJoint.html#OgreRefApp_1_1HingeJointa3">OgreRefApp::HingeJoint</a>, <a class="el" href="classOgreRefApp_1_1UniversalJoint.html#OgreRefApp_1_1UniversalJointa3">OgreRefApp::UniversalJoint</a>, and <a class="el" href="classOgreRefApp_1_1Hinge2Joint.html#OgreRefApp_1_1Hinge2Jointa3">OgreRefApp::Hinge2Joint</a>.    </td>
443  </tr>
444</table>
445<hr><h2>Member Data Documentation</h2>
446<a class="anchor" name="OgreRefApp_1_1UniversalJointp1" doxytag="OgreRefApp::Joint::mAnchor" ></a><p>
447<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
448  <tr>
449    <td class="mdRow">
450      <table cellpadding="0" cellspacing="0" border="0">
451        <tr>
452          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp1">OgreRefApp::Joint::mAnchor</a><code> [protected]</code>
453      </table>
454    </td>
455  </tr>
456</table>
457<table cellspacing=5 cellpadding=0 border=0>
458  <tr>
459    <td>
460      &nbsp;
461    </td>
462    <td>
463
464<p>
465
466<p>
467Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00106">106</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
468  </tr>
469</table>
470<a class="anchor" name="OgreRefApp_1_1UniversalJointp2" doxytag="OgreRefApp::Joint::mAttachedObjects" ></a><p>
471<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
472  <tr>
473    <td class="mdRow">
474      <table cellpadding="0" cellspacing="0" border="0">
475        <tr>
476          <td class="md" nowrap valign="top"> std::pair&lt;<a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a>*, <a class="el" href="classOgreRefApp_1_1ApplicationObject.html">ApplicationObject</a>*&gt; <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp2">OgreRefApp::Joint::mAttachedObjects</a><code> [protected]</code>
477      </table>
478    </td>
479  </tr>
480</table>
481<table cellspacing=5 cellpadding=0 border=0>
482  <tr>
483    <td>
484      &nbsp;
485    </td>
486    <td>
487
488<p>
489
490<p>
491Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00107">107</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
492  </tr>
493</table>
494<a class="anchor" name="OgreRefApp_1_1UniversalJointp3" doxytag="OgreRefApp::Joint::mAxes" ></a><p>
495<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
496  <tr>
497    <td class="mdRow">
498      <table cellpadding="0" cellspacing="0" border="0">
499        <tr>
500          <td class="md" nowrap valign="top"> std::pair&lt;<a class="el" href="classOgre_1_1Vector3.html">Vector3</a>, <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&gt; <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp3">OgreRefApp::Joint::mAxes</a><code> [protected]</code>
501      </table>
502    </td>
503  </tr>
504</table>
505<table cellspacing=5 cellpadding=0 border=0>
506  <tr>
507    <td>
508      &nbsp;
509    </td>
510    <td>
511
512<p>
513
514<p>
515Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00108">108</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
516  </tr>
517</table>
518<a class="anchor" name="OgreRefApp_1_1UniversalJointp4" doxytag="OgreRefApp::Joint::mOdeJoint" ></a><p>
519<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
520  <tr>
521    <td class="mdRow">
522      <table cellpadding="0" cellspacing="0" border="0">
523        <tr>
524          <td class="md" nowrap valign="top"> dJoint* <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp4">OgreRefApp::Joint::mOdeJoint</a><code> [protected]</code>
525      </table>
526    </td>
527  </tr>
528</table>
529<table cellspacing=5 cellpadding=0 border=0>
530  <tr>
531    <td>
532      &nbsp;
533    </td>
534    <td>
535
536<p>
537
538<p>
539Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00111">111</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
540  </tr>
541</table>
542<a class="anchor" name="OgreRefApp_1_1UniversalJointp0" doxytag="OgreRefApp::Joint::mType" ></a><p>
543<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
544  <tr>
545    <td class="mdRow">
546      <table cellpadding="0" cellspacing="0" border="0">
547        <tr>
548          <td class="md" nowrap valign="top"> <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointw5">JointType</a> <a class="el" href="classOgreRefApp_1_1Joint.html#OgreRefApp_1_1UniversalJointp0">OgreRefApp::Joint::mType</a><code> [protected]</code>
549      </table>
550    </td>
551  </tr>
552</table>
553<table cellspacing=5 cellpadding=0 border=0>
554  <tr>
555    <td>
556      &nbsp;
557    </td>
558    <td>
559
560<p>
561
562<p>
563Definition at line <a class="el" href="OgreRefAppJoint_8h-source.html#l00105">105</a> of file <a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a>.    </td>
564  </tr>
565</table>
566<hr>The documentation for this class was generated from the following file:<ul>
567<li><a class="el" href="OgreRefAppJoint_8h-source.html">OgreRefAppJoint.h</a></ul>
568<hr>
569<p>
570Copyright &copy; 2000-2005 by The OGRE Team<br />
571<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
572This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
573                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
574                <Work rdf:about="">
575                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
576        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
577                </Work>
578                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
579
580Last modified Sun Feb 12 13:11:53 2006
581</p>
582</body>
583</html>
Note: See TracBrowser for help on using the repository browser.