Version: 9.15.0
SVTK_Actor.h
Go to the documentation of this file.
1 // Copyright (C) 2007-2025 CEA, EDF, OPEN CASCADE
2 //
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 //
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, or (at your option) any later version.
10 //
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.
15 //
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
19 //
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 //
22 
23 #ifndef SVTK_ACTOR_H
24 #define SVTK_ACTOR_H
25 
26 #include "SVTK_Selector.h"
27 #include <TColStd_IndexedMapOfInteger.hxx>
28 
29 class vtkRenderer;
30 class vtkShrinkFilter;
31 class vtkDataSetMapper;
32 class vtkUnstructuredGrid;
33 
34 #include "SVTK.h"
35 #include "SVTK_DeviceActor.h"
36 #include "SVTK_Hash.h"
37 #include <vtkSmartPointer.h>
38 
39 class SALOME_Actor;
40 
41 #ifdef WIN32
42 #pragma warning ( disable:4251 )
43 #endif
44 
47 {
48 public:
49  static SVTK_Actor* New();
50 
52 
53 
54  virtual void
55  Initialize();
56 
58  void
59  SetSource(vtkUnstructuredGrid* theUnstructuredGrid);
60 
62  vtkUnstructuredGrid*
63  GetSource();
64 
65  virtual void
66  AddToRender(vtkRenderer* theRenderer);
67 
68  virtual void
69  RemoveFromRender(vtkRenderer* theRenderer);
70 
71 
73  virtual void
74  MapCells(SALOME_Actor* theMapActor,
75  const SVTK_TIndexedMapOfVtkId& theMapIndex);
76 
78  virtual void
79  MapPoints(SALOME_Actor* theMapActor,
80  const SVTK_TIndexedMapOfVtkId& theMapIndex);
81 
83  virtual void
84  MapEdge(SALOME_Actor* theMapActor,
85  const SVTK_TIndexedMapOfVtkId& theMapIndex);
86 
88  virtual void
89  MapEdge(SALOME_Actor* theMapActor,
90  const SVTK_IndexedMapOfVtkIds& theMapCompositeIndex);
91 
92 
94  GetMapIndex() const;
95 
97  GetMapCompositeIndex() const;
98 
99  protected:
102 
103  vtkSmartPointer<vtkUnstructuredGrid> myUnstructuredGrid;
104 
106  virtual
107  ~SVTK_Actor();
108 };
109 
110 #ifdef WIN32
111 #pragma warning ( default:4251 )
112 #endif
113 
114 #endif
#define SVTK_EXPORT
Definition: SVTK.h:37
NCollection_IndexedMap< SVTK_ListOfVtk, SVTK_vtkHasher > SVTK_IndexedMapOfVtkIds
Definition: SVTK_Hash.h:150
NCollection_IndexedMap< vtkIdType, svtkIdHasher > SVTK_TIndexedMapOfVtkId
Definition: SVTK_Hash.h:153
The class is a basic one for all SALOME VTK presentation.
Definition: SALOME_Actor.h:73
This class used for internal SVTK package purpose (highlight and prehighlight)
Definition: SVTK_Actor.h:47
SVTK_IndexedMapOfVtkIds myMapCompositeIndex
Definition: SVTK_Actor.h:101
vtkSmartPointer< vtkUnstructuredGrid > myUnstructuredGrid
Definition: SVTK_Actor.h:103
static SVTK_Actor * New()
vtkTypeMacro(SVTK_Actor, SVTK_DeviceActor) virtual void Initialize()
Initialiaze the instance completely.
SVTK_TIndexedMapOfVtkId myMapIndex
Definition: SVTK_Actor.h:100
Definition: SVTK_DeviceActor.h:57