Python Vector Math
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 07/10/2010 at 18:30, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 12
Platform: Mac OSX ;
Language(s) : PYTHON ;---------
Hi Sebastian, i think I may have stumbled on a bug bug it could be I don't know what i am doing.Take this example
vec = c4d.Vector (0,0,10)
vec - vec * vec
print vec
I would expect the result to be (0,0,100) but instead I get (100,100,100)
same result happens if I use vec.__mul__(vec)If I do division:
vec = vec /2
I get (0,0,5), which is what I would expect.regards,
jonah -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/10/2010 at 07:21, xxxxxxxx wrote:
Hi jonahtobias,
the __mul__ (* ) operator for the Vector class returns the dot product.
It should return a float value and no Vector. Please use
Vector(...).Dot(Vector(...)) for the dot product calculation which works fine.Cheers, Sebastian
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/10/2010 at 08:21, xxxxxxxx wrote:
Thank Sebastian,
So if I wanted to multiply 2 Vectors i.e.
Vector(10,2,2) * Vector(10,2,2) so the result is == (100,4,4)
how would I do this?
right now python gives (108,108,108) -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/10/2010 at 08:26, xxxxxxxx wrote:
Use the __xor__ operator for this: Vector(1,2,3) ^ Vector(4, 5, 6)
Multiplies two vectors together componentwise
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/10/2010 at 08:29, xxxxxxxx wrote:
Terrific! Thank you.