1 // Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 // VISU OBJECT : interactive object for VISU entities implementation
24 // File : VISU_PrsObject_i.hxx
25 // Author : Alexey PETROV
28 #ifndef VISU_ScalarMap_i_HeaderFile
29 #define VISU_ScalarMap_i_HeaderFile
31 #include "VISU_ColoredPrs3d_i.hh"
36 class VISU_ScalarMapPL;
40 //============================================================================
41 class VISU_I_EXPORT ScalarMap_i : public virtual POA_VISU::ScalarMap,
42 public virtual ColoredPrs3d_i
44 static int myNbPresent;
45 ScalarMap_i(const ScalarMap_i&);
48 //----------------------------------------------------------------------------
49 typedef ColoredPrs3d_i TSuperClass;
50 typedef VISU::ScalarMap TInterface;
53 ScalarMap_i(EPublishInStudyMode thePublishInStudyModep);
62 return VISU::TSCALARMAP;
65 //----------------------------------------------------------------------------
66 //! Gets memory size actually used by the presentation (Mb).
71 //----------------------------------------------------------------------------
78 SetScaling(VISU::Scaling theScaling);
80 //----------------------------------------------------------------------------
83 SetLinkColor(const SALOMEDS::Color& theColor);
89 //----------------------------------------------------------------------------
96 SetGaussMetric(VISU::GaussMetric theGaussMetric);
98 //----------------------------------------------------------------------------
99 //! Sets initial source geometry
104 //! Add geometry of mesh as group. \retval the id of added group.
107 AddMeshOnGroup(const char* theGroupName);
109 //! Removes all geometries.
114 //----------------------------------------------------------------------------
116 GetSpecificPL() const
118 return myScalarMapPL;
121 virtual CORBA::Boolean IsBarVisible() { return myShowBar; }
123 virtual void SetBarVisible(CORBA::Boolean theVisible);
126 //! Redefines VISU_ColoredPrs3d_i::DoSetInput
129 DoSetInput(bool theIsInitilizePipe, bool theReInit);
131 //! Redefines VISU_ColoredPrs3d_i::CreatePipeLine
134 CreatePipeLine(VISU_PipeLine* thePipeLine);
136 //! Redefines VISU_ColoredPrs3d_i::CheckIsPossible
143 Checks staticaly, whether it is possible to create presentation
144 with the given basic parameters or not.
148 IsPossible(Result_i* theResult,
149 const std::string& theMeshName,
150 VISU::Entity theEntity,
151 const std::string& theFieldName,
152 CORBA::Long theTimeStampNumber,
153 bool theIsMemoryCheck);
155 //! Redefines VISU_ColoredPrs3d_i::Create
158 Create(const std::string& theMeshName,
159 VISU::Entity theEntity,
160 const std::string& theFieldName,
161 CORBA::Long theTimeStampNumber);
165 ToStream(std::ostringstream& theStr);
167 static const std::string myComment;
186 Restore(SALOMEDS::SObject_ptr theSObject,
187 const Storable::TRestoringMap& theMap);
191 SameAs(const Prs3d_i* theOrigin);
199 CreateActor(bool toSupressShrinking);
203 UpdateActor(VISU_ActorBase* theActor);
207 GetComponentMin(vtkIdType theCompID);
211 GetComponentMax(vtkIdType theCompID);
214 VISU_ScalarMapPL* myScalarMapPL;
215 SALOMEDS::Color myLinkColor;