[ODE] 'not yet implemented' Error

david@csworkbench.com david at csworkbench.com
Sat Mar 29 15:00:02 2003


Just a logical guess based on the Hinge joint, but I don't see why this
wouldn't work (this is completely untested):

extern "C" dReal dJointGetAMotorAngleRate (dxJointAMotor *joint, int anum)
{
  dAASSERT(joint && anum >= 0 && anum < 3);
  dUASSERT(joint->vtable == &__damotor_vtable,"joint is not an amotor");
  if (joint->node[0].body) {
    dVector3 axis;
    dJointGetAMotorAxis (joint, anum, axis);
    dReal rate = dDOT(axis,joint->node[0].body->avel);
    if (joint->node[1].body) rate -= dDOT(axis,joint->node[1].body->avel);
    return rate;
  }
  else return 0;
}

Replace that in ode/src/joint.cpp and see if it returns logical results.

David

> ARGH!!
>
> This looks like something that somebody just forgot to actually finish.
> Or is there some reason (difficulty?) that it hasn't been done for the
> motor joint?
>
> ----- Original Message -----
> From: "Ted Milker" <tmilker@thewretched.org>
> To: <ode@q12.org>
> Sent: Saturday, March 29, 2003 8:29 PM
> Subject: Re: [ODE] "not yet implemented" Error
>
>
>> On Sat, Mar 29, 2003 at 06:00:55PM +0200, Henri Hakl wrote:
>> > I've just mailed with Mattias - he assures me that the
>> Delphi-headers
> are a faithful conversion, so the problem is probably that the
> functionality simply hasn't been implemented (even if the documentation
> says it is available).
>> >
>> > Any final word form somebody that knows?
>>
>> Use the source, Luke. :P  From the ode-0.035 source base:
>>
>> extern "C" dReal dJointGetAMotorAngleRate (dxJointAMotor *joint, int
>> anum)
>> {
>>   // @@@
>>   dDebug (0,"not yet implemented");
>>   return 0;
>> }
>>
>> So yes, it hasn't been implemented yet.
>>
>> Ted
>> _______________________________________________
>> ODE mailing list
>> ODE@q12.org
>> http://q12.org/mailman/listinfo/ode
>
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode