[ODE] Joint forces

Gary R. Van Sickle g.r.vansickle at worldnet.att.net
Mon Aug 26 21:09:01 2002


Erwin just added something like that to (I think) cvs HEAD:

"
I just implemented this. I added a callback member to the dxJoint struct. It
can be added to every joint type, but i dont think its really useful to
joints other than contacts. This is it:

typedef void dJointCallback (dJointID j, dReal stepsize, dVector3 f1,
dVector3 t1, dVector3 f2, dVector3 t2);
j = the joint
stepsize = the current stepping rate
f1 = the to be added force on b1
t1 = the to be added torque on b1
f2 = the to be added force on b2 (zero if b2 == 0)
t2 = the to be added torque on b2 (zero if b2 == 0)

Note that these values are not const and thus may be changed, although its
not very advisable.

I've not yet tested how useful it all is. I just noticed
dJointGetContactData() is not available, and should be added as well.
"

-- 
Gary R. Van Sickle
Brewer.  Patriot. 

> -----Original Message-----
> From: ode-admin@q12.org [mailto:ode-admin@q12.org]On Behalf Of Nate W
> Sent: Monday, August 26, 2002 3:04 PM
> To: ode@q12.org
> Subject: [ODE] Joint forces
> 
> 
> 
> I could really use an API to get the amount of force that was applied to a
> joint in the previous time-step.  For example, if an arm is lifting an
> object, how much torque was applied to the elbow?  
> 
> I looked into the code in hopes of finding this information but I didn't
> get far.  Is the information I want available at any particular point
> during the step processing?  Or are the forces no longer associated with
> the joints that caused them by the time the forces are calculated and
> applied?
> 
> Thanks.
> 
> -- 
> 
> Nate Waddoups
> Redmond WA USA
> http://www.natew.com
> 
> 
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode