]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
Start to use SALOMEDS::Study::Modified() method
authorapo <apo@opencascade.com>
Mon, 23 Jul 2007 05:26:48 +0000 (05:26 +0000)
committerapo <apo@opencascade.com>
Mon, 23 Jul 2007 05:26:48 +0000 (05:26 +0000)
41 files changed:
src/PIPELINE/VISU_ColoredPL.cxx
src/PIPELINE/VISU_ColoredPL.hxx
src/PIPELINE/VISU_CutLinesPL.hxx
src/PIPELINE/VISU_CutPlanesPL.cxx
src/PIPELINE/VISU_CutPlanesPL.hxx
src/PIPELINE/VISU_DeformedShapePL.cxx
src/PIPELINE/VISU_DeformedShapePL.hxx
src/PIPELINE/VISU_GaussPointsPL.cxx
src/PIPELINE/VISU_GaussPointsPL.hxx
src/PIPELINE/VISU_IsoSurfacesPL.cxx
src/PIPELINE/VISU_IsoSurfacesPL.hxx
src/PIPELINE/VISU_PipeLine.cxx
src/PIPELINE/VISU_Plot3DPL.cxx
src/PIPELINE/VISU_Plot3DPL.hxx
src/PIPELINE/VISU_ScalarMapPL.cxx
src/PIPELINE/VISU_ScalarMapPL.hxx
src/PIPELINE/VISU_StreamLinesPL.cxx
src/PIPELINE/VISU_StreamLinesPL.hxx
src/PIPELINE/VISU_VectorsPL.cxx
src/PIPELINE/VISU_VectorsPL.hxx
src/VISUGUI/VisuGUI_GaussPointsDlg.cxx
src/VISU_I/Makefile.am
src/VISU_I/VISU_ColoredPrs3dCache_i.cc
src/VISU_I/VISU_ColoredPrs3d_i.cc
src/VISU_I/VISU_CutLines_i.cc
src/VISU_I/VISU_CutPlanes_i.cc
src/VISU_I/VISU_DeformedShape_i.cc
src/VISU_I/VISU_GaussPoints_i.cc
src/VISU_I/VISU_IsoSurfaces_i.cc
src/VISU_I/VISU_Mesh_i.cc
src/VISU_I/VISU_MultiResult_i.cc
src/VISU_I/VISU_Plot3D_i.cc
src/VISU_I/VISU_Prs3dUtils.cc [new file with mode: 0644]
src/VISU_I/VISU_Prs3dUtils.hh [new file with mode: 0644]
src/VISU_I/VISU_Prs3d_i.cc
src/VISU_I/VISU_Prs3d_i.hh
src/VISU_I/VISU_Result_i.cc
src/VISU_I/VISU_ScalarMapOnDeformedShape_i.cc
src/VISU_I/VISU_ScalarMap_i.cc
src/VISU_I/VISU_StreamLines_i.cc
src/VISU_I/VISU_Vectors_i.cc

index d067added02a5b82760828db08b68dfc0c78c2be..13c1de4b37231b9e5b28bd2336c199f6f2bfa677 100644 (file)
@@ -57,11 +57,28 @@ VISU_ColoredPL
 }
 
 
+//----------------------------------------------------------------------------
 VISU_ColoredPL
 ::~VISU_ColoredPL()
 {}
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_ColoredPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myMapperTable->GetMTime());
+  aTime = std::max(aTime, myBarTable->GetMTime());
+  aTime = std::max(aTime, myExtractor->GetMTime());
+  aTime = std::max(aTime, myFieldTransform->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_ColoredPL
@@ -135,6 +152,9 @@ VISU_ColoredPL
 {
   if(theRange[0] > theRange[1]) 
     return;
+  
+  if(VISU::CheckIsSameRange(GetScalarRange(), theRange))
+    return;
 
   myFieldTransform->SetScalarRange(theRange);
   myBarTable->SetRange(theRange);
@@ -232,11 +252,13 @@ VISU_ColoredPL
   vtkFloatingPointType *aRange = GetScalarRange();
   vtkFloatingPointType aScalarRange[2] = {aRange[0], aRange[1]};
   if(myBarTable->GetScale() == VTK_SCALE_LOG10)
-    VISU_LookupTable::ComputeLogRange(aRange,aScalarRange);
-  myMapperTable->SetRange(aScalarRange);
+    VISU_LookupTable::ComputeLogRange(aRange, aScalarRange);
 
-  myMapperTable->Build();
-  myBarTable->Build();
+  if(!VISU::CheckIsSameRange(myMapperTable->GetRange(), aScalarRange)){
+    myMapperTable->SetRange(aScalarRange);
+    myMapperTable->Build();
+    myBarTable->Build();
+  }
 
   Superclass::Update();
 }
index 045db348f7b86de7171206b4a30851a48add63b2..3743750af2e63becf748066625bf475f932c49e1 100644 (file)
@@ -43,6 +43,10 @@ class VISU_ColoredPL : public VISU_PipeLine
 public:
   vtkTypeMacro(VISU_ColoredPL, VISU_PipeLine);
 
+  virtual
+  unsigned long int 
+  GetMTime();
+
   //----------------------------------------------------------------------------
   virtual
   int
index 6a1d391b69f0eb94558b11679b4de1289dd2372f..5811683414924df07c684056fe9484f6c03008cf 100644 (file)
@@ -122,7 +122,6 @@ public:
 
 protected:
   VISU_CutLinesPL();
-  VISU_CutLinesPL(const VISU_CutLinesPL&);
 
   virtual
   void
@@ -135,6 +134,10 @@ protected:
   vtkFloatingPointType myBasePnt[3];
   vtkFloatingPointType myPosition;
   int myCondition;
+
+private:
+  VISU_CutLinesPL(const VISU_CutLinesPL&);  // Not implemented.
+  void operator=(const VISU_CutLinesPL&);  // Not implemented.
 };
 
 
index 3abaeeea41d38ff1ad97343c40ee62bdfa70b8f7..22493a104f8b33e3ceb508f0d4579ff7479ce4af 100644 (file)
@@ -70,6 +70,19 @@ VISU_CutPlanesPL
 }
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_CutPlanesPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myAppendPolyData->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_CutPlanesPL
index f59d3eb193c22da009f77d9e722d76ed3aa3d9a8..27d377fd8971d3ecac67413a3a3f132c601d419f 100644 (file)
@@ -40,11 +40,16 @@ class VISU_PIPELINE_EXPORT VISU_CutPlanesPL : public VISU_ScalarMapPL
 {
 public:
   vtkTypeMacro(VISU_CutPlanesPL, VISU_ScalarMapPL);
-  static VISU_CutPlanesPL* New();
+
+  static 
+  VISU_CutPlanesPL* 
+  New();
 
   virtual
-  ~VISU_CutPlanesPL();
+  unsigned long int 
+  GetMTime();
 
+  //----------------------------------------------------------------------------
   enum PlaneOrientation {XY, YZ, ZX};
 
   virtual 
@@ -176,9 +181,12 @@ public:
                const std::vector<vtkFloatingPointType>& thePlanePosition,
                const std::vector<int>& thePlaneCondition,
                vtkFloatingPointType theDisplacement);
+
 protected:
   VISU_CutPlanesPL();
-  VISU_CutPlanesPL(const VISU_CutPlanesPL&);
+
+  virtual
+  ~VISU_CutPlanesPL();
 
   virtual 
   vtkDataSet* 
@@ -198,6 +206,10 @@ protected:
   vtkAppendPolyData *myAppendPolyData;
   std::vector<vtkFloatingPointType> myPartPosition;
   std::vector<int> myPartCondition;
+
+private:
+  VISU_CutPlanesPL(const VISU_CutPlanesPL&);  // Not implemented.
+  void operator=(const VISU_CutPlanesPL&);  // Not implemented.
 };
 
 #endif
