Author: DavidCzech
Date: 2008-03-18 01:27:50 -0400 (Tue, 18 Mar 2008)
New Revision: 1159

Modified:
   trunk/pysoy/src/_datatypes/BodyPosition.pxi
Log:
No ticket: Vector Math for BodyPosition

Modified: trunk/pysoy/src/_datatypes/BodyPosition.pxi
===================================================================
--- trunk/pysoy/src/_datatypes/BodyPosition.pxi 2008-03-18 04:47:38 UTC (rev 
1158)
+++ trunk/pysoy/src/_datatypes/BodyPosition.pxi 2008-03-18 05:27:50 UTC (rev 
1159)
@@ -53,6 +53,9 @@
       return soy._datatypes.BodyPosition((_position[0] + value[0],
                                           _position[1] + value[1],
                                           _position[2] + value[2]))
+    return soy._datatypes.BodyPosition((_position[0] + value[0],
+                                          _position[1] + value[1],
+                                          _position[2] + value[2]))
     return NotImplemented
 
   def __radd__(BodyPosition self, value) :
@@ -74,6 +77,10 @@
       return soy._datatypes.BodyPosition((_position[0] - value[0],
                                           _position[1] - value[1],
                                           _position[2] - value[2]))
+        if isinstance(value, soy.atoms.Vector) :
+    return soy._datatypes.BodyPosition((_position[0] - value[0],
+                                          _position[1] - value[1],
+                                          _position[2] - value[2]))
     return NotImplemented
 
   def __rsub__(BodyPosition self, value) :
@@ -110,6 +117,10 @@
       return soy._datatypes.BodyPosition((_position[0] / value[0],
                                           _position[1] / value[1],
                                           _position[2] / value[2]))
+    if isinstance(value, soy.atoms.Vector) :
+      return soy._datatypes.BodyPosition((_position[0] / value[0],
+                                          _position[1] / value[1],
+                                          _position[2] / value[2]))
     return NotImplemented
 
   def __rdiv__(BodyPosition self, value) :
@@ -146,6 +157,10 @@
       return soy._datatypes.BodyPosition((_position[0] * value[0],
                                           _position[1] * value[1],
                                           _position[2] * value[2]))
+    if isinstance(value, soy.atoms.Vector):
+      return soy._datatypes.BodyPosition((_position[0] * value[0],
+                                          _position[1] * value[1],
+                                          _position[2] * value[2]))
     return NotImplemented
   
   def __rmul__(BodyPosition self, value) :

_______________________________________________
PySoy-SVN mailing list
PySoy-SVN@pysoy.org
http://www.pysoy.org/mailman/listinfo/pysoy-svn

Reply via email to