diff --git a/src/Mod/Fem/Gui/ViewProviderFemMeshPy.xml b/src/Mod/Fem/Gui/ViewProviderFemMeshPy.xml
index a9312ee113..e25e3c6a57 100644
--- a/src/Mod/Fem/Gui/ViewProviderFemMeshPy.xml
+++ b/src/Mod/Fem/Gui/ViewProviderFemMeshPy.xml
@@ -20,6 +20,21 @@
+
+
+ Reset color set by method setNodeColorByScalars.
+
+
+
+
+ Reset displacements set by method setNodeDisplacementByVectors.
+
+
+
+
+ Reset highlighted nodes.
+
+
Sets mesh node colors using element list and value list.
diff --git a/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp b/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp
index 8a9e97cf38..fcbc2fe25b 100644
--- a/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp
+++ b/src/Mod/Fem/Gui/ViewProviderFemMeshPyImp.cpp
@@ -31,7 +31,6 @@ std::string ViewProviderFemMeshPy::representation(void) const
}
-
PyObject* ViewProviderFemMeshPy::applyDisplacement(PyObject * args)
{
double factor;
@@ -43,6 +42,7 @@ PyObject* ViewProviderFemMeshPy::applyDisplacement(PyObject * args)
Py_Return;
}
+
App::Color calcColor(double value,double min, double max)
{
if (max < 0) max = 0;
@@ -106,6 +106,15 @@ PyObject* ViewProviderFemMeshPy::setNodeColorByScalars(PyObject *args)
}
+PyObject* ViewProviderFemMeshPy::resetNodeColor(PyObject *args)
+{
+ if (!PyArg_ParseTuple(args, ""))
+ return 0;
+ this->getViewProviderFemMeshPtr()->resetColorByNodeId();
+ Py_Return;
+}
+
+
PyObject* ViewProviderFemMeshPy::setNodeDisplacementByVectors(PyObject *args)
{
PyObject *node_ids_py;
@@ -134,12 +143,23 @@ PyObject* ViewProviderFemMeshPy::setNodeDisplacementByVectors(PyObject *args)
Py_Return;
}
+
+PyObject* ViewProviderFemMeshPy::resetNodeDisplacement(PyObject *args)
+{
+ if (!PyArg_ParseTuple(args, ""))
+ return 0;
+ this->getViewProviderFemMeshPtr()->resetDisplacementByNodeId();
+ Py_Return;
+}
+
+
Py::Dict ViewProviderFemMeshPy::getNodeColor(void) const
{
//return Py::List();
throw Py::AttributeError("Not yet implemented");
}
+
void ViewProviderFemMeshPy::setNodeColor(Py::Dict arg)
{
long size = arg.size();
@@ -173,12 +193,14 @@ void ViewProviderFemMeshPy::setNodeColor(Py::Dict arg)
}
}
+
Py::Dict ViewProviderFemMeshPy::getElementColor(void) const
{
//return Py::List();
throw Py::AttributeError("Not yet implemented");
}
+
void ViewProviderFemMeshPy::setElementColor(Py::Dict arg)
{
if(arg.size() == 0)
@@ -195,12 +217,14 @@ void ViewProviderFemMeshPy::setElementColor(Py::Dict arg)
}
}
+
Py::Dict ViewProviderFemMeshPy::getNodeDisplacement(void) const
{
//return Py::Dict();
throw Py::AttributeError("Not yet implemented");
}
+
void ViewProviderFemMeshPy::setNodeDisplacement(Py::Dict arg)
{
if(arg.size() == 0)
@@ -221,6 +245,7 @@ void ViewProviderFemMeshPy::setNodeDisplacement(Py::Dict arg)
}
}
+
Py::List ViewProviderFemMeshPy::getHighlightedNodes(void) const
{
Py::List list;
@@ -232,6 +257,7 @@ Py::List ViewProviderFemMeshPy::getHighlightedNodes(void) const
return list;
}
+
void ViewProviderFemMeshPy::setHighlightedNodes(Py::List arg)
{
ViewProviderFemMesh* vp = this->getViewProviderFemMeshPtr();
@@ -249,6 +275,16 @@ void ViewProviderFemMeshPy::setHighlightedNodes(Py::List arg)
this->getViewProviderFemMeshPtr()->setHighlightNodes(res);
}
+
+PyObject* ViewProviderFemMeshPy::resetHighlightedNodes(PyObject *args)
+{
+ if (!PyArg_ParseTuple(args, ""))
+ return 0;
+ this->getViewProviderFemMeshPtr()->resetHighlightNodes();
+ Py_Return;
+}
+
+
Py::List ViewProviderFemMeshPy::getVisibleElementFaces(void) const
{
const std::vector & visElmFc = this->getViewProviderFemMeshPtr()->getVisibleElementFaces();
@@ -290,6 +326,7 @@ PyObject *ViewProviderFemMeshPy::getCustomAttributes(const char* /*attr*/) const
return 0;
}
+
int ViewProviderFemMeshPy::setCustomAttributes(const char* /*attr*/, PyObject* /*obj*/)
{
return 0;