index 168963929994af3d2212a1be2a419aa421110fde..6631af081dda168fcf1ec15b0334ffc25b797cec 100644 (file)
@@ -58,6 +58,20 @@ VISU_DeformedShapePL
 }
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_DeformedShapePL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myWarpVector->GetMTime());
+  aTime = std::max(aTime, myCellDataToPointData->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_DeformedShapePL
index e09b4cf78a19499b21685b344c0b6a78abfed65c..6011e501175ce531c838a7011fb2883612867382 100644 (file)
@@ -44,6 +44,11 @@ public:
   VISU_DeformedShapePL* 
   New();
 
+  virtual
+  unsigned long int 
+  GetMTime();
+
+  //----------------------------------------------------------------------------
   virtual
   void
   SetScale(vtkFloatingPointType theScale);
@@ -80,7 +85,6 @@ public:
   
 protected:
   VISU_DeformedShapePL();
-  VISU_DeformedShapePL(const VISU_DeformedShapePL&);
 
   virtual
   ~VISU_DeformedShapePL();
@@ -97,6 +101,10 @@ protected:
   vtkFloatingPointType myScaleFactor;
   vtkWarpVector *myWarpVector;
   vtkCellDataToPointData* myCellDataToPointData;
+
+private:
+  VISU_DeformedShapePL(const VISU_DeformedShapePL&);  // Not implemented.
+  void operator=(const VISU_DeformedShapePL&);  // Not implemented.
 };
 
 
index 1d8bcbe5915d0c71b4d878480885ae699ab79ff0..d56391a2b30c9417d00c3afd81849aeb43adf6bf 100644 (file)
@@ -89,6 +89,24 @@ VISU_GaussPointsPL
 }
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_GaussPointsPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myWarpVector->GetMTime());
+  aTime = std::max(aTime, myGlyph->GetMTime());
+  aTime = std::max(aTime, mySphereSource->GetMTime());
+
+  for(int i = 0; i < 3; i++)
+    aTime = std::max(aTime, myPassFilter[i]->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void  
 VISU_GaussPointsPL
index d8cd2f594e63515a353682cd8b63edb67bbe3031..905cdc363abaac4a692d7e180ba1b84b369bdf8b 100644 (file)
@@ -64,6 +64,10 @@ public:
   VISU_GaussPointsPL* 
   New();
   
+  virtual
+  unsigned long int 
+  GetMTime();
+
   //----------------------------------------------------------------------------
   void 
   SetGaussPtsIDMapper(const VISU::PGaussPtsIDMapper& theGaussPtsIDMapper);
@@ -302,6 +306,10 @@ private:
   vtkSphereSource* mySphereSource;
 
   vtkFloatingPointType myMagnificationIncrement;
+
+private:
+  VISU_GaussPointsPL(const VISU_GaussPointsPL&);  // Not implemented.
+  void operator=(const VISU_GaussPointsPL&);  // Not implemented.
 };
   
 #endif
index 8f92a1cbbd52de1c4afbd1c27e26dabcf537cbb8..bea9854f35cfe9ffd5ba52774d85447d5dcf67e6 100644 (file)
@@ -62,6 +62,20 @@ VISU_IsoSurfacesPL
 }
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_IsoSurfacesPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myCellDataToPointData->GetMTime());
+  aTime = std::max(aTime, myContourFilter->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_IsoSurfacesPL
index d53aeb3545bce0da0fc39d6a25c8c68952ae9f91..83a646dd8d3623b6574854fe2696f8d4ffb4bf81 100644 (file)
@@ -44,6 +44,11 @@ public:
   VISU_IsoSurfacesPL* 
   New();
 
+  virtual
+  unsigned long int 
+  GetMTime();
+
+  //----------------------------------------------------------------------------
   virtual
   int
   GetNbParts();
@@ -92,7 +97,6 @@ public:
 
 protected:
   VISU_IsoSurfacesPL();
-  VISU_IsoSurfacesPL(const VISU_IsoSurfacesPL&);
 
   virtual
   ~VISU_IsoSurfacesPL();
@@ -106,6 +110,11 @@ protected:
   vtkFloatingPointType myRange[2];
   vtkCellDataToPointData* myCellDataToPointData;
   vtkContourFilter *myContourFilter;
+
+private:
+  VISU_IsoSurfacesPL(const VISU_IsoSurfacesPL&);;  // Not implemented.
+  void operator=(const VISU_IsoSurfacesPL&);  // Not implemented.
+
 };
 
 
index 06661f017aa686815df71663c4ec3aa63d8b8e22..ea165bc078c1c073b603e35d5ab35e7f35cf4f2e 100644 (file)
@@ -274,7 +274,11 @@ void
 VISU_PipeLine
 ::SetIsShrinkable(bool theIsShrinkable)
 {
+  if(myIsShrinkable == theIsShrinkable)
+    return;
+
   myIsShrinkable = theIsShrinkable;
+  Modified();
 }
 
 
index 602445689f467b7ef02bf91fe22199be382c6451..7696d62e5d5453ae344ec30efd6e543808ef9011 100644 (file)
@@ -75,7 +75,23 @@ VISU_Plot3DPL
 //----------------------------------------------------------------------------
 VISU_Plot3DPL
 ::~VISU_Plot3DPL()
+{}
+
+
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_Plot3DPL
+::GetMTime()
 {
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myCellDataToPointData->GetMTime());
+  aTime = std::max(aTime, myAppendPolyData->GetMTime());
+  aTime = std::max(aTime, myGeometryFilter->GetMTime());
+  aTime = std::max(aTime, myContourFilter->GetMTime());
+  aTime = std::max(aTime, myWarpScalar->GetMTime());
+
+  return aTime;
 }
 
 
index 82d0855fb44fdb6ae80e98de1ddd7a76d3e6f2e3..2cb63767ca03c63e1779a09b764e83ec2bf035b7 100644 (file)
@@ -47,9 +47,11 @@ public:
   VISU_Plot3DPL* 
   New();
 
-  virtual 
-  ~VISU_Plot3DPL();
+  virtual
+  unsigned long int 
+  GetMTime();
 
+  //----------------------------------------------------------------------------
   VISU_CutPlanesPL::PlaneOrientation
   GetPlaneOrientation();
 
@@ -126,7 +128,8 @@ public:
 
 protected:
   VISU_Plot3DPL();
-  VISU_Plot3DPL(const VISU_Plot3DPL&);
+  virtual 
+  ~VISU_Plot3DPL();
 
   virtual
   vtkDataSet* 
@@ -147,6 +150,10 @@ protected:
   vtkSmartPointer<vtkGeometryFilter> myGeometryFilter;
   vtkSmartPointer<vtkContourFilter> myContourFilter;
   vtkSmartPointer<vtkWarpScalar> myWarpScalar;
+
+private:
+  VISU_Plot3DPL(const VISU_Plot3DPL&);;  // Not implemented.
+  void operator=(const VISU_Plot3DPL&);  // Not implemented.
 };
 
 #endif
index 2856a2986bf4c3ae94ed2b869d4ddae999eb4c24..77761421df821170019d9e94ff95005a1b5e313a 100644 (file)
@@ -69,6 +69,20 @@ VISU_ScalarMapPL
 {}
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_ScalarMapPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myAppendFilter->GetMTime());
+  aTime = std::max(aTime, myMergeFilter->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void  
 VISU_ScalarMapPL
index 130207935d7990878e208c34fb1e289df8c9209c..eaa1aae75c07d86a4c3c3c3f0912d44bda2f4763 100644 (file)
@@ -48,6 +48,11 @@ public:
   VISU_ScalarMapPL* 
   New();
 
+  virtual
+  unsigned long int 
+  GetMTime();
+
+  //----------------------------------------------------------------------------
   virtual
   void
   Update();
@@ -83,7 +88,6 @@ public:
 protected:
   //----------------------------------------------------------------------------
   VISU_ScalarMapPL();
-  VISU_ScalarMapPL(const VISU_ScalarMapPL&);
   
   virtual
   ~VISU_ScalarMapPL();
@@ -106,6 +110,9 @@ protected:
                bool theIsCopyInput);
 
 private:
