MeVisLab Toolbox Reference
SoShadowMaterial.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 /*
4  *
5  _______________________________________________________________________
6  ____________ W W W . A W A K E I D E A S . C O M ______________
7  |
8  |
9  | Description:
10  | ...
11  |
12  | Author(s) : Felix Ritter
13  |
14  ____________ W W W . A W A K E I D E A S . C O M ______________
15  _______________________________________________________________________
16  */
17 
18 #ifndef _SoMaterialExt_H
19 #define _SoMaterialExt_H
20 
21 #include "SoShadowSystem.h"
22 
23 class SoColorPacker;
24 class SoAction;
25 class SoGLRenderAction;
26 class SoCallbackAction;
27 
29 
30 class SOSHADOW_CLASS_SPEC SoShadowMaterial : public SoMaterial
31 {
32  typedef SoMaterial inherited;
33 
34  SO_NODE_HEADER(SoShadowMaterial);
35 
36  private:
37  SoColorPacker *_shadowColorPacker;
38 
39  protected:
40  virtual ~SoShadowMaterial();
41 
42  public:
44  SHADOW = 0x01,
45  NONSHADOW = 0x02,
46  ALL = 0xff
47  };
48 
49  SoSFEnum overrideRenderPass;
50  SoMFColor shadowColor;
51  SoSFBool useShadowColor;
52  SoSFVec2f shadowOffset;
53 
55 
56  SoEXTENDER public:
57  void doAction(SoAction *action) override;
58  void GLRender(SoGLRenderAction *action) override;
59  void callback(SoCallbackAction *action) override;
60 
61  SoINTERNAL public:
62  static void initClass();
63 };
64 
66 
67 #endif // _SoMaterialExt_H
#define __MEVIS_IV_END_NAMESPACE
Definition: OIVConfig.h:40
#define __MEVIS_IV_BEGIN_NAMESPACE
Definition: OIVConfig.h:39
#define SOSHADOW_CLASS_SPEC
Define a class export specifier needed to make the class exportable in dll's.
SoMFColor shadowColor
Default is (0.65, 0.62, 0.51)
SoSFVec2f shadowOffset
Ignored by default (factor, units); see glPolygonOffset()
void doAction(SoAction *action) override
void callback(SoCallbackAction *action) override
void GLRender(SoGLRenderAction *action) override
static void initClass()
SoSFEnum overrideRenderPass
Default is (SHADOW)
virtual ~SoShadowMaterial()
SoSFBool useShadowColor
Default is TRUE (shadow color differs from model color)