]> SALOME platform Git repositories - modules/geom.git/blob - src/OBJECT/GEOM_AssemblyBuilder.h
Salome HOME
NRI : First integration.
[modules/geom.git] / src / OBJECT / GEOM_AssemblyBuilder.h
1 //  File      : GEOM_AssemblyBuilder.h
2 //  Created   : Wed Feb 20 17:24:59 2002
3 //  Author    : Christophe ATTANASIO
4 //  Project   : SALOME
5 //  Module    : GEOM
6 //  Copyright : Open CASCADE 2002
7 //  $Header$
8
9 // VTK
10 #include <vtkAssembly.h>
11 #include <vtkPropAssembly.h>
12 #include <vtkActorCollection.h>
13
14 // Open CASCADE Inlcudes
15 #include <TopoDS.hxx>
16 #include <TopoDS_Shape.hxx>
17
18 class GEOM_AssemblyBuilder {
19
20  private:
21
22   static void InitProperties(vtkProperty* IsoProp,
23                              vtkProperty* FaceProp,
24                              vtkProperty* EdgeFProp,
25                              vtkProperty* EdgeSProp,
26                              vtkProperty* EdgeIProp,
27                              vtkProperty* VertexProp,
28                              vtkProperty* IsoPVProp,
29                              vtkProperty* EdgePVProp,
30                              vtkProperty* VertePVProp);
31
32   static void MeshShape(const TopoDS_Shape myShape,
33                         Standard_Real deflection,
34                         Standard_Boolean forced);
35
36
37  public:
38
39
40   //------------------------------------------------------------------
41   // WARNING! Poor graphic performance :-(  use BuildActors instead
42   //------------------------------------------------------------------
43  
44   static vtkAssembly* BuildAssembly(const TopoDS_Shape& myShape,
45                                     Standard_Real deflection,
46                                     Standard_Integer amode,
47                                     Standard_Boolean forced);
48
49   //------------------------------------------------------------------
50   // Good performance
51   //------------------------------------------------------------------
52
53   static vtkActorCollection* BuildActors(const TopoDS_Shape& myShape,
54                                          Standard_Real deflection,
55                                          Standard_Integer amode,
56                                          Standard_Boolean forced);
57
58
59   //------------------------------------------------------------------
60   // Change mode - Not implemented !!
61   //------------------------------------------------------------------
62
63   static void SwitchDisplayMode(vtkAssembly* mySALOMEAssembly);
64   static void SwitchDisplayMode(vtkActorCollection* mySALOMEActors);
65
66   //------------------------------------------------------------------
67   // Erase/Display - Not implemented !!
68   //------------------------------------------------------------------
69
70   static void DisplayErase(vtkAssembly* mySALOMEAssembly);
71   static void DisplayErase(vtkActorCollection* mySALOMEActors);
72
73
74 };