[Bf-blender-cvs] [8d3bfef] master: Extended mathutils.Vector.orthogonal() to accept a 2D vector.

Tamito Kajiyama noreply at git.blender.org
Wed Jul 23 16:19:15 CEST 2014


Commit: 8d3bfef538c6393048373c3642a7f626193271dc
Author: Tamito Kajiyama
Date:   Wed Jul 23 23:08:55 2014 +0900
Branches: master
https://developer.blender.org/rB8d3bfef538c6393048373c3642a7f626193271dc

Extended mathutils.Vector.orthogonal() to accept a 2D vector.

Reviewer: Campbell Barton

Differential revision: https://developer.blender.org/D668

===================================================================

M	source/blender/python/mathutils/mathutils_Vector.c

===================================================================

diff --git a/source/blender/python/mathutils/mathutils_Vector.c b/source/blender/python/mathutils/mathutils_Vector.c
index a719691..15a9860 100644
--- a/source/blender/python/mathutils/mathutils_Vector.c
+++ b/source/blender/python/mathutils/mathutils_Vector.c
@@ -814,17 +814,20 @@ static PyObject *Vector_orthogonal(VectorObject *self)
 {
 	float vec[3];
 
-	if (self->size != 3) {
+	if (self->size > 3) {
 		PyErr_SetString(PyExc_TypeError,
 		                "Vector.orthogonal(): "
-		                "Vector must be 3D");
+		                "Vector must be 3D or 2D");
 		return NULL;
 	}
 
 	if (BaseMath_ReadCallback(self) == -1)
 		return NULL;
 
-	ortho_v3_v3(vec, self->vec);
+	if (self->size == 3)
+		ortho_v3_v3(vec, self->vec);
+	else
+		ortho_v2_v2(vec, self->vec);
 
 	return Vector_CreatePyObject(vec, self->size, Py_NEW, Py_TYPE(self));
 }




More information about the Bf-blender-cvs mailing list