]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
To restore previous version
authorapo <apo@opencascade.com>
Fri, 11 May 2007 06:07:01 +0000 (06:07 +0000)
committerapo <apo@opencascade.com>
Fri, 11 May 2007 06:07:01 +0000 (06:07 +0000)
src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.cxx
src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.hxx

index 202d14cf97e7477c64db6f6e80ec13c288d430ad..6a0be83a0c1ccecb4d739a6685d2b4675bc7ac0c 100644 (file)
 #include "VTKViewer_TransformFilter.h"
 #include "VTKViewer_Transform.h"
 
-#include "SALOME_ExtractGeometry.h"
-
-#include <vtkPlane.h>
-#include <vtkImplicitBoolean.h>
-#include <vtkImplicitFunction.h>
-#include <vtkImplicitFunctionCollection.h>
-
 #include <vtkWarpVector.h>
 #include <vtkUnstructuredGrid.h>
 #include <vtkPointDataToCellData.h>
@@ -59,25 +52,20 @@ vtkStandardNewMacro(VISU_ScalarMapOnDeformedShapePL)
  * \li myScalars is vtk shared pointer to vtkUnstructuredGrid - scalars data
 */
 VISU_ScalarMapOnDeformedShapePL
-::VISU_ScalarMapOnDeformedShapePL():
-  myScalarsExtractGeometry(SALOME_ExtractGeometry::New())
+::VISU_ScalarMapOnDeformedShapePL()
 {
-  myCellDataToPointData = VISU_CellDataToPointData::New();
-
   myWarpVector = vtkWarpVector::New();
 
-  myScalarsExtractGeometry->SetInput(myMergeFilter->GetOutput());
-  vtkImplicitBoolean* anImplicitBoolean = vtkImplicitBoolean::New();
-  myScalarsExtractGeometry->SetImplicitFunction(anImplicitBoolean);
-  anImplicitBoolean->SetOperationTypeToIntersection();
-  anImplicitBoolean->Delete();
+  myScalarsMergeFilter = VISU_MergeFilter::New();
+  myScalarsMergeFilter->SetMergingInputs(true);
 
   myScalarsExtractor = VISU_Extractor::New();
 
   myScalarsFieldTransform = VISU_FieldTransform::New();
 
-  myScalarsMergeFilter = VISU_MergeFilter::New();
-  myScalarsMergeFilter->SetMergingInputs(true);
+  myCellDataToPointData = VISU_CellDataToPointData::New();
+
+  myScalars = myMergeFilter->GetOutput();
 }
 
 /*!
@@ -91,8 +79,6 @@ VISU_ScalarMapOnDeformedShapePL
 
   myScalarsMergeFilter->Delete();
   
-  myScalarsExtractGeometry->Delete();
-
   myScalarsExtractor->Delete();
 
   myScalarsFieldTransform->Delete();
@@ -100,77 +86,6 @@ VISU_ScalarMapOnDeformedShapePL
   myCellDataToPointData->Delete();
 }
 
-/*!
- * Copy information about pipline.
- * Copy scale and scalars.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::ShallowCopy(VISU_PipeLine *thePipeLine)
-{
-  VISU_ScalarMapOnDeformedShapePL *aPipeLine = dynamic_cast<VISU_ScalarMapOnDeformedShapePL*>(thePipeLine);
-  if(aPipeLine){
-     SetScale(aPipeLine->GetScale());
-     SetScalars(aPipeLine->GetScalars());
-  }
-  Superclass::ShallowCopy(thePipeLine);
-}
-
-//=======================================================================
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetImplicitFunction(vtkImplicitFunction *theFunction)
-{
-  Superclass::SetImplicitFunction(theFunction);
-
-  myScalarsExtractGeometry->SetImplicitFunction(theFunction);
-} 
-
-
-void
-VISU_ScalarMapOnDeformedShapePL
-::RemoveAllClippingPlanes()
-{
-  Superclass::RemoveAllClippingPlanes();
-
-  if(vtkImplicitBoolean* aBoolean = myScalarsExtractGeometry->GetImplicitBoolean()){
-    vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
-    aFunction->RemoveAllItems();
-    aBoolean->Modified(); // VTK bug
-  }
-}
-
-
-bool 
-VISU_ScalarMapOnDeformedShapePL
-::AddClippingPlane(vtkPlane* thePlane)
-{
-  Superclass::AddClippingPlane(thePlane);
-
-  if (thePlane) {
-    if (vtkImplicitBoolean* aBoolean = myScalarsExtractGeometry->GetImplicitBoolean()) {
-      vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
-      aFunction->AddItem(thePlane);
-
-      // Check, that at least one cell present after clipping.
-      // This check was introduced because of bug IPAL8849.
-      if (GetScalarsClippedInput()->GetNumberOfCells() < 1)
-        return false;
-    }
-  }
-  return true;
-}
-
-
-VISU_PipeLine::TInput* 
-VISU_ScalarMapOnDeformedShapePL
-::GetScalarsClippedInput()
-{
-  if(myScalarsExtractGeometry->GetInput())
-    myScalarsExtractGeometry->Update();
-  return myScalarsExtractGeometry->GetOutput();
-}
-
 //=======================================================================
 void
 VISU_ScalarMapOnDeformedShapePL
@@ -254,29 +169,43 @@ VISU_ScalarMapOnDeformedShapePL
   SetScale(VISU_DeformedShapePL::GetDefaultScale(this));
 }
 
+/*!
+ * Copy information about pipline.
+ * Copy scale and scalars.
+ */
+void
+VISU_ScalarMapOnDeformedShapePL
+::ShallowCopy(VISU_PipeLine *thePipeLine)
+{
+  VISU_ScalarMapOnDeformedShapePL *aPipeLine = dynamic_cast<VISU_ScalarMapOnDeformedShapePL*>(thePipeLine);
+  if(aPipeLine){
+     SetScale(aPipeLine->GetScale());
+     SetScalars(aPipeLine->GetScalars());
+  }
+  Superclass::ShallowCopy(thePipeLine);
+}
+
 /*!
  * Set scalars.
  * Sets vtkDataSet with scalars values to VISU_Extractor filter for scalars extraction.
  */
 void
 VISU_ScalarMapOnDeformedShapePL
