SLProject  4.2.000
A platform independent 3D computer graphics framework for desktop OS, Android, iOS and online in web browsers
SLHorizonNode.h
Go to the documentation of this file.
1 /**
2  * \file SLHorizonNode.h
3  * \authors Michael Göttlicher
4  * \date November 2020
5  * \authors Michael Göttlicher, Marcus Hudritsch
6  * \copyright http://opensource.org/licenses/GPL-3.0
7  * \remarks Please use clangformat to format the code. See more code style on
8  * https://github.com/cpvrlab/SLProject4/wiki/SLProject-Coding-Style
9 */
10 
11 #ifndef SL_HORIZON_NODE_H
12 #define SL_HORIZON_NODE_H
13 
14 #include <SLNode.h>
15 #include <SLTexFont.h>
16 #include <SLDeviceRotation.h>
17 #include <SLPolyline.h>
18 #include <SLGLProgramGeneric.h>
19 #include <SLMaterial.h>
20 
21 //-----------------------------------------------------------------------------
22 class SLHorizonNode : public SLNode
23 {
24 public:
26  SLDeviceRotation* devRot,
27  SLTexFont* font,
28  SLstring shaderDir,
29  int scrW,
30  int scrH);
32 
33  void doUpdate() override;
34 
35 private:
37  SLTexFont* _font = nullptr;
39 
40  SLGLProgram* _prog = nullptr;
41  SLMaterial* _mat = nullptr;
42  SLPolyline* _line = nullptr;
43  SLNode* _horizonNode = nullptr;
44  SLNode* _textNode = nullptr;
45 
47 };
48 //-----------------------------------------------------------------------------
49 #endif
string SLstring
Definition: SL.h:158
Mobile device rotation class declaration.
Encapsulation of a mobile device rotation set by the device's IMU sensor.
Encapsulation of an OpenGL shader program object.
Definition: SLGLProgram.h:56
SLGLProgram * _prog
Definition: SLHorizonNode.h:40
SLTexFont * _font
Definition: SLHorizonNode.h:37
void doUpdate() override
SLNode * _horizonNode
Definition: SLHorizonNode.h:43
SLHorizonNode(SLstring name, SLDeviceRotation *devRot, SLTexFont *font, SLstring shaderDir, int scrW, int scrH)
Construct a new SLHorizonNode::SLHorizonNode object.
SLstring _shaderDir
Definition: SLHorizonNode.h:38
SLPolyline * _line
Definition: SLHorizonNode.h:42
SLDeviceRotation * _devRot
Definition: SLHorizonNode.h:36
SLMaterial * _mat
Definition: SLHorizonNode.h:41
SLNode * _textNode
Definition: SLHorizonNode.h:44
Defines a standard CG material with textures and a shader program.
Definition: SLMaterial.h:56
SLNode represents a node in a hierarchical scene graph.
Definition: SLNode.h:147
const SLstring & name() const
Definition: SLObject.h:38
SLPolyline creates a polyline object.
Definition: SLPolyline.h:23
Texture Font class inherits SLGLTexture for alpha blended font rendering.
Definition: SLTexFont.h:40