//------------------------------------------------------------------------------------- PyObject* ScriptVector3::__py_pyDistSqrTo(PyObject* self, PyObject* args) { if (PyTuple_Size(args) != 1) { PyErr_SetString(PyExc_TypeError, "args > 1 is error!\n"); PyErr_PrintEx(0); S_Return; } ScriptVector3* sv = static_cast<ScriptVector3*>(self); Vector3& v = sv->getVector(); Vector3 v1; convertPyObjectToVector3(v1, PyTuple_GET_ITEM(args, 0)); Vector3 rv = (v - v1); return PyFloat_FromDouble(KBEVec3LengthSq(&rv)); //计算点乘并返回 }
//------------------------------------------------------------------------------------- PyObject* ScriptVector3::pyGetVectorLengthSquared() { return PyFloat_FromDouble(KBEVec3LengthSq(&getVector())); }