From 0a8e8561bf4fe049c40744edcb2dc2d63ba89153 Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@ulg.ac.be> Date: Tue, 10 May 2011 16:27:51 +0000 Subject: [PATCH] fix getNumValues for non isoparametric case --- Post/PViewDataGModel.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Post/PViewDataGModel.cpp b/Post/PViewDataGModel.cpp index d88ff23ff2..ecba42296c 100644 --- a/Post/PViewDataGModel.cpp +++ b/Post/PViewDataGModel.cpp @@ -456,7 +456,11 @@ int PViewDataGModel::getNumComponents(int step, int ent, int ele) int PViewDataGModel::getNumValues(int step, int ent, int ele) { - if(_type == ElementNodeData || _type == NodeData){ + if(_type == ElementNodeData){ + MElement *e = _getElement(step, ent, ele); + return _steps[step]->getMult(e->getNum()) * getNumComponents(step, ent, ele); + } + else if(_type == NodeData){ return getNumNodes(step, ent, ele) * getNumComponents(step, ent, ele); } else if(_type == ElementData){ @@ -492,8 +496,8 @@ void PViewDataGModel::getValue(int step, int ent, int ele, int nod, int comp, do switch(_type){ case NodeData: { - int num = _getNode(e, nod)->getNum(); - val = _steps[step]->getData(num)[comp]; + int num = _getNode(e, nod)->getNum(); + val = _steps[step]->getData(num)[comp]; } break; case ElementNodeData: @@ -513,8 +517,8 @@ void PViewDataGModel::setValue(int step, int ent, int ele, int nod, int comp, do switch(_type){ case NodeData: { - int num = _getNode(e, nod)->getNum(); - _steps[step]->getData(num)[comp] = val; + int num = _getNode(e, nod)->getNum(); + _steps[step]->getData(num)[comp] = val; } break; case ElementNodeData: -- GitLab