Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
On 19/04/2014 at 07:09, xxxxxxxx wrote:
I can XOR a vector
pxvec = pxvec ^ vecmask
how do I XOR a single axis
pxvec.x = pxvec.x ???? vecmask.x
tia
On 19/04/2014 at 09:42, xxxxxxxx wrote:
pxvec.x = pcvec.x * vecmask.x
Vector XOR just multiplies componentwise.
-Niklas
On 22/04/2014 at 04:35, xxxxxxxx wrote:
thanks
I couldn't make sense of the SDK syntax '__rxor__(self,other)'
or the example
I thought % was a modulo operator?
Vector.\__rxor\_\_(self, other)[](file:///Users/paultaylor/Documents/Media/3D/Programming/Python/CINEMA4DR15037PYTHONSDKHTML20130823.zip%20Folder/help/modules/c4d/Vector/index.html?highlight=xor#Vector.__rxor__)
Vector.\__rxor\_\_
Multiplies two vectors together componentwise and set the left hand vector to the result:
import c4d v_result = c4d.Vector(1,2,3)%c4d.Vector(2,3,4) #v_result => Vector(2,6,12)
Vector
Retu_<_t_>_
On 22/04/2014 at 09:09, xxxxxxxx wrote:
Well, that's a typo in the docs. The modulo operator performs the cross product. Thanks for the notice.
On 23/04/2014 at 11:43, xxxxxxxx wrote:
So how do you form this with the example above pls?
can't figure the syntax
__rxor__(self,other)
xvec.x = pcvec.x__rxor__(vecmask.x)
On 24/04/2014 at 03:15, xxxxxxxx wrote:
I don't get what you are trying to do. Vector.__rxor__() is only called in some special cases, see
https://docs.python.org/2/reference/datamodel.html#object.__rxor__
If you want to multiply two vectors componentwise, use the ^ operator. The * operator on Vectors performs the dot-product. If you want to multiply one component of a vector with another, use the * operator. You can't multiply a vector component componentwise as there is only one component which is the value itself.