vtkPVLODActor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkPVLODActor.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
28 #ifndef vtkPVLODActor_h
29 #define vtkPVLODActor_h
30 
31 #include "vtkActor.h"
32 #include "vtkRemotingViewsModule.h" // needed for export macro
33 
34 class vtkMapper;
36 
38 {
39 public:
40  vtkTypeMacro(vtkPVLODActor, vtkActor);
41  void PrintSelf(ostream& os, vtkIndent indent) override;
42 
43  static vtkPVLODActor* New();
44 
49  void Render(vtkRenderer*, vtkMapper*) override;
50 
55  int RenderOpaqueGeometry(vtkViewport* viewport) override;
56 
62  void ReleaseGraphicsResources(vtkWindow*) override;
63 
65 
68  virtual void SetLODMapper(vtkMapper*);
69  vtkGetObjectMacro(LODMapper, vtkMapper);
71 
76  vtkMapper* GetMapper() override { return this->SelectMapper(); }
77 
81  void Modified() override;
82 
86  void ShallowCopy(vtkProp* prop) override;
87 
91  double* GetBounds() override;
92 
98  void SetEnableLOD(int val) { this->EnableLOD = val; }
99  vtkGetMacro(EnableLOD, int);
100 
102 
106  virtual void SetEnableScaling(int v);
107  virtual void SetScalingArrayName(const char*);
108  virtual void SetScalingFunction(vtkPiecewiseFunction* pwf);
110 
111 protected:
112  vtkPVLODActor();
113  ~vtkPVLODActor() override;
116 
117  vtkMapper* SelectMapper();
118 
120 
121 private:
122  vtkPVLODActor(const vtkPVLODActor&) = delete;
123  void operator=(const vtkPVLODActor&) = delete;
124 };
125 
126 #endif
virtual void Render(vtkRenderer *, vtkMapper *)
#define VTKREMOTINGVIEWS_EXPORT
void SetEnableLOD(int val)
When set, LODMapper, if present it used, otherwise the regular mapper is used.
Definition: vtkPVLODActor.h:98
static vtkActor * New()
vtkActor * Device
vtkMapper * GetMapper() override
This is a bit of a hack.
Definition: vtkPVLODActor.h:76
void PrintSelf(ostream &os, vtkIndent indent)
virtual void Modified()
double * GetBounds()
virtual int RenderOpaqueGeometry(vtkViewport *viewport)
an actor that supports multiple levels of detail
Definition: vtkPVLODActor.h:37
void ReleaseGraphicsResources(vtkWindow *)
void operator=(const vtkObjectBase &)
void ShallowCopy(vtkProp *prop)
vtkMapper * LODMapper