[ODE] AMotor small changes

Benoit Chaperot b.chaperot at jstarlab.com
Fri Apr 23 11:05:24 MST 2004


What I think my changes are doing are just:
Angles don't wrap, when the user set an angle equal to PI+delta, the amotor 
doesn't internally wrap the angle to -PI+delta. A 2*PI jump in one time step is 
generally not what the user wants, and I don't think anyone was relying on the 
current behaviour.

What I would suggest would be to add a define, to leave the possibility to the 
user to change the amotor behaviour.

Benoit



Selon George Birbilis <birbilis at kagi.com>:

> > > I have done some changes in joint.cpp so that:
> > > * AMotor can now be used to attach a body to the static environment.
> > > * Angles passed to dJointSetAMotorParam (dParamLoStop,dParamHiStop)
> > > can now be outside the (-PI,PI) range.
> >
> > i've checked in a modified version of these changes. the -pi..pi angle
> > change is not API backwards compatible, so i left it out. also, i added
> > code to handle the possibility of a reversed joint, i.e. dAttach
> > (0,body). please verify that this works for you.
> 
> what do you mean by saying "not API backwards compatible"?
> 
> it's "Set" not "Get" that allows the outside -PI..PI in this addition from
> what I understand (maybe internally wraps to -pi..pi the value, not sure if
> that costs too much [at least one comparison at every "set" action])
> 
> however I don't see where's the problem with backwards compatibility if
> "Get" will always return -pi..pi as before (or won't it?)
> 
> 
> 




More information about the ODE mailing list