app
android
jni
tango-gl
include
tango-gl
mesh.h
Go to the documentation of this file.
1
/*
2
* Copyright 2014 Google Inc. All Rights Reserved.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#ifndef TANGO_GL_MESH_H_
18
#define TANGO_GL_MESH_H_
19
20
#include "
tango-gl/bounding_box.h
"
21
#include "
tango-gl/drawable_object.h
"
22
#include "
tango-gl/segment.h
"
23
24
namespace
tango_gl
{
25
class
Mesh
:
public
DrawableObject
{
26
public
:
27
Mesh
();
28
Mesh
(GLenum render_mode);
29
void
SetShader
();
30
void
SetShader
(
bool
is_lighting_on);
31
void
SetBoundingBox
();
32
void
SetLightDirection
(
const
glm::vec3
& light_direction);
33
void
Render
(
const
glm::mat4
& projection_mat,
const
glm::mat4
& view_mat)
const
;
34
bool
IsIntersecting
(
const
Segment
&
segment
);
35
36
protected
:
37
BoundingBox
*
bounding_box_
;
38
bool
is_lighting_on_
;
39
bool
is_bounding_box_on_
;
40
glm::vec3
light_direction_
;
41
GLuint
uniform_mv_mat_
;
42
GLuint
uniform_light_vec_
;
43
};
44
}
// namespace tango_gl
45
#endif // TANGO_GL_MESH_H_
tango_gl::Mesh::is_bounding_box_on_
bool is_bounding_box_on_
Definition:
mesh.h:39
tango_gl::Mesh::is_lighting_on_
bool is_lighting_on_
Definition:
mesh.h:38
tango_gl::Mesh::uniform_light_vec_
GLuint uniform_light_vec_
Definition:
mesh.h:42
glm::detail::tvec3
Definition:
type_mat.hpp:37
glm::detail::tmat4x4
Definition:
type_mat.hpp:47
bounding_box.h
tango_gl::Segment
Definition:
segment.h:23
GLuint
unsigned int GLuint
Definition:
dummy.cpp:78
drawable_object.h
tango_gl::DrawableObject
Definition:
drawable_object.h:27
tango_gl::Mesh::SetBoundingBox
void SetBoundingBox()
Definition:
mesh.cpp:60
tango_gl::Mesh::Mesh
Mesh()
Definition:
mesh.cpp:21
segment
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE FixedSegmentReturnType< N >::Type segment(Index start, Index n=N)
tango_gl::Mesh::bounding_box_
BoundingBox * bounding_box_
Definition:
mesh.h:37
tango_gl::BoundingBox
Definition:
bounding_box.h:26
tango_gl::Mesh::SetLightDirection
void SetLightDirection(const glm::vec3 &light_direction)
Definition:
mesh.cpp:71
tango_gl::Mesh::SetShader
void SetShader()
Definition:
mesh.cpp:28
tango_gl
Definition:
axis.cpp:20
tango_gl::Mesh
Definition:
mesh.h:25
segment.h
tango_gl::Mesh::Render
void Render(const glm::mat4 &projection_mat, const glm::mat4 &view_mat) const
Definition:
mesh.cpp:86
tango_gl::Mesh::light_direction_
glm::vec3 light_direction_
Definition:
mesh.h:40
tango_gl::Mesh::IsIntersecting
bool IsIntersecting(const Segment &segment)
Definition:
mesh.cpp:75
tango_gl::Mesh::uniform_mv_mat_
GLuint uniform_mv_mat_
Definition:
mesh.h:41
rtabmap
Author(s): Mathieu Labbe
autogenerated on Thu Jul 25 2024 02:50:13