diff --git a/src/Mod/Fem/FemTools.py b/src/Mod/Fem/FemTools.py index d77f817768..dcdd0e3bbe 100644 --- a/src/Mod/Fem/FemTools.py +++ b/src/Mod/Fem/FemTools.py @@ -83,7 +83,9 @@ class FemTools(QtCore.QRunnable, QtCore.QObject): if self.mesh: self.mesh.ViewObject.NodeColor = {} self.mesh.ViewObject.ElementColor = {} - self.mesh.ViewObject.setNodeColorByScalars() + node_numbers = self.mesh.FemMesh.Nodes.keys() + zero_values = [0] * len(node_numbers) + self.mesh.ViewObject.setNodeColorByScalars(node_numbers, zero_values) ## Resets mesh color, deformation and removes all result objects if preferences to keep them is not set # @param self The python object self diff --git a/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp b/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp index b03d2b9f77..3a976462a0 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp @@ -96,6 +96,7 @@ PyObject* ViewProviderFemMeshPy::setNodeColorByScalars(PyObject *args) this->getViewProviderFemMeshPtr()->setColorByNodeId(ids, node_colors); } else { PyErr_SetString(Base::BaseExceptionFreeCADError, "PyArg_ParseTuple failed. Invalid arguments used with setNodeByScalars"); + return 0; } Py_Return; } @@ -124,6 +125,7 @@ PyObject* ViewProviderFemMeshPy::setNodeDisplacementByVectors(PyObject *args) this->getViewProviderFemMeshPtr()->setDisplacementByNodeId(ids, vectors); } else { PyErr_SetString(Base::BaseExceptionFreeCADError, "PyArg_ParseTuple failed. Invalid arguments used with setNodeDisplacementByVectors"); + return 0; } Py_Return; } diff --git a/src/Mod/Fem/PyGui/_TaskPanelFemResultShow.py b/src/Mod/Fem/PyGui/_TaskPanelFemResultShow.py index 08f16874bb..143a507e1a 100644 --- a/src/Mod/Fem/PyGui/_TaskPanelFemResultShow.py +++ b/src/Mod/Fem/PyGui/_TaskPanelFemResultShow.py @@ -417,7 +417,9 @@ class _TaskPanelFemResultShow: def reset_mesh_color(self): self.mesh_obj.ViewObject.NodeColor = {} self.mesh_obj.ViewObject.ElementColor = {} - self.mesh_obj.ViewObject.setNodeColorByScalars() + node_numbers = self.mesh_obj.FemMesh.Nodes.keys() + zero_values = [0] * len(node_numbers) + self.mesh_obj.ViewObject.setNodeColorByScalars(node_numbers, zero_values) def reject(self): FreeCADGui.Control.closeDialog() # if the taks panell is called from Command obj is not in edit mode thus reset edit does not cleses the dialog, may be do not call but set in edit instead