On 5/21/2011 9:24 AM, Andrew wrote:
>> It turns out that your problem is very simple. The libnml functions
>> pmRpyZyzConvert and pmZyzRpyConvert are declared but not implemented in
>> _posemath.c!
>>
>> You didn't see this during compilation and linking because the functions
>> are declared and you didn't see it during execution because you aren't
>> checking for the error message these functions generate when called
>> (return pmErrno = PM_IMPL_ERR). The "crazy" values you are reading are
>> fortuitous.
>>
>> Give me a couple days and I'll see if I can come up with satisfactory
>> code for these two functions (Euler angles, quaternions, etc., were part
>> of my physics education). If some else has already do so, please feel
>> free to jump in.
>
> I see that pmRpyMatConvert, pmMatRpyConvert, pmZyzMatConvert
> and pmMatZyzConvert are implemented.
> It's possible to make quick Rpy<=>Zyz conversion through Mat, like
> pmQuatZyzConvert does.
>
>
> Andrew

Andrew:

True, true. But I note that the functions like pmQuatZyzConvert are 
marked "FIXME - - need direct equations"". In mathematics, the two 
approaches (one conversion or two concatenated conversions) are 
equivalent. In computer math, not so much. It may make no practical 
difference for Viesturs' application but I like the direct approach.

Regards,
Kent


------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its 
next-generation tools to help Windows* and Linux* C/C++ and Fortran 
developers boost performance applications - including clusters. 
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to