Public Member Functions | Protected Attributes | List of all members
tango_gl::Mesh Class Reference

#include <mesh.h>

Inheritance diagram for tango_gl::Mesh:
Inheritance graph
[legend]

Public Member Functions

bool IsIntersecting (const Segment &segment)
 
 Mesh ()
 
 Mesh (GLenum render_mode)
 
void Render (const glm::mat4 &projection_mat, const glm::mat4 &view_mat) const
 
void SetBoundingBox ()
 
void SetLightDirection (const glm::vec3 &light_direction)
 
void SetShader ()
 
void SetShader (bool is_lighting_on)
 
- Public Member Functions inherited from tango_gl::DrawableObject
void DeleteGlResources ()
 
 DrawableObject ()
 
 DrawableObject (const DrawableObject &other)=delete
 
const DrawableObjectoperator= (const DrawableObject &)=delete
 
void SetAlpha (const float alpha)
 
void SetColor (const Color &color)
 
void SetColor (const float red, const float green, const float blue)
 
void SetShader ()
 
void SetVertices (const std::vector< GLfloat > &vertices)
 
void SetVertices (const std::vector< GLfloat > &vertices, const std::vector< GLushort > &indices)
 
void SetVertices (const std::vector< GLfloat > &vertices, const std::vector< GLfloat > &normals)
 
- Public Member Functions inherited from tango_gl::Transform
const TransformGetParent () const
 
TransformGetParent ()
 
glm::vec3 GetPosition () const
 
glm::quat GetRotation () const
 
glm::vec3 GetScale () const
 
glm::mat4 GetTransformationMatrix () const
 
const Transformoperator= (const Transform &rhs)=delete
 
void SetParent (Transform *transform)
 
void SetPosition (const glm::vec3 &position)
 
void SetRotation (const glm::quat &rotation)
 
void SetScale (const glm::vec3 &scale)
 
void SetTransformationMatrix (const glm::mat4 &transform_mat)
 
 Transform ()
 
 Transform (const Transform &other)=delete
 
void Translate (const glm::vec3 &translation)
 
virtual ~Transform ()
 

Protected Attributes

BoundingBoxbounding_box_
 
bool is_bounding_box_on_
 
bool is_lighting_on_
 
glm::vec3 light_direction_
 
GLuint uniform_light_vec_
 
GLuint uniform_mv_mat_
 
- Protected Attributes inherited from tango_gl::DrawableObject
float alpha_
 
GLuint attrib_normals_
 
GLuint attrib_vertices_
 
float blue_
 
float green_
 
std::vector< GLushort > indices_
 
std::vector< GLfloat > normals_
 
float red_
 
GLenum render_mode_
 
GLuint shader_program_
 
GLuint uniform_color_
 
GLuint uniform_mvp_mat_
 
std::vector< GLfloat > vertices_
 

Detailed Description

Definition at line 25 of file mesh.h.

Constructor & Destructor Documentation

◆ Mesh() [1/2]

tango_gl::Mesh::Mesh ( )

Definition at line 21 of file mesh.cpp.

◆ Mesh() [2/2]

tango_gl::Mesh::Mesh ( GLenum  render_mode)

Definition at line 24 of file mesh.cpp.

Member Function Documentation

◆ IsIntersecting()

bool tango_gl::Mesh::IsIntersecting ( const Segment segment)

Definition at line 75 of file mesh.cpp.

◆ Render()

void tango_gl::Mesh::Render ( const glm::mat4 projection_mat,
const glm::mat4 view_mat 
) const
virtual

Implements tango_gl::DrawableObject.

Definition at line 86 of file mesh.cpp.

◆ SetBoundingBox()

void tango_gl::Mesh::SetBoundingBox ( )

Definition at line 60 of file mesh.cpp.

◆ SetLightDirection()

void tango_gl::Mesh::SetLightDirection ( const glm::vec3 light_direction)

Definition at line 71 of file mesh.cpp.

◆ SetShader() [1/2]

void tango_gl::Mesh::SetShader ( )

Definition at line 28 of file mesh.cpp.

◆ SetShader() [2/2]

void tango_gl::Mesh::SetShader ( bool  is_lighting_on)

Definition at line 36 of file mesh.cpp.

Member Data Documentation

◆ bounding_box_

BoundingBox* tango_gl::Mesh::bounding_box_
protected

Definition at line 37 of file mesh.h.

◆ is_bounding_box_on_

bool tango_gl::Mesh::is_bounding_box_on_
protected

Definition at line 39 of file mesh.h.

◆ is_lighting_on_

bool tango_gl::Mesh::is_lighting_on_
protected

Definition at line 38 of file mesh.h.

◆ light_direction_

glm::vec3 tango_gl::Mesh::light_direction_
protected

Definition at line 40 of file mesh.h.

◆ uniform_light_vec_

GLuint tango_gl::Mesh::uniform_light_vec_
protected

Definition at line 42 of file mesh.h.

◆ uniform_mv_mat_

GLuint tango_gl::Mesh::uniform_mv_mat_
protected

Definition at line 41 of file mesh.h.


The documentation for this class was generated from the following files:


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jan 23 2023 03:39:00