1 // Copyright (C) 2007-2008 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
22 // VISU OBJECT : interactive object for VISU entities implementation
23 // File : VISU_PrsObject_i.hxx
24 // Author : Alexey PETROV
27 #ifndef VISU_ScalarMap_i_HeaderFile
28 #define VISU_ScalarMap_i_HeaderFile
30 #include "VISU_ColoredPrs3d_i.hh"
35 class VISU_ScalarMapPL;
39 //============================================================================
40 class VISU_I_EXPORT ScalarMap_i : public virtual POA_VISU::ScalarMap,
41 public virtual ColoredPrs3d_i
43 static int myNbPresent;
44 ScalarMap_i(const ScalarMap_i&);
47 //----------------------------------------------------------------------------
48 typedef ColoredPrs3d_i TSuperClass;
49 typedef VISU::ScalarMap TInterface;
52 ScalarMap_i(EPublishInStudyMode thePublishInStudyModep);
61 return VISU::TSCALARMAP;
64 //----------------------------------------------------------------------------
65 //! Gets memory size actually used by the presentation (Mb).
70 //----------------------------------------------------------------------------
77 SetScaling(VISU::Scaling theScaling);
79 //----------------------------------------------------------------------------
82 SetLinkColor(const SALOMEDS::Color& theColor);
88 //----------------------------------------------------------------------------
95 SetGaussMetric(VISU::GaussMetric theGaussMetric);
97 //----------------------------------------------------------------------------
98 //! Sets initial source geometry
103 //! Add geometry of mesh as group. \retval the id of added group.
106 AddMeshOnGroup(const char* theGroupName);
108 //! Removes all geometries.
113 //----------------------------------------------------------------------------
115 GetSpecificPL() const
117 return myScalarMapPL;
120 virtual CORBA::Boolean IsBarVisible() { return myShowBar; }
122 virtual void SetBarVisible(CORBA::Boolean theVisible);
125 //! Redefines VISU_ColoredPrs3d_i::DoSetInput
128 DoSetInput(bool theIsInitilizePipe, bool theReInit);
130 //! Redefines VISU_ColoredPrs3d_i::CreatePipeLine
133 CreatePipeLine(VISU_PipeLine* thePipeLine);
135 //! Redefines VISU_ColoredPrs3d_i::CheckIsPossible
142 Checks staticaly, whether it is possible to create presentation
143 with the given basic parameters or not.
147 IsPossible(Result_i* theResult,
148 const std::string& theMeshName,
149 VISU::Entity theEntity,
150 const std::string& theFieldName,
151 CORBA::Long theTimeStampNumber,
152 bool theIsMemoryCheck);
154 //! Redefines VISU_ColoredPrs3d_i::Create
157 Create(const std::string& theMeshName,
158 VISU::Entity theEntity,
159 const std::string& theFieldName,
160 CORBA::Long theTimeStampNumber);
164 ToStream(std::ostringstream& theStr);
166 static const std::string myComment;
185 Restore(SALOMEDS::SObject_ptr theSObject,
186 const Storable::TRestoringMap& theMap);
190 SameAs(const Prs3d_i* theOrigin);
198 CreateActor(bool toSupressShrinking);
202 UpdateActor(VISU_ActorBase* theActor);
206 GetComponentMin(vtkIdType theCompID);
210 GetComponentMax(vtkIdType theCompID);
213 VISU_ScalarMapPL* myScalarMapPL;
214 SALOMEDS::Color myLinkColor;