Exemple #1
0
//-------------------------------------------------------------------------------------
PyObject* ScriptVector3::__py_pyDot(PyObject* self, PyObject* args)
{
	ScriptVector3* v = new ScriptVector3(0,0,0);

	PyObject* pyResult = v->__py_pySet((PyObject*)v, args);
	if(pyResult)
		Py_DECREF(pyResult);

	ScriptVector3* sv = static_cast<ScriptVector3*>(self);
	float result = KBEVec3Dot(const_cast<Vector3*>(&sv->getVector()), const_cast<Vector3*>(&v->getVector()));
	Py_DECREF(v);
	return PyFloat_FromDouble(result);
}
Exemple #2
0
//-------------------------------------------------------------------------------------
PyObject* ScriptVector3::__py_pyCross2D(PyObject* self, PyObject* args)
{
	ScriptVector3* v = new ScriptVector3(0,0,0);
	ScriptVector3* sv = static_cast<ScriptVector3*>(self);

	PyObject* pyResult = v->__py_pySet((PyObject*)v, args);
	if(pyResult)
		Py_DECREF(pyResult);

	const Vector3 otherV = v->getVector();
	const Vector3 thisV = sv->getVector();
	float result = thisV[0] * otherV[2] - thisV[2] * otherV[0];
	Py_DECREF(v);
	return PyFloat_FromDouble(result);
}