VTK
vtkLightActor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkLightActor.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm 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 =========================================================================*/
39 #ifndef vtkLightActor_h
40 #define vtkLightActor_h
41 
42 #include "vtkRenderingCoreModule.h" // For export macro
43 #include "vtkProp3D.h"
44 
45 class vtkLight;
46 class vtkConeSource;
47 class vtkPolyDataMapper;
48 class vtkActor;
49 class vtkCamera;
50 class vtkCameraActor;
51 class vtkBoundingBox;
52 
54 {
55 public:
56  static vtkLightActor *New();
57  vtkTypeMacro(vtkLightActor, vtkProp3D);
58  void PrintSelf(ostream& os, vtkIndent indent);
59 
61 
62  void SetLight(vtkLight *light);
63  vtkGetObjectMacro(Light, vtkLight);
65 
67 
70  void SetClippingRange(double dNear, double dFar);
71  void SetClippingRange(const double a[2]);
72  vtkGetVector2Macro(ClippingRange, double);
74 
76  virtual int RenderOpaqueGeometry(vtkViewport *viewport);
77 
79  virtual int HasTranslucentPolygonalGeometry();
80 
85 
87  double *GetBounds();
88 
90  unsigned long int GetMTime();
91 
92 protected:
93  vtkLightActor();
94  ~vtkLightActor();
95 
96  void UpdateViewProps();
97 
99  double ClippingRange[2];
100 
104 
107 
109 
110 private:
111  vtkLightActor(const vtkLightActor&); // Not implemented.
112  void operator=(const vtkLightActor&); // Not implemented.
113 };
114 
115 #endif
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:50
vtkCameraActor * FrustumActor
abstract specification for Viewports
Definition: vtkViewport.h:46
virtual int RenderOpaqueGeometry(vtkViewport *)
Definition: vtkProp.h:198
virtual int HasTranslucentPolygonalGeometry()
Definition: vtkProp.h:262
vtkConeSource * ConeSource
vtkLight * Light
Definition: vtkLightActor.h:98
generate polygonal cone
Definition: vtkConeSource.h:43
represents an 3D object for placement in a rendered scene
Definition: vtkProp3D.h:42
a frustum to represent a camera.
vtkBoundingBox * BoundingBox
virtual void ReleaseGraphicsResources(vtkWindow *)
Definition: vtkProp.h:270
window superclass for vtkRenderWindow
Definition: vtkWindow.h:36
a simple class to control print indentation
Definition: vtkIndent.h:38
void PrintSelf(ostream &os, vtkIndent indent)
a virtual camera for 3D rendering
Definition: vtkCamera.h:48
a virtual light for 3D rendering
Definition: vtkLight.h:60
a cone and a frustum to represent a spotlight.
Definition: vtkLightActor.h:53
vtkActor * ConeActor
vtkPolyDataMapper * ConeMapper
map vtkPolyData to graphics primitives
vtkCamera * CameraLight
#define VTKRENDERINGCORE_EXPORT
virtual double * GetBounds()=0
static vtkObject * New()
unsigned long int GetMTime()
Fast Simple Class for dealing with 3D bounds.