+  VISU_ScalarMapPL(const VISU_ScalarMapPL&);  // Not implemented.
+  void operator=(const VISU_ScalarMapPL&);  // Not implemented.
+
   vtkSmartPointer<VISU_AppendFilter> myAppendFilter;
   vtkSmartPointer<VISU_MergeFilter> myMergeFilter;
 };
index 97d9abfbe13f26d3b1406683f775d559d57b6602..a56299e42b66b98ff9f34bf54352d7e8f5adf8bf 100644 (file)
@@ -88,6 +88,23 @@ VISU_StreamLinesPL
 }
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_StreamLinesPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myStream->GetMTime());
+  aTime = std::max(aTime, mySource->GetMTime());
+  aTime = std::max(aTime, myCenters->GetMTime());
+  aTime = std::max(aTime, myGeomFilter->GetMTime());
+  aTime = std::max(aTime, myPointsFilter->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_StreamLinesPL
index ed762a9b5bab26bf376aa209ac913eaacb8760cc..1e26676aac33fff3cd7d39cee196f4e64e2c66ac 100644 (file)
@@ -47,6 +47,11 @@ public:
   VISU_StreamLinesPL*
   New();
 
+  virtual
+  unsigned long int 
+  GetMTime();
+
+  //----------------------------------------------------------------------------
   virtual
   size_t
   SetParams(vtkFloatingPointType theIntStep,
@@ -191,7 +196,6 @@ public:
 
 protected:
   VISU_StreamLinesPL();
-  VISU_StreamLinesPL(const VISU_StreamLinesPL&);
 
   virtual
   ~VISU_StreamLinesPL();
@@ -237,6 +241,10 @@ protected:
   VTKViewer_GeometryFilter *myGeomFilter;
   VISU_UsedPointsFilter *myPointsFilter;
   vtkFloatingPointType myPercents;
+
+private:
+  VISU_StreamLinesPL(const VISU_StreamLinesPL&);  // Not implemented.
+  void operator=(const VISU_StreamLinesPL&);  // Not implemented.
 };
 
 
index 36a3014f2c43cb7924859399177d1a7721b7e464..acc3657fd8eda637190bee6a2d3a7df60cd0754a 100644 (file)
@@ -79,6 +79,25 @@ VISU_VectorsPL
 }
 
 
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_VectorsPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myBaseGlyph->GetMTime());
+  aTime = std::max(aTime, myTransformedGlyph->GetMTime());
+  aTime = std::max(aTime, myCenters->GetMTime());
+  aTime = std::max(aTime, myGlyphSource->GetMTime());
+  aTime = std::max(aTime, myConeSource->GetMTime());
+  aTime = std::max(aTime, myLineSource->GetMTime());
+  aTime = std::max(aTime, myTransformFilter->GetMTime());
+
+  return aTime;
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_VectorsPL
index cbdcd300adee9757dcd67e8a3928b484ab13859d..8a3883758e0905e89c7e705938bb6f34a72dcd96 100644 (file)
@@ -51,6 +51,11 @@ public:
   VISU_VectorsPL* 
   New();
 
+  virtual
+  unsigned long int 
+  GetMTime();
+
+  //----------------------------------------------------------------------------
   virtual
   void
   SetScale(vtkFloatingPointType theScale);
@@ -114,7 +119,6 @@ public:
 
 protected:
   VISU_VectorsPL();
-  VISU_VectorsPL(const VISU_VectorsPL&);
 
   virtual
   ~VISU_VectorsPL();
@@ -139,6 +143,10 @@ protected:
 
   vtkCellCenters* myCenters;
   VTKViewer_TransformFilter *myTransformFilter;
+
+private:
+  VISU_VectorsPL(const VISU_VectorsPL&);  // Not implemented.
+  void operator=(const VISU_VectorsPL&);  // Not implemented.
 };
 
 
index 02ff6a74c7fe18710e8276127d6b0679feb4c874..6a66425d773bbae5cde36bb6586c371f59fd2e68 100644 (file)
@@ -319,6 +319,8 @@ void VisuGUI_GaussScalarBarPane::onGlobalScalarBar()
   RBFieldRange->setEnabled( false );
   MinEdit->setEnabled( false );
   MaxEdit->setEnabled( false );
+
+  myPrsCopy->SetIsActiveLocalScalarBar(false);
 }
 
 
@@ -333,6 +335,8 @@ void VisuGUI_GaussScalarBarPane::onLocalScalarBar()
     MinEdit->setEnabled( true );
     MaxEdit->setEnabled( true );
   }
+
+  myPrsCopy->SetIsActiveLocalScalarBar(true);
 }
 
 
index 7b3701574ac48378c38c6dea997fc280b743612f..184ad65a24a1c0e4e58221437e1ef348d5e8afe5 100644 (file)
@@ -62,6 +62,7 @@ libVISUEngineImpl_la_SOURCES = \
        VISU_CorbaMedConvertor.cxx \
        VISU_PrsObject_i.cc \
        VISU_Prs3d_i.cc \
+       VISU_Prs3dUtils.cc \
        VISU_ColoredPrs3d_i.cc \
        VISU_ScalarMap_i.cc \
        VISU_GaussPoints_i.cc \
index 595fd30a7822c8d11fc386f6a3156b84e6944db4..d6bbf4777df446219da11e4a9541df10c2d143bd 100644 (file)
@@ -420,6 +420,7 @@ VISU::ColoredPrs3dCache_i
   }
 
   myMemoryMode = theMode;
+  GetStudyDocument()->Modified();
 }
 
 VISU::ColoredPrs3dCache::MemoryMode
@@ -447,6 +448,7 @@ VISU::ColoredPrs3dCache_i
 
   ClearCache(theMemorySize);
   myLimitedMemory = theMemorySize;
+  GetStudyDocument()->Modified();
 }
 
 CORBA::Float
index 46b613e2d22cf34008849f24a2e20e2a80b75dce..488db1569356d39ac55809bf5bbe62835d1bb0dc 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_ColoredPrs3d_i.hh"
+#include "VISU_Prs3dUtils.hh"
 
 #include "VISU_Result_i.hh"
 #include "VISU_ColoredPL.hxx"
@@ -183,7 +184,7 @@ VISU::ColoredPrs3d_i
       GetSpecificPL()->Init();
 
     // To update scalar range according to the new input
-    if(!IsTimeStampFixed() && !IsRangeFixed() || theReInit)
+    if(!IsRangeFixed() || theReInit)
       SetSourceRange();
 
     GetCResult()->ConnectObserver(this, myResultConnection);
@@ -214,10 +215,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetEntity(VISU::Entity theEntity)
 {
-  if(myEntity != theEntity){
-    myEntity = theEntity;
-    myParamsTime.Modified();
-  }
+  if(myEntity == theEntity)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myEntity = theEntity;
+  myParamsTime.Modified();
 }
 
 
@@ -244,10 +248,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetFieldName(const char* theFieldName)
 {
-  if(myFieldName != theFieldName){
-    myFieldName = theFieldName;
-    myParamsTime.Modified();
-  }
+  if(myFieldName == theFieldName)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myFieldName = theFieldName;
+  myParamsTime.Modified();
 }
 
 
@@ -292,10 +299,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetTimeStampNumber(CORBA::Long theTimeStampNumber)
 {
-  if(myTimeStampNumber != theTimeStampNumber){
-    myTimeStampNumber = theTimeStampNumber;
-    myParamsTime.Modified();
-  }
+  if(myTimeStampNumber == theTimeStampNumber)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myTimeStampNumber = theTimeStampNumber;
+  myParamsTime.Modified();
 }
 
 
