Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Member Functions | Public Attributes
mrpt::opengl::CLight Struct Reference

Detailed Description

Each of the possible lights of a 3D scene.

See also
COpenGLViewport IMPORTANT NOTE: It's the user responsibility to define unique light IDs for each light. The OpenGL standard only assures that valid IDs are 0,1,..7 Refer to standard OpenGL literature and tutorials for the meaning of each field.

Definition at line 24 of file CLight.h.

#include <mrpt/opengl/CLight.h>

Public Member Functions

 CLight ()
 Default constructor, sets default values. More...
 
void setPosition (float x, float y, float z, float w)
 
void setDirection (float dx, float dy, float dz)
 
void writeToStream (mrpt::serialization::CArchive &out) const
 
void readFromStream (mrpt::serialization::CArchive &in)
 
void sendToOpenGL () const
 Define the light in the current OpenGL rendering context (users normally don't need to call this explicitly, it's done from within a. More...
 

Public Attributes

uint8_t light_ID
 OpenGL ID (typical range: 0-7) More...
 
float color_ambient [4]
 
float color_diffuse [4]
 
float color_specular [4]
 
float position [4]
 [x,y,z,w]: w=0 means directional light, w=1 means a light at a real 3D position. More...
 
float direction [3]
 [x,y,z] More...
 
float constant_attenuation
 
float linear_attenuation
 
float quadratic_attenuation
 
float spot_exponent
 
float spot_cutoff
 

Constructor & Destructor Documentation

◆ CLight()

CLight::CLight ( )

Default constructor, sets default values.

Definition at line 22 of file CLight.cpp.

References color_ambient, color_diffuse, color_specular, setDirection(), and setPosition().

Member Function Documentation

◆ readFromStream()

void CLight::readFromStream ( mrpt::serialization::CArchive in)

◆ sendToOpenGL()

void CLight::sendToOpenGL ( ) const

◆ setDirection()

void CLight::setDirection ( float  dx,
float  dy,
float  dz 
)

Definition at line 113 of file CLight.cpp.

References direction.

Referenced by CLight().

◆ setPosition()

void CLight::setPosition ( float  x,
float  y,
float  z,
float  w 
)

Definition at line 106 of file CLight.cpp.

References position.

Referenced by CLight().

◆ writeToStream()

void CLight::writeToStream ( mrpt::serialization::CArchive out) const

Member Data Documentation

◆ color_ambient

float mrpt::opengl::CLight::color_ambient[4]

Definition at line 35 of file CLight.h.

Referenced by CLight(), readFromStream(), sendToOpenGL(), and writeToStream().

◆ color_diffuse

float mrpt::opengl::CLight::color_diffuse[4]

Definition at line 36 of file CLight.h.

Referenced by CLight(), readFromStream(), sendToOpenGL(), and writeToStream().

◆ color_specular

float mrpt::opengl::CLight::color_specular[4]

Definition at line 37 of file CLight.h.

Referenced by CLight(), readFromStream(), sendToOpenGL(), and writeToStream().

◆ constant_attenuation

float mrpt::opengl::CLight::constant_attenuation

Definition at line 44 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), and writeToStream().

◆ direction

float mrpt::opengl::CLight::direction[3]

[x,y,z]

Definition at line 43 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), setDirection(), and writeToStream().

◆ light_ID

uint8_t mrpt::opengl::CLight::light_ID

OpenGL ID (typical range: 0-7)

Definition at line 33 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), and writeToStream().

◆ linear_attenuation

float mrpt::opengl::CLight::linear_attenuation

Definition at line 45 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), and writeToStream().

◆ position

float mrpt::opengl::CLight::position[4]

[x,y,z,w]: w=0 means directional light, w=1 means a light at a real 3D position.

Definition at line 41 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), setPosition(), and writeToStream().

◆ quadratic_attenuation

float mrpt::opengl::CLight::quadratic_attenuation

Definition at line 46 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), and writeToStream().

◆ spot_cutoff

float mrpt::opengl::CLight::spot_cutoff

Definition at line 48 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), and writeToStream().

◆ spot_exponent

float mrpt::opengl::CLight::spot_exponent

Definition at line 47 of file CLight.h.

Referenced by readFromStream(), sendToOpenGL(), and writeToStream().




Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST