Today I stumbled over a problem of the quasi-polymorphism approach of
<node3d>.color() command, also found in
specular(), ambient(), emissive() and others.
These are generous in that they accept the three RGB color values as separate parameters or as a tuple. But watch out, this is paid for by abandoning the keyword argument feature for the
node parameter.
So while this works
Code:
node.color(1,0,0, node='left')
using an RGB tuple does
not work
Code:
node.color([1,0,0], node='left')
and requires omission of the keyword to work properly:
Code:
node.color([1,0,0], 'left')
While this is weakly documented in Vizard
help, the method signature or doc string does not really hint you to that.
Furthermore, the
documentation does not tell you about the
mode parameter of
color() and it's possible values.
I don't have a pretty neat solution to this issue, but maybe there exist a Python guru out there who has. So far my post is mainly to raise awareness.
BTW, similar things apply to setPosition(), setEuler() and several other positional and orientation commands.