// python wrapper for vtkTetra // #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 "vtkTetra.h" extern "C" { VTK_ABI_EXPORT void PyVTKAddFile_vtkTetra(PyObject *); } extern "C" { VTK_ABI_EXPORT PyObject *PyvtkTetra_ClassNew(); } #ifndef DECLARED_PyvtkCell3D_ClassNew extern "C" { PyObject *PyvtkCell3D_ClassNew(); } #define DECLARED_PyvtkCell3D_ClassNew #endif static const char *PyvtkTetra_Doc = "vtkTetra - a 3D cell that represents a tetrahedron\n\n" "Superclass: vtkCell3D\n\n" "vtkTetra is a concrete implementation of vtkCell to represent a 3D\n" "tetrahedron. vtkTetra uses the standard isoparametric shape functions\n" "for a linear tetrahedron. The tetrahedron is defined by the four\n" "points (0-3); where (0,1,2) is the base of the tetrahedron which,\n" "using the right hand rule, forms a triangle whose normal points in\n" "the direction of the fourth point.\n\n" "@sa\n" "vtkConvexPointSet vtkHexahedron vtkPyramid vtkVoxel vtkWedge\n\n"; static PyObject * PyvtkTetra_IsTypeOf(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "IsTypeOf"); char *temp0 = nullptr; PyObject *result = nullptr; if (ap.CheckArgCount(1) && ap.GetValue(temp0)) { int tempr = vtkTetra::IsTypeOf(temp0); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_IsA(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "IsA"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *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->vtkTetra::IsA(temp0)); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_SafeDownCast(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "SafeDownCast"); vtkObjectBase *temp0 = nullptr; PyObject *result = nullptr; if (ap.CheckArgCount(1) && ap.GetVTKObject(temp0, "vtkObjectBase")) { vtkTetra *tempr = vtkTetra::SafeDownCast(temp0); if (!ap.ErrorOccurred()) { result = ap.BuildVTKObject(tempr); } } return result; } static PyObject * PyvtkTetra_NewInstance(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "NewInstance"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { vtkTetra *tempr = (ap.IsBound() ? op->NewInstance() : op->vtkTetra::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 * PyvtkTetra_GetEdgePoints(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetEdgePoints"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; int size1 = ap.GetArgSize(1); vtkPythonArgs::Array store1(2*size1); int *temp1 = store1.Data(); PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetValue(temp0) && ap.GetArray(temp1, size1)) { if (ap.IsBound()) { op->GetEdgePoints(temp0, temp1); } else { op->vtkTetra::GetEdgePoints(temp0, temp1); } if (!ap.ErrorOccurred()) { ap.SetArgValue(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkTetra_GetFacePoints(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetFacePoints"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; int size1 = ap.GetArgSize(1); vtkPythonArgs::Array store1(2*size1); int *temp1 = store1.Data(); PyObject *result = nullptr; if (op && ap.CheckArgCount(2) && ap.GetValue(temp0) && ap.GetArray(temp1, size1)) { if (ap.IsBound()) { op->GetFacePoints(temp0, temp1); } else { op->vtkTetra::GetFacePoints(temp0, temp1); } if (!ap.ErrorOccurred()) { ap.SetArgValue(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkTetra_GetCellType(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetCellType"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { int tempr = (ap.IsBound() ? op->GetCellType() : op->vtkTetra::GetCellType()); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_GetNumberOfEdges(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetNumberOfEdges"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { int tempr = (ap.IsBound() ? op->GetNumberOfEdges() : op->vtkTetra::GetNumberOfEdges()); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_GetNumberOfFaces(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetNumberOfFaces"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { int tempr = (ap.IsBound() ? op->GetNumberOfFaces() : op->vtkTetra::GetNumberOfFaces()); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_GetEdge(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetEdge"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetValue(temp0)) { vtkCell *tempr = (ap.IsBound() ? op->GetEdge(temp0) : op->vtkTetra::GetEdge(temp0)); if (!ap.ErrorOccurred()) { result = ap.BuildVTKObject(tempr); } } return result; } static PyObject * PyvtkTetra_GetFace(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetFace"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; PyObject *result = nullptr; if (op && ap.CheckArgCount(1) && ap.GetValue(temp0)) { vtkCell *tempr = (ap.IsBound() ? op->GetFace(temp0) : op->vtkTetra::GetFace(temp0)); if (!ap.ErrorOccurred()) { result = ap.BuildVTKObject(tempr); } } return result; } static PyObject * PyvtkTetra_Contour(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "Contour"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); double temp0; vtkDataArray *temp1 = nullptr; vtkIncrementalPointLocator *temp2 = nullptr; vtkCellArray *temp3 = nullptr; vtkCellArray *temp4 = nullptr; vtkCellArray *temp5 = nullptr; vtkPointData *temp6 = nullptr; vtkPointData *temp7 = nullptr; vtkCellData *temp8 = nullptr; vtkIdType temp9; vtkCellData *temp10 = nullptr; PyObject *result = nullptr; if (op && ap.CheckArgCount(11) && ap.GetValue(temp0) && ap.GetVTKObject(temp1, "vtkDataArray") && ap.GetVTKObject(temp2, "vtkIncrementalPointLocator") && ap.GetVTKObject(temp3, "vtkCellArray") && ap.GetVTKObject(temp4, "vtkCellArray") && ap.GetVTKObject(temp5, "vtkCellArray") && ap.GetVTKObject(temp6, "vtkPointData") && ap.GetVTKObject(temp7, "vtkPointData") && ap.GetVTKObject(temp8, "vtkCellData") && ap.GetValue(temp9) && ap.GetVTKObject(temp10, "vtkCellData")) { if (ap.IsBound()) { op->Contour(temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp8, temp9, temp10); } else { op->vtkTetra::Contour(temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp8, temp9, temp10); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkTetra_Clip(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "Clip"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); double temp0; vtkDataArray *temp1 = nullptr; vtkIncrementalPointLocator *temp2 = nullptr; vtkCellArray *temp3 = nullptr; vtkPointData *temp4 = nullptr; vtkPointData *temp5 = nullptr; vtkCellData *temp6 = nullptr; vtkIdType temp7; vtkCellData *temp8 = nullptr; int temp9; PyObject *result = nullptr; if (op && ap.CheckArgCount(10) && ap.GetValue(temp0) && ap.GetVTKObject(temp1, "vtkDataArray") && ap.GetVTKObject(temp2, "vtkIncrementalPointLocator") && ap.GetVTKObject(temp3, "vtkCellArray") && ap.GetVTKObject(temp4, "vtkPointData") && ap.GetVTKObject(temp5, "vtkPointData") && ap.GetVTKObject(temp6, "vtkCellData") && ap.GetValue(temp7) && ap.GetVTKObject(temp8, "vtkCellData") && ap.GetValue(temp9)) { if (ap.IsBound()) { op->Clip(temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp8, temp9); } else { op->vtkTetra::Clip(temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp8, temp9); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkTetra_EvaluatePosition(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "EvaluatePosition"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; int size1 = ap.GetArgSize(1); vtkPythonArgs::Array store1(2*size1); double *temp1 = store1.Data(); double *save1 = (size1 == 0 ? nullptr : temp1 + size1); int temp2; const int size3 = 3; double temp3[3]; double save3[3]; double temp4; int size5 = ap.GetArgSize(5); vtkPythonArgs::Array store5(2*size5); double *temp5 = store5.Data(); double *save5 = (size5 == 0 ? nullptr : temp5 + size5); PyObject *result = nullptr; if (op && ap.CheckArgCount(6) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetValue(temp2) && ap.GetArray(temp3, size3) && ap.GetValue(temp4) && ap.GetArray(temp5, size5)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp3, save3, size3); ap.SaveArray(temp5, save5, size5); int tempr = (ap.IsBound() ? op->EvaluatePosition(temp0, temp1, temp2, temp3, temp4, temp5) : op->vtkTetra::EvaluatePosition(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.ErrorOccurred()) { ap.SetArgValue(2, temp2); } 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 * PyvtkTetra_EvaluateLocation(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "EvaluateLocation"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; const int size1 = 3; double temp1[3]; double save1[3]; const int size2 = 3; double temp2[3]; double save2[3]; int size3 = ap.GetArgSize(3); vtkPythonArgs::Array store3(2*size3); double *temp3 = store3.Data(); double *save3 = (size3 == 0 ? nullptr : temp3 + size3); PyObject *result = nullptr; if (op && ap.CheckArgCount(4) && ap.GetValue(temp0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3)) { ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); if (ap.IsBound()) { op->EvaluateLocation(temp0, temp1, temp2, temp3); } else { op->vtkTetra::EvaluateLocation(temp0, temp1, temp2, temp3); } if (!ap.ErrorOccurred()) { ap.SetArgValue(0, temp0); } 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 * PyvtkTetra_IntersectWithLine(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "IntersectWithLine"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *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; double temp3; const int size4 = 3; double temp4[3]; double save4[3]; const int size5 = 3; double temp5[3]; double save5[3]; int temp6; PyObject *result = nullptr; if (op && ap.CheckArgCount(7) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetValue(temp2) && ap.GetValue(temp3) && ap.GetArray(temp4, size4) && ap.GetArray(temp5, size5) && ap.GetValue(temp6)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp4, save4, size4); ap.SaveArray(temp5, save5, size5); int tempr = (ap.IsBound() ? op->IntersectWithLine(temp0, temp1, temp2, temp3, temp4, temp5, temp6) : op->vtkTetra::IntersectWithLine(temp0, temp1, temp2, temp3, temp4, temp5, temp6)); 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(3, temp3); } if (ap.ArrayHasChanged(temp4, save4, size4) && !ap.ErrorOccurred()) { ap.SetArray(4, temp4, size4); } if (ap.ArrayHasChanged(temp5, save5, size5) && !ap.ErrorOccurred()) { ap.SetArray(5, temp5, size5); } if (!ap.ErrorOccurred()) { ap.SetArgValue(6, temp6); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_Triangulate(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "Triangulate"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; vtkIdList *temp1 = nullptr; vtkPoints *temp2 = nullptr; PyObject *result = nullptr; if (op && ap.CheckArgCount(3) && ap.GetValue(temp0) && ap.GetVTKObject(temp1, "vtkIdList") && ap.GetVTKObject(temp2, "vtkPoints")) { int tempr = (ap.IsBound() ? op->Triangulate(temp0, temp1, temp2) : op->vtkTetra::Triangulate(temp0, temp1, temp2)); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_Derivatives(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "Derivatives"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; const int size1 = 3; double temp1[3]; double save1[3]; int size2 = ap.GetArgSize(2); vtkPythonArgs::Array store2(2*size2); double *temp2 = store2.Data(); double *save2 = (size2 == 0 ? nullptr : temp2 + size2); int temp3; int size4 = ap.GetArgSize(4); vtkPythonArgs::Array store4(2*size4); double *temp4 = store4.Data(); double *save4 = (size4 == 0 ? nullptr : temp4 + size4); PyObject *result = nullptr; if (op && ap.CheckArgCount(5) && ap.GetValue(temp0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetValue(temp3) && ap.GetArray(temp4, size4)) { ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp4, save4, size4); if (ap.IsBound()) { op->Derivatives(temp0, temp1, temp2, temp3, temp4); } else { op->vtkTetra::Derivatives(temp0, temp1, temp2, temp3, temp4); } 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(temp4, save4, size4) && !ap.ErrorOccurred()) { ap.SetArray(4, temp4, size4); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkTetra_GetParametricCoords(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetParametricCoords"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); PyObject *result = nullptr; if (op && ap.CheckArgCount(0)) { double *tempr = (ap.IsBound() ? op->GetParametricCoords() : op->vtkTetra::GetParametricCoords()); if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_CellBoundary(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "CellBoundary"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); int temp0; const int size1 = 3; double temp1[3]; double save1[3]; vtkIdList *temp2 = nullptr; PyObject *result = nullptr; if (op && ap.CheckArgCount(3) && ap.GetValue(temp0) && ap.GetArray(temp1, size1) && ap.GetVTKObject(temp2, "vtkIdList")) { ap.SaveArray(temp1, save1, size1); int tempr = (ap.IsBound() ? op->CellBoundary(temp0, temp1, temp2) : op->vtkTetra::CellBoundary(temp0, temp1, temp2)); if (ap.ArrayHasChanged(temp1, save1, size1) && !ap.ErrorOccurred()) { ap.SetArray(1, temp1, size1); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_GetParametricCenter(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetParametricCenter"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *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); int tempr = (ap.IsBound() ? op->GetParametricCenter(temp0) : op->vtkTetra::GetParametricCenter(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 * PyvtkTetra_GetParametricDistance(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "GetParametricDistance"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *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->GetParametricDistance(temp0) : op->vtkTetra::GetParametricDistance(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 * PyvtkTetra_TetraCenter(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "TetraCenter"); 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]; const int size4 = 3; double temp4[3]; double save4[3]; PyObject *result = nullptr; if (ap.CheckArgCount(5) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3) && ap.GetArray(temp4, size4)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); ap.SaveArray(temp4, save4, size4); vtkTetra::TetraCenter(temp0, temp1, temp2, temp3, temp4); 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.ArrayHasChanged(temp4, save4, size4) && !ap.ErrorOccurred()) { ap.SetArray(4, temp4, size4); } if (!ap.ErrorOccurred()) { result = ap.BuildNone(); } } return result; } static PyObject * PyvtkTetra_Circumsphere(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "Circumsphere"); 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]; const int size4 = 3; double temp4[3]; double save4[3]; PyObject *result = nullptr; if (ap.CheckArgCount(5) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3) && ap.GetArray(temp4, size4)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); ap.SaveArray(temp4, save4, size4); double tempr = vtkTetra::Circumsphere(temp0, temp1, temp2, temp3, temp4); 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.ArrayHasChanged(temp4, save4, size4) && !ap.ErrorOccurred()) { ap.SetArray(4, temp4, size4); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_Insphere(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "Insphere"); 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]; const int size4 = 3; double temp4[3]; double save4[3]; PyObject *result = nullptr; if (ap.CheckArgCount(5) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3) && ap.GetArray(temp4, size4)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); ap.SaveArray(temp2, save2, size2); ap.SaveArray(temp3, save3, size3); ap.SaveArray(temp4, save4, size4); double tempr = vtkTetra::Insphere(temp0, temp1, temp2, temp3, temp4); 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.ArrayHasChanged(temp4, save4, size4) && !ap.ErrorOccurred()) { ap.SetArray(4, temp4, size4); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_BarycentricCoords(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "BarycentricCoords"); 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]; const int size4 = 3; double temp4[3]; double save4[3]; const int size5 = 4; double temp5[4]; double save5[4]; PyObject *result = nullptr; if (ap.CheckArgCount(6) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1) && ap.GetArray(temp2, size2) && ap.GetArray(temp3, size3) && ap.GetArray(temp4, size4) && 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(temp4, save4, size4); ap.SaveArray(temp5, save5, size5); int tempr = vtkTetra::BarycentricCoords(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.ArrayHasChanged(temp4, save4, size4) && !ap.ErrorOccurred()) { ap.SetArray(4, temp4, size4); } if (ap.ArrayHasChanged(temp5, save5, size5) && !ap.ErrorOccurred()) { ap.SetArray(5, temp5, size5); } if (!ap.ErrorOccurred()) { result = ap.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_ComputeVolume(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "ComputeVolume"); 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); double tempr = vtkTetra::ComputeVolume(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.BuildValue(tempr); } } return result; } static PyObject * PyvtkTetra_InterpolationFunctions(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "InterpolationFunctions"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 4; double temp1[4]; double save1[4]; PyObject *result = nullptr; if (ap.CheckArgCount(2) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); vtkTetra::InterpolationFunctions(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 * PyvtkTetra_InterpolationDerivs(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "InterpolationDerivs"); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 12; double temp1[12]; double save1[12]; PyObject *result = nullptr; if (ap.CheckArgCount(2) && ap.GetArray(temp0, size0) && ap.GetArray(temp1, size1)) { ap.SaveArray(temp0, save0, size0); ap.SaveArray(temp1, save1, size1); vtkTetra::InterpolationDerivs(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 * PyvtkTetra_InterpolateFunctions(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "InterpolateFunctions"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 4; double temp1[4]; double save1[4]; 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->InterpolateFunctions(temp0, temp1); } else { op->vtkTetra::InterpolateFunctions(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 * PyvtkTetra_InterpolateDerivs(PyObject *self, PyObject *args) { vtkPythonArgs ap(self, args, "InterpolateDerivs"); vtkObjectBase *vp = ap.GetSelfPointer(self, args); vtkTetra *op = static_cast(vp); const int size0 = 3; double temp0[3]; double save0[3]; const int size1 = 12; double temp1[12]; double save1[12]; 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->InterpolateDerivs(temp0, temp1); } else { op->vtkTetra::InterpolateDerivs(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 * PyvtkTetra_GetEdgeArray(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "GetEdgeArray"); int temp0; int sizer = 2; PyObject *result = nullptr; if (ap.CheckArgCount(1) && ap.GetValue(temp0)) { int *tempr = vtkTetra::GetEdgeArray(temp0); if (!ap.ErrorOccurred()) { result = ap.BuildTuple(tempr, sizer); } } return result; } static PyObject * PyvtkTetra_GetFaceArray(PyObject *, PyObject *args) { vtkPythonArgs ap(args, "GetFaceArray"); int temp0; int sizer = 3; PyObject *result = nullptr; if (ap.CheckArgCount(1) && ap.GetValue(temp0)) { int *tempr = vtkTetra::GetFaceArray(temp0); if (!ap.ErrorOccurred()) { result = ap.BuildTuple(tempr, sizer); } } return result; } static PyMethodDef PyvtkTetra_Methods[] = { {"IsTypeOf", PyvtkTetra_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", PyvtkTetra_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", PyvtkTetra_SafeDownCast, METH_VARARGS, "V.SafeDownCast(vtkObjectBase) -> vtkTetra\nC++: static vtkTetra *SafeDownCast(vtkObjectBase *o)\n\n"}, {"NewInstance", PyvtkTetra_NewInstance, METH_VARARGS, "V.NewInstance() -> vtkTetra\nC++: vtkTetra *NewInstance()\n\n"}, {"GetEdgePoints", PyvtkTetra_GetEdgePoints, METH_VARARGS, "V.GetEdgePoints(int, [int, ...])\nC++: void GetEdgePoints(int edgeId, int *&pts) override;\n\nSee vtkCell3D API for description of these methods.\n"}, {"GetFacePoints", PyvtkTetra_GetFacePoints, METH_VARARGS, "V.GetFacePoints(int, [int, ...])\nC++: void GetFacePoints(int faceId, int *&pts) override;\n\nSee vtkCell3D API for description of these methods.\n"}, {"GetCellType", PyvtkTetra_GetCellType, METH_VARARGS, "V.GetCellType() -> int\nC++: int GetCellType() override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"GetNumberOfEdges", PyvtkTetra_GetNumberOfEdges, METH_VARARGS, "V.GetNumberOfEdges() -> int\nC++: int GetNumberOfEdges() override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"GetNumberOfFaces", PyvtkTetra_GetNumberOfFaces, METH_VARARGS, "V.GetNumberOfFaces() -> int\nC++: int GetNumberOfFaces() override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"GetEdge", PyvtkTetra_GetEdge, METH_VARARGS, "V.GetEdge(int) -> vtkCell\nC++: vtkCell *GetEdge(int edgeId) override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"GetFace", PyvtkTetra_GetFace, METH_VARARGS, "V.GetFace(int) -> vtkCell\nC++: vtkCell *GetFace(int faceId) override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"Contour", PyvtkTetra_Contour, METH_VARARGS, "V.Contour(float, vtkDataArray, vtkIncrementalPointLocator,\n vtkCellArray, vtkCellArray, vtkCellArray, vtkPointData,\n vtkPointData, vtkCellData, int, vtkCellData)\nC++: void Contour(double value, vtkDataArray *cellScalars,\n vtkIncrementalPointLocator *locator, vtkCellArray *verts,\n vtkCellArray *lines, vtkCellArray *polys, vtkPointData *inPd,\n vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId,\n vtkCellData *outCd) override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"Clip", PyvtkTetra_Clip, METH_VARARGS, "V.Clip(float, vtkDataArray, vtkIncrementalPointLocator,\n vtkCellArray, vtkPointData, vtkPointData, vtkCellData, int,\n vtkCellData, int)\nC++: void Clip(double value, vtkDataArray *cellScalars,\n vtkIncrementalPointLocator *locator,\n vtkCellArray *connectivity, vtkPointData *inPd,\n vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId,\n vtkCellData *outCd, int insideOut) override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"EvaluatePosition", PyvtkTetra_EvaluatePosition, METH_VARARGS, "V.EvaluatePosition([float, float, float], [float, ...], int,\n [float, float, float], float, [float, ...]) -> int\nC++: int EvaluatePosition(double x[3], double *closestPoint,\n int &subId, double pcoords[3], double &dist2, double *weights)\n override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"EvaluateLocation", PyvtkTetra_EvaluateLocation, METH_VARARGS, "V.EvaluateLocation(int, [float, float, float], [float, float,\n float], [float, ...])\nC++: void EvaluateLocation(int &subId, double pcoords[3],\n double x[3], double *weights) override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"IntersectWithLine", PyvtkTetra_IntersectWithLine, METH_VARARGS, "V.IntersectWithLine([float, float, float], [float, float, float],\n float, float, [float, float, float], [float, float, float],\n int) -> int\nC++: int IntersectWithLine(double p1[3], double p2[3], double tol,\n double &t, double x[3], double pcoords[3], int &subId)\n override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"Triangulate", PyvtkTetra_Triangulate, METH_VARARGS, "V.Triangulate(int, vtkIdList, vtkPoints) -> int\nC++: int Triangulate(int index, vtkIdList *ptIds, vtkPoints *pts)\n override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"Derivatives", PyvtkTetra_Derivatives, METH_VARARGS, "V.Derivatives(int, [float, float, float], [float, ...], int,\n [float, ...])\nC++: void Derivatives(int subId, double pcoords[3],\n double *values, int dim, double *derivs) override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"GetParametricCoords", PyvtkTetra_GetParametricCoords, METH_VARARGS, "V.GetParametricCoords() -> (float, ...)\nC++: double *GetParametricCoords() override;\n\nSee the vtkCell API for descriptions of these methods.\n"}, {"CellBoundary", PyvtkTetra_CellBoundary, METH_VARARGS, "V.CellBoundary(int, [float, float, float], vtkIdList) -> int\nC++: int CellBoundary(int subId, double pcoords[3],\n vtkIdList *pts) override;\n\nReturns the set of points that are on the boundary of the\ntetrahedron that are closest parametrically to the point\nspecified. This may include faces, edges, or vertices.\n"}, {"GetParametricCenter", PyvtkTetra_GetParametricCenter, METH_VARARGS, "V.GetParametricCenter([float, float, float]) -> int\nC++: int GetParametricCenter(double pcoords[3]) override;\n\nReturn the center of the tetrahedron in parametric coordinates.\n"}, {"GetParametricDistance", PyvtkTetra_GetParametricDistance, METH_VARARGS, "V.GetParametricDistance([float, float, float]) -> float\nC++: double GetParametricDistance(double pcoords[3]) override;\n\nReturn the distance of the parametric coordinate provided to the\ncell. If inside the cell, a distance of zero is returned.\n"}, {"TetraCenter", PyvtkTetra_TetraCenter, METH_VARARGS, "V.TetraCenter([float, float, float], [float, float, float],\n [float, float, float], [float, float, float], [float, float,\n float])\nC++: static void TetraCenter(double p1[3], double p2[3],\n double p3[3], double p4[3], double center[3])\n\nCompute the center of the tetrahedron,\n"}, {"Circumsphere", PyvtkTetra_Circumsphere, METH_VARARGS, "V.Circumsphere([float, float, float], [float, float, float],\n [float, float, float], [float, float, float], [float, float,\n float]) -> float\nC++: static double Circumsphere(double p1[3], double p2[3],\n double p3[3], double p4[3], double center[3])\n\nCompute the circumcenter (center[3]) and radius squared (method\nreturn value) of a tetrahedron defined by the four points x1, x2,\nx3, and x4.\n"}, {"Insphere", PyvtkTetra_Insphere, METH_VARARGS, "V.Insphere([float, float, float], [float, float, float], [float,\n float, float], [float, float, float], [float, float, float])\n -> float\nC++: static double Insphere(double p1[3], double p2[3],\n double p3[3], double p4[3], double center[3])\n\nCompute the center (center[3]) and radius (method return value)\nof a sphere that just fits inside the faces of a tetrahedron\ndefined by the four points x1, x2, x3, and x4.\n"}, {"BarycentricCoords", PyvtkTetra_BarycentricCoords, METH_VARARGS, "V.BarycentricCoords([float, float, float], [float, float, float],\n [float, float, float], [float, float, float], [float, float,\n float], [float, float, float, float]) -> int\nC++: static int BarycentricCoords(double x[3], double x1[3],\n double x2[3], double x3[3], double x4[3], double bcoords[4])\n\nGiven a 3D point x[3], determine the barycentric coordinates of\nthe point. Barycentric coordinates are a natural coordinate\nsystem for simplices that express a position as a linear\ncombination of the vertices. For a tetrahedron, there are four\nbarycentric coordinates (because there are four vertices), and\nthe sum of the coordinates must equal 1. If a point x is inside a\nsimplex, then all four coordinates will be strictly positive. If\nthree coordinates are zero (so the fourth =1), then the point x\nis on a vertex. If two coordinates are zero, the point x is on an\nedge (and so on). In this method, you must specify the vertex\ncoordinates x1->x4. Returns 0 if tetrahedron is degenerate.\n"}, {"ComputeVolume", PyvtkTetra_ComputeVolume, METH_VARARGS, "V.ComputeVolume([float, float, float], [float, float, float],\n [float, float, float], [float, float, float]) -> float\nC++: static double ComputeVolume(double p1[3], double p2[3],\n double p3[3], double p4[3])\n\nCompute the volume of a tetrahedron defined by the four points\np1, p2, p3, and p4.\n"}, {"InterpolationFunctions", PyvtkTetra_InterpolationFunctions, METH_VARARGS, "V.InterpolationFunctions([float, float, float], [float, float,\n float, float])\nC++: static void InterpolationFunctions(double pcoords[3],\n double weights[4])\n\n@deprecated Replaced by vtkTetra::InterpolateFunctions as of VTK\n5.2\n"}, {"InterpolationDerivs", PyvtkTetra_InterpolationDerivs, METH_VARARGS, "V.InterpolationDerivs([float, float, float], [float, float, float,\n float, float, float, float, float, float, float, float,\n float])\nC++: static void InterpolationDerivs(double pcoords[3],\n double derivs[12])\n\n@deprecated Replaced by vtkTetra::InterpolateDerivs as of VTK 5.2\n"}, {"InterpolateFunctions", PyvtkTetra_InterpolateFunctions, METH_VARARGS, "V.InterpolateFunctions([float, float, float], [float, float,\n float, float])\nC++: void InterpolateFunctions(double pcoords[3],\n double weights[4]) override;\n\nCompute the interpolation functions/derivatives (aka shape\nfunctions/derivatives)\n"}, {"InterpolateDerivs", PyvtkTetra_InterpolateDerivs, METH_VARARGS, "V.InterpolateDerivs([float, float, float], [float, float, float,\n float, float, float, float, float, float, float, float,\n float])\nC++: void InterpolateDerivs(double pcoords[3], double derivs[12])\n override;\n\nCompute the interpolation functions/derivatives (aka shape\nfunctions/derivatives)\n"}, {"GetEdgeArray", PyvtkTetra_GetEdgeArray, METH_VARARGS, "V.GetEdgeArray(int) -> (int, int)\nC++: static int *GetEdgeArray(int edgeId)\n\nReturn the ids of the vertices defining edge/face\n(`edgeId`/`faceId'). Ids are related to the cell, not to the\ndataset.\n"}, {"GetFaceArray", PyvtkTetra_GetFaceArray, METH_VARARGS, "V.GetFaceArray(int) -> (int, int, int)\nC++: static int *GetFaceArray(int faceId)\n\nReturn the ids of the vertices defining edge/face\n(`edgeId`/`faceId'). Ids are related to the cell, not to the\ndataset.\n"}, {nullptr, nullptr, 0, nullptr} }; static PyTypeObject PyvtkTetra_Type = { PyVarObject_HEAD_INIT(&PyType_Type, 0) "vtkCommonDataModelPython.vtkTetra", // 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 PyvtkTetra_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 *PyvtkTetra_StaticNew() { return vtkTetra::New(); } PyObject *PyvtkTetra_ClassNew() { PyVTKClass_Add( &PyvtkTetra_Type, PyvtkTetra_Methods, "vtkTetra", &PyvtkTetra_StaticNew); PyTypeObject *pytype = &PyvtkTetra_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 *)PyvtkCell3D_ClassNew(); PyType_Ready(pytype); return (PyObject *)pytype; } void PyVTKAddFile_vtkTetra( PyObject *dict) { PyObject *o; o = PyvtkTetra_ClassNew(); if (o && PyDict_SetItemString(dict, "vtkTetra", o) != 0) { Py_DECREF(o); } }