Salome HOME
refs #640: correct width for non-georeferenced profile
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_VTKPrsShape.cxx
index 3a841ee33cbc9c67aabb2437ab98256d1321a0a6..52969e5e353aacc4b71db07ffff442ff15dd02ea 100644 (file)
@@ -1,12 +1,8 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
+// Copyright (C) 2014-2015  EDF-R&D
 // 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.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -55,7 +51,7 @@
 
 #include <Precision.hxx>
 
-#include <GEOM_Actor.h>
+#include <HYDROGUI_Actor.h>
 #include <vtkScalarBarActor.h>
 
 #include <QString>
@@ -88,19 +84,18 @@ HYDROGUI_VTKPrsShape::~HYDROGUI_VTKPrsShape()
 //================================================================
 void HYDROGUI_VTKPrsShape::compute()
 {
+  HYDROGUI_VTKPrs::compute();
+
   if ( !getObject().IsNull() )
   {
     buildShape();
 
     if ( !myTopoShape.IsNull() )
     {
-      GEOM_Actor* anActor = GEOM_Actor::New();
+      HYDROGUI_Actor* anActor = getActor<HYDROGUI_Actor>(this);
       anActor->SetShape( myTopoShape, VTK_MIN_DEFLECTION );
       anActor->setDisplayMode( myDisplayMode );
       anActor->setIO( getIO() );
-      AddObject( anActor );
-
-      anActor->Delete();
     }
   }
 }
@@ -191,14 +186,14 @@ void HYDROGUI_VTKPrsShape::buildShape()
       else
       {
         // Generate the filling color for zone
-        QStringList aGeomObjectsNames;
+        QStringList anObjectsNames;
 
-        HYDROData_SequenceOfObjects aRefObjects = aZone->GetGeometryObjects();
+        HYDROData_SequenceOfObjects aRefObjects = aZone->GetObjects();
         HYDROData_SequenceOfObjects::Iterator anIter( aRefObjects );
         for ( ; anIter.More(); anIter.Next() )
         {
-          Handle(HYDROData_Object) aRefbject = 
-            Handle(HYDROData_Object)::DownCast( anIter.Value() );
+          Handle(HYDROData_Entity) aRefbject = 
+            Handle(HYDROData_Entity)::DownCast( anIter.Value() );
           if ( aRefbject.IsNull() )
             continue;
 
@@ -206,7 +201,7 @@ void HYDROGUI_VTKPrsShape::buildShape()
           if ( aRefObjectName.isEmpty() )
             continue;
 
-          aGeomObjectsNames.append( aRefObjectName );
+          anObjectsNames.append( aRefObjectName );
         }
 
         //setFillingColor( HYDROGUI_Tool::GenerateFillingColor( aDocument, aGeomObjectsNames ) );
@@ -301,7 +296,7 @@ void HYDROGUI_VTKPrsShape::setFaces( const TopoDS_Compound& theWires,
   }
 
   myTopoShape = aCompound;
-  myDisplayMode = GEOM_Actor::eShading;
+  //myDisplayMode = GEOM_Actor::eShading;
 }
 
 void HYDROGUI_VTKPrsShape::setFace( const TopoDS_Wire& theWire,
@@ -322,7 +317,7 @@ void HYDROGUI_VTKPrsShape::setFace( const TopoDS_Face& theFace,
                                     const bool         theIsUpdateViewer )
 {
   myTopoShape = theFace;
-  myDisplayMode = GEOM_Actor::eShading;
+  //myDisplayMode = GEOM_Actor::eShading;
 }
 
 void HYDROGUI_VTKPrsShape::setShape( const TopoDS_Shape& theShape,
@@ -330,5 +325,5 @@ void HYDROGUI_VTKPrsShape::setShape( const TopoDS_Shape& theShape,
                                      const bool          theIsUpdateViewer )
 {
   myTopoShape = theShape;
-  myDisplayMode = GEOM_Actor::eShading;
+  //myDisplayMode = GEOM_Actor::eShading;
 }