@@ -515,8 +525,11 @@ VISU::ColoredPrs3d_i
     SetNbColors(anOrigin->GetNbColors());
     SetBarOrientation(anOrigin->GetBarOrientation());
     
+    //  "SetRange" function changes "myIsFixedRange" attribute,
+    // so, it is necessary pay a special attention if "this" equal to "theOrigin"
+    bool anIsFixedRange = anOrigin->IsRangeFixed(); 
     SetRange(anOrigin->GetMin(), anOrigin->GetMax());
-    UseFixedRange(anOrigin->IsRangeFixed());
+    UseFixedRange(anIsFixedRange);
 
     SetPosition(anOrigin->GetPosX(), anOrigin->GetPosY());
     SetSize(anOrigin->GetWidth(), anOrigin->GetHeight());
@@ -553,6 +566,7 @@ VISU::ColoredPrs3d_i
   return myColoredPL->GetScalarMode();
 }
 
+
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
@@ -564,6 +578,8 @@ VISU::ColoredPrs3d_i
   else if(theScalarMode > aNbComp)
     theScalarMode = 0;
 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ColoredPL, int>
                   (GetSpecificPL(), &VISU_ColoredPL::SetScalarMode, theScalarMode));
 }
@@ -589,6 +605,8 @@ void
 VISU::ColoredPrs3d_i
 ::SetRange(CORBA::Double theMin, CORBA::Double theMax)
 {
+  VISU::TSetModified aModified(this);
+
   vtkFloatingPointType aScalarRange[2] = {theMin, theMax};
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ColoredPL, vtkFloatingPointType*>
                   (GetSpecificPL(), &VISU_ColoredPL::SetScalarRange, aScalarRange));
@@ -602,6 +620,8 @@ void
 VISU::ColoredPrs3d_i
 ::SetSourceRange()
 {
+  VISU::TSetModified aModified(this);
+
   if(IsTimeStampFixed()){
     GetSpecificPL()->SetSourceRange();
     ProcessVoidEvent(new TVoidMemFunEvent<VISU_ColoredPL>
@@ -650,6 +670,8 @@ void
 VISU::ColoredPrs3d_i
 ::SetNbColors(CORBA::Long theNbColors)
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ColoredPL, int>
                   (GetSpecificPL(), &VISU_ColoredPL::SetNbColors, theNbColors));
 }
@@ -667,10 +689,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetBarOrientation(VISU::ColoredPrs3d::Orientation theOrientation)
 {
-  if(myOrientation != theOrientation){
-    myOrientation = theOrientation;
-    myParamsTime.Modified();
-  }
+  if(myOrientation == theOrientation)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myOrientation = theOrientation;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -691,6 +716,8 @@ VISU::ColoredPrs3d_i
   if(anIsSameValue)
     return;
 
+  VISU::TSetModified aModified(this);
+
   myPosition[0] = theX; 
   myPosition[1] = theY;
   myParamsTime.Modified();
@@ -722,6 +749,8 @@ VISU::ColoredPrs3d_i
   if(anIsSameValue)
     return;
 
+  VISU::TSetModified aModified(this);
+
   myWidth = theWidth; 
   myHeight = theHeight;
   myParamsTime.Modified();
@@ -748,10 +777,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetLabels(CORBA::Long theNbLabels)
 {
-  if(myNumberOfLabels != theNbLabels){
-    myNumberOfLabels = theNbLabels;
-    myParamsTime.Modified();
-  }
+  if(myNumberOfLabels == theNbLabels)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myNumberOfLabels = theNbLabels;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -779,6 +811,8 @@ VISU::ColoredPrs3d_i
     aStream<<theTitle<<" "<<VISU_Convertor::GenerateName(aTime)<<std::ends;
     std::string aScalarBarTitle = aStream.str();
     if(myTitle != theTitle || myScalarBarTitle != aScalarBarTitle){
+      VISU::TSetModified aModified(this);
+
       myScalarBarTitle = aScalarBarTitle;
       myTitle = theTitle;
       myParamsTime.Modified();
@@ -815,10 +849,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetBoldTitle(bool theIsBoldTitle)
 {
-  if(myIsBoldTitle != theIsBoldTitle){
-    myIsBoldTitle = theIsBoldTitle;
-    myParamsTime.Modified();
-  }
+  if(myIsBoldTitle == theIsBoldTitle)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myIsBoldTitle = theIsBoldTitle;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -834,10 +871,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetItalicTitle(bool theIsItalicTitle)
 { 
-  if(myIsItalicTitle != theIsItalicTitle){
-    myIsItalicTitle = theIsItalicTitle;
-    myParamsTime.Modified();
-  }
+  if(myIsItalicTitle == theIsItalicTitle)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myIsItalicTitle = theIsItalicTitle;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -853,10 +893,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetShadowTitle(bool theIsShadowTitle)
 { 
-  if(myIsShadowTitle != theIsShadowTitle){
-    myIsShadowTitle = theIsShadowTitle;
-    myParamsTime.Modified();
-  }
+  if(myIsShadowTitle == theIsShadowTitle)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myIsShadowTitle = theIsShadowTitle;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -872,10 +915,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetTitFontType(int theTitFontType)
 {
-  if(myTitFontType != theTitFontType){
-    myTitFontType = theTitFontType;
-    myParamsTime.Modified();
-  }
+  if(myTitFontType == theTitFontType)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myTitFontType = theTitFontType;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -903,6 +949,8 @@ VISU::ColoredPrs3d_i
   if(anIsSameValue)
     return;
 
+  VISU::TSetModified aModified(this);
+
   myTitleColor[0] = theR; 
   myTitleColor[1] = theG; 
   myTitleColor[2] = theB; 
@@ -922,10 +970,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetBoldLabel(bool theIsBoldLabel) 
 {
-  if(myIsBoldLabel != theIsBoldLabel){
-    myIsBoldLabel = theIsBoldLabel;
-    myParamsTime.Modified();
-  }
+  if(myIsBoldLabel == theIsBoldLabel)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myIsBoldLabel = theIsBoldLabel;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -941,10 +992,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetItalicLabel(bool theIsItalicLabel)
 {
-  if(myIsItalicLabel != theIsItalicLabel){
-    myIsItalicLabel = theIsItalicLabel;
-    myParamsTime.Modified();
-  }
+  if(myIsItalicLabel == theIsItalicLabel)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myIsItalicLabel = theIsItalicLabel;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -960,10 +1014,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetShadowLabel(bool theIsShadowLabel)
 {
-  if(myIsShadowLabel != theIsShadowLabel){
-    myIsShadowLabel = theIsShadowLabel;
-    myParamsTime.Modified();
-  }
+  if(myIsShadowLabel == theIsShadowLabel)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myIsShadowLabel = theIsShadowLabel;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -979,10 +1036,13 @@ void
 VISU::ColoredPrs3d_i
 ::SetLblFontType(int theLblFontType)
 {
-  if(myIsShadowLabel != theLblFontType){
-    myLblFontType = theLblFontType;
-    myParamsTime.Modified();
-  }
+  if(myIsShadowLabel == theLblFontType)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myLblFontType = theLblFontType;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -1010,6 +1070,8 @@ VISU::ColoredPrs3d_i
   if(anIsSameValue)
     return;
 
+  VISU::TSetModified aModified(this);
+
   myLabelColor[0] = theR; 
   myLabelColor[1] = theG; 
   myLabelColor[2] = theB; 
index ede2fea61989a2b470b4545123e5d96debe4c8f4..88d83cd63b7101118e7f60827afa9460410a47ec 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_CutLines_i.hh"
+#include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
 
 #include "VISU_Actor.h"
@@ -272,8 +273,9 @@ VISU::CutLines_i
     }
   };
 
-  ProcessVoidEvent(new TEvent(myCutLinesPL, theOrient, theXAngle, theYAngle));
+  VISU::TSetModified aModified(this);
 
+  ProcessVoidEvent(new TEvent(myCutLinesPL, theOrient, theXAngle, theYAngle));
 }
 
 //---------------------------------------------------------------
@@ -309,6 +311,8 @@ VISU::CutLines_i
     }
   };
 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TEvent(myCutLinesPL, theOrient, theXAngle, theYAngle));
 }
 
@@ -367,6 +371,8 @@ void
 VISU::CutLines_i
 ::SetDisplacement(CORBA::Double theDisp) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_CutLinesPL, vtkFloatingPointType, int>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetDisplacement, theDisp, 0));
 }
@@ -376,6 +382,8 @@ void
 VISU::CutLines_i
 ::SetDisplacement2(CORBA::Double theDisp) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_CutLinesPL, vtkFloatingPointType, int>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetDisplacement, theDisp, 1));
 }
