The attribute preferred angle serves two purposes from my POV.
First, it gives the solver an idea around which angle or rather axis a joint is
supposed to be rotated about from the user. Second, during the solve the
preferred angle is used as
a starting point for the solver. As usually this results in a plane defined by
the
start joint, the effector and the ikHandle, the solver has a good starting point
to calculate a unique solution. Of course there are cases where this doesnt
work and for those the ultimate tool is a pole vector, ´given it is positioned
properly in space.
I guess technically Point 1 and 2 are technically identical but that is how I
can
make sense of this attribute. Also this may explain why when joints are at an
angle
when you add IKs you do not need to set the preferred angle attribute as Maya
can figure it out.

 

JP <[email protected]> hat am 1. November 2010 um 19:22 geschrieben:

> Thanks all,
>
> I'm putting this to bed, as it seems very rare, there are some ways
> around it, and there are other things demanding attention. I'm still
> very curious about the *exact* role that the preferred angle plays in
> the solve, as my previous assumption seems to be incorrect.
>
> Also, just to clarify - I didn't mean to sound like I actually wanted
> someone from Autodesk to slip me some code - I know it's not gonna
> happen and is probably illegal...plus, I'm pretty sure it would take
> me a year to figure out how it worked :P.  That being said, I've
> always thought it'd be nice to have some better documentation on the
> impact of various inputs to ik the system and their impact on the
> solve (joint orientation and preferred angles being the main two that
> seem fairly undocumented).
>
> I think I mistakenly replied to Jeremy directly, so I've pasted my
> original reply below:
> """
> Thanks guys,
>
> I'm pretty sure I don't have any cycle errors - but I'll double check.
> It
> does somehow seem like the node doesn't fully compute, and it only
> happens
> in very specific cases. I'm sorry I can't provide any really good
> examples -
> there are good reasons :)
>
> I mentioned that setting the preferred angle at <<30,0,0>> wouldn't
> fix the
> problem - actually, it would look like it fixed it, then after a bit
> of
> scrubbing the problem would reappear. It didn't seem to reappear at
> <<90,0,0>> degrees, which seems interesting to me, as I was under the
> impression that setting even the slightest angle would cause the
> joints to
> bend in that direction if there weren't any other hints for how to
> solve.
>
> There's a relationship between joint orientation, the preferred angle,
> and
> the location of the pole vector that I just don't fully understand. I
> haven't dealt with the preferred angle much - I've always set up ik on
> pre-bent joints, and assumed that this angle was somehow set
> internally, but
> now it seems like it does have an impact on the way the ik solves in
> some
> specific circumstances, even when joints are bent when the ik is set
> up.
> """
>
> Anyways, thanks for the help!
>
> --
> http://groups.google.com/group/python_inside_maya

-- 
http://groups.google.com/group/python_inside_maya

Reply via email to