// python wrapper for vtkPlane // #define VTK_WRAPPING_CXX #define VTK_STREAMS_FWD_ONLY #include "vtkPythonArgs.h" #include "vtkPythonOverload.h" #include "vtkConfigure.h" #include #include #include "vtkVariant.h" #include "vtkIndent.h" #include "vtkPlane.h" extern "C" { VTK_ABI_EXPORT void PyVTKAddFile_vtkPlane(PyObject *); } extern "C" { VTK_ABI_EXPORT PyObject *PyvtkPlane_ClassNew(); } #ifndef DECLARED_PyvtkImplicitFunction_ClassNew extern "C" { PyObject *PyvtkImplicitFunction_ClassNew(); } #define DECLARED_PyvtkImplicitFunction_ClassNew #endif static const char *PyvtkPlane_Doc = "vtkPlane - perform various plane computations\n\n" "Superclass: vtkImplicitFunction\n\n" "vtkPlane provides methods for various plane computations. These\n" "include projecting points onto a plane, evaluating the plane\n" "equation, and returning plane normal. vtkPlane is a concrete\n" "implementation of the abstract class vtkImplicitFunction.\n\n"; static PyObject * PyvtkPlane_IsTypeOf(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "IsTypeOf"); char *temp0 = nullptr; PyObject *result = nullptr; if (ap.CheckArgCount(1) && ap.GetValue(temp0)) { int tempr = vtkPlane::IsTypeOf(temp0); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_IsA(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "IsA"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); char *temp0 = nullptr; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetValue(temp0)) { int tempr = (ap.IsBound() ? op->IsA(temp0) : op->vtkPlane::IsA(temp0)); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_SafeDownCast(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "SafeDownCast"); vtkObjectBase *temp0 = nullptr; PyObject *result = nullptr; if (ap.CheckArgCount(1) && ap.GetVTKObject(temp0, "vtkObjectBase")) { vtkPlane *tempr = vtkPlane::SafeDownCast(temp0); if (!ap.ErrorOccurred()) { result = ap.BuildVTKObject(tempr); } } return result; } static PyObject * PyvtkPlane_NewInstance(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "NewInstance"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { vtkPlane *tempr = (ap.IsBound() ? op->NewInstance() : op->vtkPlane::NewInstance()); if (!ap.ErrorOccurred()) { result = ap.BuildVTKObject(tempr); if (result && PyVTKObject_Check(result)) { PyVTKObject_GetObject(result)->UnRegister(0); PyVTKObject_SetFlag(result, VTK_PYTHON_IGNORE_UNREGISTER, 1); } } } return result; } static PyObject * PyvtkPlane_EvaluateFunction_s1(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "EvaluateFunction"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); vtkDataArray *temp0 = nullptr; vtkDataArray *temp1 = nullptr; PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetVTKObject(temp0, "vtkDataArray") && ap.GetVTKObject(temp1, "vtkDataArray")) { if (ap.IsBound()) { op->EvaluateFunction(temp0, temp1); } else { op->vtkPlane::EvaluateFunction(temp0, temp1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_EvaluateFunction_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "EvaluateFunction"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetArray(temp0, size0)) { ap.SaveArray(temp0, save0, size0); double tempr = (ap.IsBound() ? op->EvaluateFunction(temp0) : op->vtkPlane::EvaluateFunction(temp0)); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_EvaluateFunction_s3(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "EvaluateFunction"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); double temp0; double temp1; double temp2; PyObject *result = nullptr; if (op && ap.CheckArgCount(3) && ap.GetValue(temp0) && ap.GetValue(temp1) && ap.GetValue(temp2)) { double tempr = (ap.IsBound() ? op->EvaluateFunction(temp0, temp1, temp2) : op->vtkPlane::EvaluateFunction(temp0, temp1, temp2)); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_EvaluateFunction(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(self, args); switch(nargs) { case 2: return PyvtkPlane_EvaluateFunction_s1(self, args); case 1: return PyvtkPlane_EvaluateFunction_s2(self, args); case 3: return PyvtkPlane_EvaluateFunction_s3(self, args); } vtkPythonArgs::ArgCountError(nargs, "EvaluateFunction"); return nullptr; } static PyObject * PyvtkPlane_EvaluateGradient(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "EvaluateGradient"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); if (ap.IsBound()) { op->EvaluateGradient(temp0, temp1); } else { op->vtkPlane::EvaluateGradient(temp0, temp1); } if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_SetNormal_s1(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "SetNormal"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); double temp0; double temp1; double temp2; PyObject *result = nullptr; if (op && ap.CheckArgCount(3) && ap.GetValue(temp0) && ap.GetValue(temp1) && ap.GetValue(temp2)) { if (ap.IsBound()) { op->SetNormal(temp0, temp1, temp2); } else { op->vtkPlane::SetNormal(temp0, temp1, temp2); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_SetNormal_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "SetNormal"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetArray(temp0, size0)) { if (ap.IsBound()) { op->SetNormal(temp0); } else { op->vtkPlane::SetNormal(temp0); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_SetNormal(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(self, args); switch(nargs) { case 3: return PyvtkPlane_SetNormal_s1(self, args); case 1: return PyvtkPlane_SetNormal_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "SetNormal"); return nullptr; } static PyObject * PyvtkPlane_GetNormal(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetNormal"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); int sizer = 3; PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { double *tempr = (ap.IsBound() ? op->GetNormal() : op->vtkPlane::GetNormal()); if (!ap.ErrorOccurred()) { result = ap.BuildTuple(tempr, sizer); } } return result; } static PyObject * PyvtkPlane_SetOrigin_s1(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "SetOrigin"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); double temp0; double temp1; double temp2; PyObject *result = nullptr; if (op && ap.CheckArgCount(3) && ap.GetValue(temp0) && ap.GetValue(temp1) && ap.GetValue(temp2)) { if (ap.IsBound()) { op->SetOrigin(temp0, temp1, temp2); } else { op->vtkPlane::SetOrigin(temp0, temp1, temp2); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_SetOrigin_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "SetOrigin"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetArray(temp0, size0)) { if (ap.IsBound()) { op->SetOrigin(temp0); } else { op->vtkPlane::SetOrigin(temp0); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_SetOrigin(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(self, args); switch(nargs) { case 3: return PyvtkPlane_SetOrigin_s1(self, args); case 1: return PyvtkPlane_SetOrigin_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "SetOrigin"); return nullptr; } static PyObject * PyvtkPlane_GetOrigin(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetOrigin"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); int sizer = 3; PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { double *tempr = (ap.IsBound() ? op->GetOrigin() : op->vtkPlane::GetOrigin()); if (!ap.ErrorOccurred()) { result = ap.BuildTuple(tempr, sizer); } } return result; } static PyObject * PyvtkPlane_Push(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "Push"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); double temp0; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetValue(temp0)) { if (ap.IsBound()) { op->Push(temp0); } else { op->vtkPlane::Push(temp0); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_ProjectPoint_s1(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "ProjectPoint"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; const int size3 = 3; double temp3[3]; double save3[3]; PyObject *result = nullptr; if (ap.CheckArgCount(4) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); vtkPlane::ProjectPoint(temp0, temp1, temp2, temp3); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (ap.ArrayHasChanged(temp2, save2, size2) && !ap.ErrorOccurred()) { ap.SetArray(2, temp2, size2); } if (ap.ArrayHasChanged(temp3, save3, size3) && !ap.ErrorOccurred()) { ap.SetArray(3, temp3, size3); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_ProjectPoint_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "ProjectPoint"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); if (ap.IsBound()) { op->ProjectPoint(temp0, temp1); } else { op->vtkPlane::ProjectPoint(temp0, temp1); } if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_ProjectPoint(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(args); switch(nargs) { case 4: return PyvtkPlane_ProjectPoint_s1(self, args); case 2: case 3: return PyvtkPlane_ProjectPoint_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "ProjectPoint"); return nullptr; } static PyObject * PyvtkPlane_ProjectVector_s1(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "ProjectVector"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; const int size3 = 3; double temp3[3]; double save3[3]; PyObject *result = nullptr; if (ap.CheckArgCount(4) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); vtkPlane::ProjectVector(temp0, temp1, temp2, temp3); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (ap.ArrayHasChanged(temp2, save2, size2) && !ap.ErrorOccurred()) { ap.SetArray(2, temp2, size2); } if (ap.ArrayHasChanged(temp3, save3, size3) && !ap.ErrorOccurred()) { ap.SetArray(3, temp3, size3); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_ProjectVector_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "ProjectVector"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); if (ap.IsBound()) { op->ProjectVector(temp0, temp1); } else { op->vtkPlane::ProjectVector(temp0, temp1); } if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_ProjectVector(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(args); switch(nargs) { case 4: return PyvtkPlane_ProjectVector_s1(self, args); case 2: case 3: return PyvtkPlane_ProjectVector_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "ProjectVector"); return nullptr; } static PyObject * PyvtkPlane_GeneralizedProjectPoint_s1(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "GeneralizedProjectPoint"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; const int size3 = 3; double temp3[3]; double save3[3]; PyObject *result = nullptr; if (ap.CheckArgCount(4) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); vtkPlane::GeneralizedProjectPoint(temp0, temp1, temp2, temp3); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (ap.ArrayHasChanged(temp2, save2, size2) && !ap.ErrorOccurred()) { ap.SetArray(2, temp2, size2); } if (ap.ArrayHasChanged(temp3, save3, size3) && !ap.ErrorOccurred()) { ap.SetArray(3, temp3, size3); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_GeneralizedProjectPoint_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GeneralizedProjectPoint"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); if (ap.IsBound()) { op->GeneralizedProjectPoint(temp0, temp1); } else { op->vtkPlane::GeneralizedProjectPoint(temp0, temp1); } if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkPlane_GeneralizedProjectPoint(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(args); switch(nargs) { case 4: return PyvtkPlane_GeneralizedProjectPoint_s1(self, args); case 2: case 3: return PyvtkPlane_GeneralizedProjectPoint_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "GeneralizedProjectPoint"); return nullptr; } static PyObject * PyvtkPlane_Evaluate(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "Evaluate"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; PyObject *result = nullptr; if (ap.CheckArgCount(3) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); double tempr = vtkPlane::Evaluate(temp0, temp1, temp2); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (ap.ArrayHasChanged(temp2, save2, size2) && !ap.ErrorOccurred()) { ap.SetArray(2, temp2, size2); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_DistanceToPlane_s1(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "DistanceToPlane"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; PyObject *result = nullptr; if (ap.CheckArgCount(3) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); double tempr = vtkPlane::DistanceToPlane(temp0, temp1, temp2); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (ap.ArrayHasChanged(temp2, save2, size2) && !ap.ErrorOccurred()) { ap.SetArray(2, temp2, size2); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_DistanceToPlane_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "DistanceToPlane"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetArray(temp0, size0)) { ap.SaveArray(temp0, save0, size0); double tempr = (ap.IsBound() ? op->DistanceToPlane(temp0) : op->vtkPlane::DistanceToPlane(temp0)); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_DistanceToPlane(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(args); switch(nargs) { case 3: return PyvtkPlane_DistanceToPlane_s1(self, args); case 1: case 2: return PyvtkPlane_DistanceToPlane_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "DistanceToPlane"); return nullptr; } static PyObject * PyvtkPlane_IntersectWithLine_s1(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "IntersectWithLine"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; const int size3 = 3; double temp3[3]; double save3[3]; double temp4; const int size5 = 3; double temp5[3]; double save5[3]; PyObject *result = nullptr; if (ap.CheckArgCount(6) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3) && ap.GetValue(temp4) && ap.GetArray(temp5, size5)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); ap.SaveArray(temp5, save5, size5); int tempr = vtkPlane::IntersectWithLine(temp0, temp1, temp2, temp3, temp4, temp5); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (ap.ArrayHasChanged(temp2, save2, size2) && !ap.ErrorOccurred()) { ap.SetArray(2, temp2, size2); } if (ap.ArrayHasChanged(temp3, save3, size3) && !ap.ErrorOccurred()) { ap.SetArray(3, temp3, size3); } if (!ap.ErrorOccurred()) { ap.SetArgValue(4, temp4); } if (ap.ArrayHasChanged(temp5, save5, size5) && !ap.ErrorOccurred()) { ap.SetArray(5, temp5, size5); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_IntersectWithLine_s2(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "IntersectWithLine"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkPlane *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 3; double temp1[3]; double save1[3]; double temp2; const int size3 = 3; double temp3[3]; double save3[3]; PyObject *result = nullptr; if (op && ap.CheckArgCount(4) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetValue(temp2) && ap.GetArray(temp3, size3)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp3, save3, size3); int tempr = (ap.IsBound() ? op->IntersectWithLine(temp0, temp1, temp2, temp3) : op->vtkPlane::IntersectWithLine(temp0, temp1, temp2, temp3)); if (ap.ArrayHasChanged(temp0, save0, size0) && !ap.ErrorOccurred()) { ap.SetArray(0, temp0, size0); } if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (!ap.ErrorOccurred()) { ap.SetArgValue(2, temp2); } if (ap.ArrayHasChanged(temp3, save3, size3) && !ap.ErrorOccurred()) { ap.SetArray(3, temp3, size3); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkPlane_IntersectWithLine(PyObject *self, PyObject *args) { int nargs = vtkPythonArgs::GetArgCount(args); switch(nargs) { case 6: return PyvtkPlane_IntersectWithLine_s1(self, args); case 4: case 5: return PyvtkPlane_IntersectWithLine_s2(self, args); } vtkPythonArgs::ArgCountError(nargs, "IntersectWithLine"); return nullptr; } static PyMethodDef PyvtkPlane_Methods[] = { {"IsTypeOf", PyvtkPlane_IsTypeOf, METH_VARARGS, "V.IsTypeOf(string) -> int\nC++: static vtkTypeBool IsTypeOf(const char *type)\n\nReturn 1 if this class type is the same type of (or a subclass\nof) the named class. Returns 0 otherwise. This method works in\ncombination with vtkTypeMacro found in vtkSetGet.h.\n"}, {"IsA", PyvtkPlane_IsA, METH_VARARGS, "V.IsA(string) -> int\nC++: vtkTypeBool IsA(const char *type) override;\n\nReturn 1 if this class is the same type of (or a subclass of) the\nnamed class. Returns 0 otherwise. This method works in\ncombination with vtkTypeMacro found in vtkSetGet.h.\n"}, {"SafeDownCast", PyvtkPlane_SafeDownCast, METH_VARARGS, "V.SafeDownCast(vtkObjectBase) -> vtkPlane\nC++: static vtkPlane *SafeDownCast(vtkObjectBase *o)\n\n"}, {"NewInstance", PyvtkPlane_NewInstance, METH_VARARGS, "V.NewInstance() -> vtkPlane\nC++: vtkPlane *NewInstance()\n\n"}, {"EvaluateFunction", PyvtkPlane_EvaluateFunction, METH_VARARGS, "V.EvaluateFunction(vtkDataArray, vtkDataArray)\nC++: void EvaluateFunction(vtkDataArray *input,\n vtkDataArray *output) override;\nV.EvaluateFunction([float, float, float]) -> float\nC++: double EvaluateFunction(double x[3]) override;\nV.EvaluateFunction(float, float, float) -> float\nC++: virtual double EvaluateFunction(double x, double y, double z)\n\nEvaluate plane equation for point x[3].\n"}, {"EvaluateGradient", PyvtkPlane_EvaluateGradient, METH_VARARGS, "V.EvaluateGradient([float, float, float], [float, float, float])\nC++: void EvaluateGradient(double x[3], double g[3]) override;\n\nEvaluate function gradient at point x[3].\n"}, {"SetNormal", PyvtkPlane_SetNormal, METH_VARARGS, "V.SetNormal(float, float, float)\nC++: void SetNormal(double, double, double)\nV.SetNormal((float, float, float))\nC++: void SetNormal(double a[3])\n\n"}, {"GetNormal", PyvtkPlane_GetNormal, METH_VARARGS, "V.GetNormal() -> (float, float, float)\nC++: double *GetNormal()\n\nSet/get plane normal. Plane is defined by point and normal.\n"}, {"SetOrigin", PyvtkPlane_SetOrigin, METH_VARARGS, "V.SetOrigin(float, float, float)\nC++: void SetOrigin(double, double, double)\nV.SetOrigin((float, float, float))\nC++: void SetOrigin(double a[3])\n\n"}, {"GetOrigin", PyvtkPlane_GetOrigin, METH_VARARGS, "V.GetOrigin() -> (float, float, float)\nC++: double *GetOrigin()\n\nSet/get point through which plane passes. Plane is defined by\npoint and normal.\n"}, {"Push", PyvtkPlane_Push, METH_VARARGS, "V.Push(float)\nC++: void Push(double distance)\n\nTranslate the plane in the direction of the normal by the\ndistance specified. Negative values move the plane in the\nopposite direction.\n"}, {"ProjectPoint", PyvtkPlane_ProjectPoint, METH_VARARGS, "V.ProjectPoint([float, float, float], [float, float, float],\n [float, float, float], [float, float, float])\nC++: static void ProjectPoint(double x[3], double origin[3],\n double normal[3], double xproj[3])\nV.ProjectPoint([float, float, float], [float, float, float])\nC++: void ProjectPoint(double x[3], double xproj[3])\n\nProject a point x onto plane defined by origin and normal. The\nprojected point is returned in xproj. NOTE : normal assumed to\nhave magnitude 1.\n"}, {"ProjectVector", PyvtkPlane_ProjectVector, METH_VARARGS, "V.ProjectVector([float, float, float], [float, float, float],\n [float, float, float], [float, float, float])\nC++: static void ProjectVector(double v[3], double origin[3],\n double normal[3], double vproj[3])\nV.ProjectVector([float, float, float], [float, float, float])\nC++: void ProjectVector(double v[3], double vproj[3])\n\nProject a vector v onto plane defined by origin and normal. The\nprojected vector is returned in vproj.\n"}, {"GeneralizedProjectPoint", PyvtkPlane_GeneralizedProjectPoint, METH_VARARGS, "V.GeneralizedProjectPoint([float, float, float], [float, float,\n float], [float, float, float], [float, float, float])\nC++: static void GeneralizedProjectPoint(double x[3],\n double origin[3], double normal[3], double xproj[3])\nV.GeneralizedProjectPoint([float, float, float], [float, float,\n float])\nC++: void GeneralizedProjectPoint(double x[3], double xproj[3])\n\nProject a point x onto plane defined by origin and normal. The\nprojected point is returned in xproj. NOTE : normal does NOT have\nto have magnitude 1.\n"}, {"Evaluate", PyvtkPlane_Evaluate, METH_VARARGS, "V.Evaluate([float, float, float], [float, float, float], [float,\n float, float]) -> float\nC++: static double Evaluate(double normal[3], double origin[3],\n double x[3])\n\nQuick evaluation of plane equation n(x-origin)=0.\n"}, {"DistanceToPlane", PyvtkPlane_DistanceToPlane, METH_VARARGS, "V.DistanceToPlane([float, float, float], [float, float, float],\n [float, float, float]) -> float\nC++: static double DistanceToPlane(double x[3], double n[3],\n double p0[3])\nV.DistanceToPlane([float, float, float]) -> float\nC++: double DistanceToPlane(double x[3])\n\nReturn the distance of a point x to a plane defined by n(x-p0) =\n0. The normal n[3] must be magnitude=1.\n"}, {"IntersectWithLine", PyvtkPlane_IntersectWithLine, METH_VARARGS, "V.IntersectWithLine([float, float, float], [float, float, float],\n [float, float, float], [float, float, float], float, [float,\n float, float]) -> int\nC++: static int IntersectWithLine(double p1[3], double p2[3],\n double n[3], double p0[3], double &t, double x[3])\nV.IntersectWithLine([float, float, float], [float, float, float],\n float, [float, float, float]) -> int\nC++: int IntersectWithLine(double p1[3], double p2[3], double &t,\n double x[3])\n\nGiven a line defined by the two points p1,p2; and a plane defined\nby the normal n and point p0, compute an intersection. The\nparametric coordinate along the line is returned in t, and the\ncoordinates of intersection are returned in x. A zero is returned\nif the plane and line do not intersect between (0<=t<=1). If the\nplane and line are parallel, zero is returned and t is set to\nVTK_LARGE_DOUBLE.\n"}, {nullptr, nullptr, 0, nullptr} }; static PyTypeObject PyvtkPlane_Type = { PyVarObject_HEAD_INIT(&PyType_Type, 0) "vtkCommonDataModelPython.vtkPlane", // tp_name sizeof(PyVTKObject), // tp_basicsize 0, // tp_itemsize PyVTKObject_Delete, // tp_dealloc 0, // tp_print nullptr, // tp_getattr nullptr, // tp_setattr nullptr, // tp_compare PyVTKObject_Repr, // tp_repr nullptr, // tp_as_number nullptr, // tp_as_sequence nullptr, // tp_as_mapping nullptr, // tp_hash nullptr, // tp_call PyVTKObject_String, // tp_str PyObject_GenericGetAttr, // tp_getattro PyObject_GenericSetAttr, // tp_setattro &PyVTKObject_AsBuffer, // tp_as_buffer Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_BASETYPE, // tp_flags PyvtkPlane_Doc, // tp_doc PyVTKObject_Traverse, // tp_traverse nullptr, // tp_clear nullptr, // tp_richcompare offsetof(PyVTKObject, vtk_weakreflist), // tp_weaklistoffset nullptr, // tp_iter nullptr, // tp_iternext nullptr, // tp_methods nullptr, // tp_members PyVTKObject_GetSet, // tp_getset nullptr, // tp_base nullptr, // tp_dict nullptr, // tp_descr_get nullptr, // tp_descr_set offsetof(PyVTKObject, vtk_dict), // tp_dictoffset nullptr, // tp_init nullptr, // tp_alloc PyVTKObject_New, // tp_new PyObject_GC_Del, // tp_free nullptr, // tp_is_gc nullptr, // tp_bases nullptr, // tp_mro nullptr, // tp_cache nullptr, // tp_subclasses nullptr, // tp_weaklist VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED }; static vtkObjectBase *PyvtkPlane_StaticNew() { return vtkPlane::New(); } PyObject *PyvtkPlane_ClassNew() { PyVTKClass_Add( &PyvtkPlane_Type, PyvtkPlane_Methods, "vtkPlane", &PyvtkPlane_StaticNew); PyTypeObject *pytype = &PyvtkPlane_Type; if ((pytype->tp_flags & Py_TPFLAGS_READY) != 0) { return (PyObject *)pytype; } #if !defined(VTK_PY3K) && PY_VERSION_HEX >= 0x02060000 pytype->tp_flags |= Py_TPFLAGS_HAVE_NEWBUFFER; #endif pytype->tp_base = (PyTypeObject *)PyvtkImplicitFunction_ClassNew(); PyType_Ready(pytype); return (PyObject *)pytype; } void PyVTKAddFile_vtkPlane( PyObject *dict) { PyObject *o; o = PyvtkPlane_ClassNew(); if (o && PyDict_SetItemString(dict, "vtkPlane", o) != 0) { Py_DECREF(o); } }