@@ -403,6 +411,8 @@ void
 VISU::CutLines_i
 ::SetBasePlanePosition(CORBA::Double thePlanePosition)
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_CutLinesPL, vtkFloatingPointType>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetPosition, thePlanePosition));
 }
@@ -421,6 +431,8 @@ VISU::CutLines_i
 ::SetLinePosition(CORBA::Long thePlaneNumber, 
                  CORBA::Double thePlanePosition)
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_CutLinesPL, int, vtkFloatingPointType>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetPartPosition, thePlaneNumber, thePlanePosition));
 }
@@ -439,6 +451,8 @@ void
 VISU::CutLines_i
 ::SetDefault()
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFunEvent<VISU_CutLinesPL>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetDefault));
 }
@@ -456,6 +470,8 @@ void
 VISU::CutLines_i
 ::SetDefaultPosition(CORBA::Long thePlaneNumber)
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_CutLinesPL, int>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetPartDefault, thePlaneNumber));
 }
@@ -506,6 +522,8 @@ VISU::CutLines_i
   if(myMapCurvesInverted[theCurveNumber] == theInvert)
     return;
 
+  VISU::TSetModified aModified(this);
+
   myMapCurvesInverted[theCurveNumber] = theInvert;
   myParamsTime.Modified();
 }
@@ -533,6 +551,8 @@ VISU::CutLines_i
   if(myUseAbsLength == theAbsLength)
     return;
 
+  VISU::TSetModified aModified(this);
+
   myUseAbsLength = theAbsLength;
   myParamsTime.Modified();
 }
@@ -550,6 +570,8 @@ void
 VISU::CutLines_i
 ::SetNbLines(CORBA::Long theNb) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_CutLinesPL, int>
                   (GetSpecificPL(), &VISU_CutLinesPL::SetNbParts, theNb));
 }
index f899ee38ad904b05b07f9a6c0d56ec2c6ee0b0ee..a0f724b7cdb0330ad02634f061ccd6cb2c6804f1 100644 (file)
 //  Module : VISU
 
 #include "VISU_CutPlanesPL.hxx"
-#include "VISU_Result_i.hh"
+#include "VISU_Prs3dUtils.hh"
 #include "VISU_CutPlanes_i.hh"
+
+#include "VISU_Result_i.hh"
 #include "VISU_Actor.h"
 
 #include "SUIT_ResourceMgr.h"
@@ -195,6 +197,8 @@ VISU::CutPlanes_i
     }
   };
 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TEvent(GetSpecificPL(),
                              VISU_CutPlanesPL::PlaneOrientation(theOrient),
                              theXAngle,
@@ -231,6 +235,8 @@ void
 VISU::CutPlanes_i
 ::SetDisplacement(CORBA::Double theDisp) 
 {  
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_CutPlanesPL, vtkFloatingPointType, int>
                   (GetSpecificPL(), &VISU_CutPlanesPL::SetDisplacement, theDisp, 0));
 }
@@ -250,6 +256,8 @@ VISU::CutPlanes_i
 ::SetPlanePosition(CORBA::Long thePlaneNumber, 
                   CORBA::Double thePlanePosition)
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_CutPlanesPL, int, vtkFloatingPointType>
                   (GetSpecificPL(), &VISU_CutPlanesPL::SetPartPosition, thePlaneNumber, thePlanePosition));
 }
@@ -268,6 +276,8 @@ void
 VISU::CutPlanes_i
 ::SetDefault(CORBA::Long thePlaneNumber)
 {
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_CutPlanesPL, int>
                   (GetSpecificPL(), &VISU_CutPlanesPL::SetPartDefault, thePlaneNumber));
 }
@@ -286,6 +296,8 @@ void
 VISU::CutPlanes_i
 ::SetNbPlanes(CORBA::Long theNb) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_CutPlanesPL, int>
                   (GetSpecificPL(), &VISU_CutPlanesPL::SetNbParts, theNb));
 }
index cea988c3a9d5da1cf16d575696c82e235c96b052..5e8ae25df85037ccdb09dd3661c2870ab03b4893 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_DeformedShape_i.hh"
+#include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
 
 #include "VISU_ScalarMapAct.h"
@@ -204,6 +205,8 @@ void
 VISU::DeformedShape_i
 ::SetScale(CORBA::Double theScale) 
 { 
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedShapePL, vtkFloatingPointType>
                   (GetSpecificPL(), &VISU_DeformedShapePL::SetScale, theScale));
 }
@@ -258,6 +261,8 @@ VISU::DeformedShape_i
   if(anIsSameValue)
     return;
 
+  VISU::TSetModified aModified(this);
+  
   myColor = theColor;
   myParamsTime.Modified();
 }
@@ -298,6 +303,8 @@ void
 VISU::DeformedShape_i
 ::SetMapScale(double theMapScale)
 {
+  VISU::TSetModified aModified(this);
+  
   myDeformedShapePL->SetMapScale(theMapScale);
 }
 
index 06ce70a37c5e72de323e70bab1e3e7ba16b2e040..47ddbf40e9b3b9b4be4c5144a714a5b1cb8f887c 100644 (file)
@@ -26,6 +26,7 @@
 
 #include "VISU_GaussPoints_i.hh"
 #include "VISU_ScalarMap_i.hh"
+#include "VISU_Prs3dUtils.hh"
 
 #include "VISU_Result_i.hh"
 #include "VISU_GaussPtsAct.h"
@@ -363,10 +364,13 @@ void
 VISU::GaussPoints_i
 ::SetFaceLimit( CORBA::Long theFaceLimit )
 {
-  if( myFaceLimit != theFaceLimit ){
-    myFaceLimit = theFaceLimit;
-    myParamsTime.Modified();
-  }
+  if( myFaceLimit == theFaceLimit )
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myFaceLimit = theFaceLimit;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -374,6 +378,8 @@ void
 VISU::GaussPoints_i
 ::SetIsDeformed( CORBA::Boolean theIsDeformed )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetIsDeformed( theIsDeformed );
 }
 
@@ -389,6 +395,8 @@ void
 VISU::GaussPoints_i
 ::SetScaleFactor( CORBA::Double theScaleFactor )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetScale( theScaleFactor );
 }
 
@@ -427,6 +435,8 @@ VISU::GaussPoints_i
   if(myColor == theColor)
     return;
 
+  VISU::TSetModified aModified(this);
+  
   myColor = theColor;
   myParamsTime.Modified();
 }
@@ -444,6 +454,8 @@ void
 VISU::GaussPoints_i
 ::SetIsColored( bool theIsColored )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetIsColored( theIsColored );
 }
 
@@ -459,9 +471,15 @@ bool
 VISU::GaussPoints_i
 ::SetMainTexture( const QString& theMainTexture ) 
 {
-  bool update = myMainTexture != theMainTexture;
-  myMainTexture = theMainTexture;
-  return update;
+  if(myMainTexture != theMainTexture){
+    VISU::TSetModified aModified(this);
+  
+    myMainTexture = theMainTexture;
+    myParamsTime.Modified();
+    return true;
+  }
+
+  return false;
 }
 
 QString