-::SetScalars(TInput *theScalars)
+::SetScalars(vtkDataSet *theScalars)
 {
-  myScalarsExtractGeometry->SetInput(theScalars);
+  myScalars = theScalars;
 }
 
 /*!
  * Get pointer to input scalars.
  */
-VISU_PipeLine::TInput* 
+vtkPointSet* 
 VISU_ScalarMapOnDeformedShapePL
 ::GetScalars()
 {
-  vtkDataSet* aDataSet = myScalarsExtractGeometry->GetInput();
-  return dynamic_cast<VISU_PipeLine::TInput*>(aDataSet);
+  return myScalars.GetPointer();
 }
 
-
 /*!
  * Sets scale for deformed shape
  */
index cd53b31f6793cb4bd68c8ef201172e8d600a1ad9..e1f805f300db16c48f79a3403056305ef968c6b9 100644 (file)
@@ -55,19 +55,6 @@ public:
   void
   ShallowCopy(VISU_PipeLine *thePipeLine);
 
-  // Clipping planes
-  virtual
-  void 
-  RemoveAllClippingPlanes();
-
-  virtual
-  bool
-  AddClippingPlane(vtkPlane* thePlane);
-
-  virtual
-  void
-  SetImplicitFunction(vtkImplicitFunction *theFunction);
-
   virtual
   void
   SetScale(vtkFloatingPointType theScale);
@@ -98,10 +85,10 @@ public:
 
   virtual
   void
-  SetScalars(TInput *theScalars);
+  SetScalars(vtkDataSet *theScalars);
 
   virtual
-  TInput* 
+  vtkPointSet* 
   GetScalars();
 
 public:
@@ -133,14 +120,11 @@ protected:
   TInsertCustomPL*
   InsertCustomPL();
 
-  TInput* 
-  GetScalarsClippedInput();
-
   vtkFloatingPointType myScaleFactor;
   vtkWarpVector  *myWarpVector;
   VISU_MergeFilter *myScalarsMergeFilter;
+  vtkSmartPointer<vtkUnstructuredGrid> myScalars;
   VISU_CellDataToPointData* myCellDataToPointData;
-  SALOME_ExtractGeometry* myScalarsExtractGeometry;
   VISU_FieldTransform* myScalarsFieldTransform;
   VISU_Extractor* myScalarsExtractor;
 };