#include "VISU_Prs3d_i.hh"
#include "VISU_Result_i.hh"
+#include "VISU_ColoredPrs3dHolder_i.hh"
#include "VISU_PipeLine.hxx"
#include "VISU_DataSetActor.h"
if (!anIO.IsNull())
myIO = anIO;
- SetPrs3d(dynamic_cast<VISU::Prs3d_i*>(aBase));
+ //----
+ // rnv: fix for issue 0020114 (EDF VISU 918 : Impossible to
+ // create a new clipping plane on field presentation)
+ // set last visited presentation from holder as myPrs3d
+ VISU::ColoredPrs3dHolder_i* aHolder = dynamic_cast<VISU::ColoredPrs3dHolder_i*>(aBase);
+ VISU::Prs3d_i* aPrs3d = NULL;
+ if(aHolder)
+ aPrs3d = aHolder->GetPrs3dDevice();
+ else
+ aPrs3d = dynamic_cast<VISU::Prs3d_i*>(aBase);
+ //----
+
+ SetPrs3d(aPrs3d);
if (myPrs3d) {
std::for_each(myPlanes.begin(),myPlanes.end(),TSetVisiblity(false));
myPlanes.clear();