@@ -484,9 +502,15 @@ bool
 VISU::GaussPoints_i
 ::SetAlphaTexture( const QString& theAlphaTexture ) 
 {
-  bool update = myAlphaTexture != theAlphaTexture;
-  myAlphaTexture = theAlphaTexture;
-  return update;
+  if(myAlphaTexture != theAlphaTexture){
+    VISU::TSetModified aModified(this);
+  
+    myAlphaTexture = theAlphaTexture;
+    myParamsTime.Modified();
+    return true;
+  }
+
+  return false;
 }
 
 QString
@@ -509,6 +533,8 @@ void
 VISU::GaussPoints_i
 ::SetAlphaThreshold( CORBA::Double theAlphaThreshold )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetAlphaThreshold( theAlphaThreshold );
 }
 
@@ -524,6 +550,8 @@ void
 VISU::GaussPoints_i
 ::SetResolution( CORBA::Long theResolution )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetResolution( theResolution );
 }
 
@@ -539,6 +567,8 @@ void
 VISU::GaussPoints_i
 ::SetPrimitiveType(VISU::GaussPoints::PrimitiveType thePrimitiveType)
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetPrimitiveType( thePrimitiveType );
 }
 
@@ -570,6 +600,8 @@ void
 VISU::GaussPoints_i
 ::SetClamp(CORBA::Double theClamp)
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetClamp( theClamp );
 }
 
@@ -585,6 +617,8 @@ void
 VISU::GaussPoints_i
 ::SetGeomSize( CORBA::Double theGeomSize )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetSize( theGeomSize );
 }
 
@@ -600,6 +634,8 @@ void
 VISU::GaussPoints_i
 ::SetMinSize( CORBA::Double theMinSize )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetMinSize( theMinSize );
 }
 
@@ -615,6 +651,8 @@ void
 VISU::GaussPoints_i
 ::SetMaxSize( CORBA::Double theMaxSize )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetMaxSize( theMaxSize );
 }
 
@@ -630,6 +668,8 @@ void
 VISU::GaussPoints_i
 ::SetMagnification( CORBA::Double theMagnification )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetMagnification( theMagnification );
 }
 
@@ -645,6 +685,8 @@ void
 VISU::GaussPoints_i
 ::SetMagnificationIncrement( CORBA::Double theIncrement )
 {
+  VISU::TSetModified aModified(this);
+  
   myGaussPointsPL->SetMagnificationIncrement( theIncrement );
 }
 
@@ -830,9 +872,15 @@ VISU::GaussPoints_i
       anActor->SetBarVisibility(true);
       GetPipeLine()->GetMapper()->SetScalarVisibility(1);
 
-      vtkFloatingPointType* aRange = GetSpecificPL()->GetScalarRange();
-      aScalarBarCtrl->SetRangeLocal(aRange);
-      
+      if(IsRangeFixed()){
+       vtkFloatingPointType* aRange = GetSpecificPL()->GetScalarRange();
+       aScalarBarCtrl->SetRangeLocal(aRange);
+      }else{
+       vtkFloatingPointType aRange[2];
+       GetSpecificPL()->GetSourceRange(aRange);
+       aScalarBarCtrl->SetRangeLocal(aRange);
+      }
+
       TMinMax aTMinMax(-VTK_LARGE_FLOAT,VTK_LARGE_FLOAT);
       bool anIsMinMaxDone = IsGlobalRangeDefined();
       if(anIsMinMaxDone)
@@ -921,8 +969,10 @@ VISU::GaussPoints_i
   if( !updateMainTexture && !updateAlphaTexture )
     return;
 
+  VISU::TSetModified aModified(this);
+  
   using namespace VISU;
-  TTextureValue aTextureValue = GetTexture(theMainTexture,theAlphaTexture);
+  TTextureValue aTextureValue = GetTexture(theMainTexture, theAlphaTexture);
   myGaussPointsPL->SetImageData( aTextureValue.GetPointer() );
 }
 
@@ -940,10 +990,13 @@ void
 VISU::GaussPoints_i
 ::SetIsActiveLocalScalarBar(CORBA::Boolean theIsActiveLocalScalarBar)
 {
-  if(myIsActiveLocalScalarBar != theIsActiveLocalScalarBar){
-    myIsActiveLocalScalarBar = theIsActiveLocalScalarBar;
-    myParamsTime.Modified();
-  }
+  if(myIsActiveLocalScalarBar == theIsActiveLocalScalarBar)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myIsActiveLocalScalarBar = theIsActiveLocalScalarBar;
+  myParamsTime.Modified();
 }
 
 CORBA::Boolean
@@ -957,10 +1010,13 @@ void
 VISU::GaussPoints_i
 ::SetIsDispGlobalScalarBar(CORBA::Boolean theIsDispGlobalScalarBar)
 {
-  if(myIsDispGlobalScalarBar != theIsDispGlobalScalarBar){
-    myIsDispGlobalScalarBar = theIsDispGlobalScalarBar;
-    myParamsTime.Modified();
-  }
+  if(myIsDispGlobalScalarBar == theIsDispGlobalScalarBar)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myIsDispGlobalScalarBar = theIsDispGlobalScalarBar;
+  myParamsTime.Modified();
 }
 
 bool
@@ -975,6 +1031,8 @@ void
 VISU::GaussPoints_i
 ::SetSourceRange()
 {
+  VISU::TSetModified aModified(this);
+
   if(IsTimeStampFixed() || GetIsActiveLocalScalarBar())
     ProcessVoidEvent(new TVoidMemFunEvent<VISU_ColoredPL>
                     (GetSpecificPL(), &VISU_ColoredPL::SetSourceRange));
@@ -1029,6 +1087,8 @@ void
 VISU::GaussPoints_i
 ::SetBiColor(CORBA::Boolean theIsBiColor)
 {
+  VISU::TSetModified aModified(this);
+
   GetSpecificPL()->SetBicolor(theIsBiColor);
 }
 
@@ -1043,10 +1103,13 @@ void
 VISU::GaussPoints_i
 ::SetSpacing(CORBA::Double theSpacing)
 {
-  if(!VISU::CheckIsSameValue(mySpacing, theSpacing)){
-    mySpacing = theSpacing;
-    myParamsTime.Modified();
-  }
+  if(VISU::CheckIsSameValue(mySpacing, theSpacing))
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  mySpacing = theSpacing;
+  myParamsTime.Modified();
 }
 
 CORBA::Double
index 769e48de3c4d5994eee0f4d0f6028c8f27f4f7e7..96377ac7c03c0616209ea2d07fc5d4a99cf37815 100644 (file)
 //  Author : Alexey PETROV
 //  Module : VISU
 
+#include "VISU_IsoSurfaces_i.hh"
+#include "VISU_Prs3dUtils.hh"
+
 #include "VISU_IsoSurfacesPL.hxx"
 #include "VISU_Result_i.hh"
-#include "VISU_IsoSurfaces_i.hh"
 #include "VISU_Actor.h"
 
 #include "SUIT_ResourceMgr.h"
@@ -152,6 +154,8 @@ void
 VISU::IsoSurfaces_i
 ::SetNbSurfaces(CORBA::Long theNb)
 {
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_IsoSurfacesPL, int>
                   (GetSpecificPL(), &VISU_IsoSurfacesPL::SetNbParts, theNb));
 }
@@ -170,6 +174,8 @@ void
 VISU::IsoSurfaces_i
 ::SetSubRange(CORBA::Double theMin, CORBA::Double theMax)
 { 
+  VISU::TSetModified aModified(this);
+  
   vtkFloatingPointType aRange[2] = {theMin, theMax};
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_IsoSurfacesPL, vtkFloatingPointType*>
                   (GetSpecificPL(), &VISU_IsoSurfacesPL::SetRange, aRange));
