Starting Displacement post-processing to the FemMesh ViewProvider

This commit is contained in:
jriegel
2013-11-28 19:51:34 +01:00
parent 7a1a8051aa
commit 61e289036e
4 changed files with 80 additions and 7 deletions

View File

@@ -523,6 +523,35 @@ void ViewProviderFemMesh::resetColorByNodeId(void)
}
void ViewProviderFemMesh::setDisplacementByNodeId(const std::map<long,Base::Vector3d> &NodeDispMap)
{
DisplacementVector.resize(vNodeElementIdx.size());
int i=0;
for(std::vector<unsigned long>::const_iterator it=vNodeElementIdx.begin()
;it!=vNodeElementIdx.end()
;++it,i++){
const std::map<long,Base::Vector3d>::const_iterator pos = NodeDispMap.find(*it);
if(pos == NodeDispMap.end())
DisplacementVector[i] = Base::Vector3d(0.0,0.0,0.0);
else
DisplacementVector[i] = pos->second;
}
animateNodes(1.0);
}
void ViewProviderFemMesh::resetDisplacementByNodeId(void)
{
animateNodes(0.0);
DisplacementVector.clear();
}
/// reaply the node displacement with a certain factor and do a redraw
void ViewProviderFemMesh::animateNodes(double factor)
{
}
// ----------------------------------------------------------------------------