index 01496c584eb6e5c96659037f24b4c3522b4df349..6b9f866078d5d5492b0345dbd6013c52f94ce601 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_Mesh_i.hh"
+#include "VISU_Prs3dUtils.hh"
 
 #include "VISU_Result_i.hh"
 
@@ -323,6 +324,8 @@ VISU::Mesh_i
   if(IsSameColor(myCellColor, theColor))
     return;
 
+  VISU::TSetModified aModified(this);
+  
   myCellColor = theColor;
   myParamsTime.Modified();
 }
@@ -345,6 +348,8 @@ VISU::Mesh_i
   if(IsSameColor(myNodeColor, theColor))
     return;
 
+  VISU::TSetModified aModified(this);
+  
   myNodeColor = theColor;
   myParamsTime.Modified();
 }
@@ -367,6 +372,8 @@ VISU::Mesh_i
   if(IsSameColor(myLinkColor, theColor))
     return;
 
+  VISU::TSetModified aModified(this);
+  
   myLinkColor = theColor;
   myParamsTime.Modified();
 }
@@ -389,6 +396,8 @@ VISU::Mesh_i
   if(myPresentType == theType)
     return;
 
+  VISU::TSetModified aModified(this);
+  
   myPresentType = theType;
   myParamsTime.Modified();
 }
index 8f211473ef48228efc5450b4d1dcd5bc8ef7e430..7639c4e230f9e4999f32e336ea4fb7d259b1dcee 100644 (file)
@@ -1068,8 +1068,8 @@ VISU::MultiResult_i
   if(!myIsPartsDone) // If corresponding data is not ready yet
     return TSuperClass::GetInput();
 
-  if(UseInitialInput(myPartName2FileName, myPartName2Resolution)) 
-    return TSuperClass::GetInput();
+  //if(UseInitialInput(myPartName2FileName, myPartName2Resolution)) 
+  //  return TSuperClass::GetInput();
 
   MultiResult_i::TRepresentationKey aRepresentationKey = 
     GetRepresentation(myPartName2FileName, myPartName2Resolution);
index cf2b8ebba293c62fbe84c31903eae2adf9fb12a9..a8de05e67d153a7b2ae860a23d5d6b43e13b1ed1 100644 (file)
@@ -19,6 +19,7 @@
 //
 
 #include "VISU_Plot3D_i.hh"
+#include "VISU_Prs3dUtils.hh"
 
 #include "VISU_Result_i.hh"
 #include "VISU_Plot3DPL.hxx"
@@ -188,6 +189,8 @@ VISU::Plot3D_i
     }
   };
 
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TEvent(GetSpecificPL(),
                              VISU_CutPlanesPL::PlaneOrientation(theOrient),
                              theXAngle,
@@ -228,6 +231,8 @@ VISU::Plot3D_i
 ::SetPlanePosition(CORBA::Double  thePlanePosition,
                   CORBA::Boolean theIsRelative)
 {
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_Plot3DPL, vtkFloatingPointType, bool>
                   (GetSpecificPL(), &VISU_Plot3DPL::SetPlanePosition, thePlanePosition, theIsRelative));
 }
@@ -256,6 +261,8 @@ void
 VISU::Plot3D_i
 ::SetScaleFactor(CORBA::Double theScaleFactor)
 {
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_Plot3DPL, vtkFloatingPointType>
                   (GetSpecificPL(), &VISU_Plot3DPL::SetScaleFactor, theScaleFactor));
 }
@@ -275,6 +282,8 @@ void
 VISU::Plot3D_i
 ::SetNbOfContours(CORBA::Long theNb)
 {
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_Plot3DPL, int>
                   (GetSpecificPL(), &VISU_Plot3DPL::SetNumberOfContours, theNb));
 }
@@ -294,6 +303,8 @@ void
 VISU::Plot3D_i
 ::SetContourPrs(CORBA::Boolean theIsContourPrs)
 {
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_Plot3DPL, bool>
                   (GetSpecificPL(), &VISU_Plot3DPL::SetContourPrs, theIsContourPrs));
 }
diff --git a/src/VISU_I/VISU_Prs3dUtils.cc b/src/VISU_I/VISU_Prs3dUtils.cc
new file mode 100644 (file)
index 0000000..feb2bd4
--- /dev/null
@@ -0,0 +1,57 @@
+//  VISU OBJECT : interactive object for VISU entities implementation
+//
+//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//
+//  File   : VISU_Prs3dUtils.cc
+//  Author : Alexey PETROV
+//  Module : VISU
+
+#include "VISU_Prs3dUtils.hh"
+#include "VISU_PipeLine.hxx"
+
+
+namespace VISU
+{
+  //----------------------------------------------------------------------------
+  TSetModified
+  ::TSetModified(VISU::Prs3d_i* thePrs3d):
+    myPrs3d(thePrs3d)
+  {
+    this->Modified();
+  }
+
+
+  //----------------------------------------------------------------------------
+  TSetModified
+  ::~TSetModified()
+  {
+    if(myPrs3d->GetActorEntry() == "")
+      return;
+
+    if(myPrs3d->GetMTime() > this->GetMTime()){
+      SALOMEDS::Study_var aStudy = myPrs3d->GetStudyDocument();
+      aStudy->Modified();
+    }
+  }
+
+
+  //----------------------------------------------------------------------------
+};
diff --git a/src/VISU_I/VISU_Prs3dUtils.hh b/src/VISU_I/VISU_Prs3dUtils.hh
new file mode 100644 (file)
index 0000000..2f4bf8b
--- /dev/null
@@ -0,0 +1,52 @@
+//  VISU OBJECT : interactive object for VISU entities implementation
+//
+//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//
+//  File   : VISU_Prs3dUtils.hh
+//  Author : Alexey PETROV
+//  Module : VISU
+
+#ifndef __VISU_PRS3D_UTILS_H__
+#define __VISU_PRS3D_UTILS_H__
+
+#include "VISU_Prs3d_i.hh"
+
+#include <vtkTimeStamp.h>
+
+
+namespace VISU
+{
+  //----------------------------------------------------------------------------
+  struct TSetModified: vtkTimeStamp
+  {
+    VISU::Prs3d_i* myPrs3d;
+    
+    TSetModified(VISU::Prs3d_i* thePrs3d);
+    
+    ~TSetModified();
+  };
+
+
+  //----------------------------------------------------------------------------
+}
+
+
+#endif // __VISU_PRS3D_UTILS_H__
index e80b960a5149bf26d72f555b9d3acb86b47916df..0c2acd0b1b351ebc22547ea7c9f81cef8b6b3908 100644 (file)
@@ -24,8 +24,9 @@
 //  Author : Alexey PETROV
 //  Module : VISU
 
-#include "VISU_PipeLine.hxx"
 #include "VISU_Prs3d_i.hh"
+#include "VISU_Prs3dUtils.hh"
+#include "VISU_PipeLine.hxx"
 
 #include "VISU_Result_i.hh"
 #include "VISU_Actor.h"
@@ -65,6 +66,8 @@ VISU::Prs3d_i
 ::SameAs(const Prs3d_i* theOrigin)
 {
   if(Prs3d_i* anOrigin = const_cast<Prs3d_i*>(theOrigin)){
+    VISU::TSetModified aModified(this);
+
     GetPipeLine()->SameAs(anOrigin->GetPipeLine());
     anOrigin->GetOffset(myOffset);
   }
@@ -153,12 +156,16 @@ void
 VISU::Prs3d_i
 ::SetCResult(VISU::Result_i* theResult)
 {
-  if(GetCResult() != theResult){
-    if(theResult)
-      SetStudyDocument(theResult->GetStudyDocument());
-    myResult = theResult;
-    myParamsTime.Modified();
-  }
+  if(GetCResult() == theResult)
+    return;
+
+  if(theResult)
+    SetStudyDocument(theResult->GetStudyDocument());
+  
+  VISU::TSetModified aModified(this);
+  
+  myResult = theResult;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -211,10 +218,13 @@ void
 VISU::Prs3d_i
 ::SetMeshName(const char* theMeshName)
 {
-  if(myMeshName != theMeshName){
-    myMeshName = theMeshName;
-    myParamsTime.Modified();
-  }
+  if(myMeshName == theMeshName)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myMeshName = theMeshName;
+  myParamsTime.Modified();
 }
 
 
@@ -243,7 +253,7 @@ VISU::Prs3d_i
 {
   unsigned long int aTime = myParamsTime.GetMTime();
   if(IsPipeLineExists())
-    aTime = std::max(aTime,GetPipeLine()->GetMTime());
+    aTime = std::max(aTime, GetPipeLine()->GetMTime());
   return aTime;
 }
 
index 969772a74f77d7e5064e10c6b7631774ed97a940..5471eef6e92f292d8ab5a49dedd9138598c88d65 100644 (file)
@@ -277,6 +277,11 @@ namespace VISU
     Handle(SALOME_InteractiveObject)
     GetIO();
 
+    //! Used in derived classes to initilize the IO for actors
+    virtual
+    std::string
+    GetActorEntry();
+
   protected:
     /*! 
       Used in Apply method to get know whether it is possible to create presentation
@@ -314,11 +319,6 @@ namespace VISU
     vtkTimeStamp myUpdateTime;
     vtkTimeStamp myParamsTime;
 
-    //! Used in derived classes to initilize the IO for actors
-    virtual
-    std::string
-    GetActorEntry();
-
   private:
     void
     SetResultEntry(const std::string& theResultEntry);
index 12fad523931381e41e151f353758347bde2449c3..d7af2d036035ef2b7dc7048affb2477619f187ee 100644 (file)
@@ -178,6 +178,16 @@ VISU::Result_i
 {}
 
 
+//---------------------------------------------------------------
+VISU::Result_i
+::~Result_i()
+{
+  MESSAGE("Result_i::~Result_i() - this = "<<this);
+  if (GetSourceId() == eRestoredFile) 
+    VISU::RemoveFile(myFileInfo.filePath().latin1());
+}
+
+
 //---------------------------------------------------------------
 void
 VISU::Result_i
@@ -1399,15 +1409,6 @@ VISU::Result_i
                             theRestoringMap);
 }
 
-#include <stdio.h>
-//---------------------------------------------------------------
-VISU::Result_i
-::~Result_i()
-{
-  MESSAGE("Result_i::~Result_i() - this = "<<this);
-  if (GetSourceId() == eRestoredFile) 
-    VISU::RemoveFile(myFileInfo.filePath().latin1());
-}
 
 //=======================================================================
 //function : GetAxisInfo
index 27f611abc89c70598b2beee172b3ab368a928e3a..53ffb8e7e5ce660a533f11866d6a4cbd30d3a5cd 100644 (file)
 //  Module : VISU
 
 #include "VISU_ScalarMapOnDeformedShape_i.hh"
+#include "VISU_Prs3dUtils.hh"
+#include "VISU_Result_i.hh"
+
 #include "VISU_ScalarMapAct.h"
 #include "VISU_ScalarMapOnDeformedShapePL.hxx"
 #include "VISU_Convertor.hxx"
-#include "VISU_Result_i.hh"
 
 #include "SUIT_ResourceMgr.h"
 #include "SALOME_Event.hxx"
@@ -229,6 +231,8 @@ void
 VISU::ScalarMapOnDeformedShape_i
 ::SetScale(CORBA::Double theScale) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ScalarMapOnDeformedShapePL, vtkFloatingPointType>
                   (GetSpecificPL(), &VISU_ScalarMapOnDeformedShapePL::SetScale, theScale));
 }
@@ -331,6 +335,8 @@ VISU::ScalarMapOnDeformedShape_i
   if(!anIsModified)
     return;
 
+  VISU::TSetModified aModified(this);
+
   VISU::TEntity aEntity = VISU::TEntity(theEntity);
   VISU::Result_i::PInput anInput = GetCResult()->GetInput(GetCMeshName(),
                                                          theEntity,
index 3d978644b91f61a99b4d7b641def0f00057ca09a..8a719f63c395c5d7ee6d45eb794fba71f5d550f3 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_ScalarMap_i.hh"
+#include "VISU_Prs3dUtils.hh"
 
 #include "VISU_Result_i.hh"
 
@@ -301,6 +302,8 @@ void
 VISU::ScalarMap_i
 ::SetScaling(VISU::Scaling theScaling)
 {
+  VISU::TSetModified aModified(this);
+  
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ScalarMapPL, int>
                   (GetSpecificPL(), &VISU_ColoredPL::SetScaling, theScaling));
 }
index 2d0ad30e289b3f982a2783c18b3c2bc9905735a5..0d8fe904c1c6a3a15ac04cf119acdd4a336b59f7 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_StreamLines_i.hh"
+#include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
 
 #include "VISU_Actor.h"
@@ -309,15 +310,18 @@ VISU::StreamLines_i
 ::SetSource(VISU::Prs3d_i* thePrs3d)
 {
   mySourceEntry = "";
-  if(thePrs3d){
-    SALOMEDS::SObject_var aSObject = thePrs3d->GetSObject();
-    CORBA::String_var aString = aSObject->GetID();
-    if(mySourceEntry == aString.in())
-      return;
-
-    mySourceEntry = aString.in();
-    myParamsTime.Modified();
-  }
+  if(!thePrs3d)
+    return;
+
+  SALOMEDS::SObject_var aSObject = thePrs3d->GetSObject();
+  CORBA::String_var aString = aSObject->GetID();
+  if(mySourceEntry == aString.in())
+    return;
+  
+  VISU::TSetModified aModified(this);
+  
+  mySourceEntry = aString.in();
+  myParamsTime.Modified();
 }
 
 //---------------------------------------------------------------
@@ -327,8 +331,10 @@ VISU::StreamLines_i
 {
   if(!myStreamLinesPL->GetSource() && mySourceEntry == "") 
     return;
+
   if(myStreamLinesPL->GetSource() == myAppendFilter->GetOutput()) 
     return;
+
   VISU::Prs3d_var aPrs3d = GetSource();
   SetParams(GetIntegrationStep(),
            GetPropagationTime(),
index 65a84d24867b54ed302b4afcde9fc81a660a7fd0..9aca708427cec6a28306828f37fe428cd31f20fc 100644 (file)
@@ -25,6 +25,7 @@
 //  Module : VISU
 
 #include "VISU_Vectors_i.hh"
+#include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
 
 #include "VISU_VectorsAct.h"
@@ -206,6 +207,8 @@ VISU::Vectors_i
   if(VISU::CheckIsSameValue(myLineWidth, theWidth))
     return;
 
+  VISU::TSetModified aModified(this);
+
   myLineWidth = theWidth;
   myParamsTime.Modified();
 }
@@ -224,6 +227,8 @@ void
 VISU::Vectors_i
 ::SetGlyphType(VISU::Vectors::GlyphType theType) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_VectorsPL, VISU_VectorsPL::GlyphType>
                   (GetSpecificPL(), &VISU_VectorsPL::SetGlyphType, VISU_VectorsPL::GlyphType(theType)));
 }
@@ -242,6 +247,8 @@ void
 VISU::Vectors_i
 ::SetGlyphPos(VISU::Vectors::GlyphPos thePos) 
 { 
+  VISU::TSetModified aModified(this);
+
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_VectorsPL, VISU_VectorsPL::GlyphPos>
                   (GetSpecificPL(), &VISU_VectorsPL::SetGlyphPos, VISU_VectorsPL::GlyphPos(thePos)));
 }