Unravel Engine C++ Reference
Loading...
Searching...
No Matches
capped_cylinder_mesh.hpp
Go to the documentation of this file.
1
#ifndef GENERATOR_CAPPEDCYLINDERMESH_HPP
2
#define GENERATOR_CAPPEDCYLINDERMESH_HPP
3
4
#include "
cylinder_mesh.hpp
"
5
#include "
disk_mesh.hpp
"
6
#include "
flip_mesh.hpp
"
7
#include "
lathe_mesh.hpp
"
8
#include "
line_shape.hpp
"
9
#include "
merge_mesh.hpp
"
10
#include "
rotate_mesh.hpp
"
11
#include "
translate_mesh.hpp
"
12
#include "
uv_flip_mesh.hpp
"
13
14
namespace
generator
15
{
16
17
namespace
detail
18
{
19
20
class
cap_t
21
{
22
private
:
23
using
impl_t
=
translate_mesh_t<disk_mesh_t>
;
24
impl_t
translate_mesh_;
25
26
public
:
27
cap_t
(
double
radius,
double
distance
,
int
slices,
int
rings,
double
start,
double
sweep);
28
29
using
triangles_t
=
typename
impl_t::triangles_t
;
30
31
triangles_t
triangles
() const noexcept
32
{
33
return
translate_mesh_.
triangles
();
34
}
35
36
using
vertices_t
=
typename
impl_t::vertices_t
;
37
38
vertices_t
vertices
() const noexcept
39
{
40
return
translate_mesh_.
vertices
();
41
}
42
};
43
}
// namespace detail
44
47
class
capped_cylinder_mesh_t
48
{
49
private
:
50
using
impl_t
=
merge_mesh_t<cylinder_mesh_t, detail::cap_t, uv_flip_mesh_t<flip_mesh_t<detail::cap_t>
>>;
51
impl_t
merge_mesh_;
52
53
public
:
61
capped_cylinder_mesh_t
(
double
radius = 1.0,
62
double
size
= 1.0,
63
int
slices = 32,
64
int
segments
= 8,
65
int
rings = 4,
66
double
start = 0.0,
67
double
sweep = gml::radians(360.0));
68
69
using
triangles_t
=
typename
impl_t::triangles_t;
70
71
triangles_t
triangles
() const noexcept
72
{
73
return
merge_mesh_.triangles();
74
}
75
76
using
vertices_t
=
typename
impl_t::vertices_t;
77
78
vertices_t
vertices
() const noexcept
79
{
80
return
merge_mesh_.vertices();
81
}
82
};
83
}
// namespace generator
84
85
#endif
generator::capped_cylinder_mesh_t
Definition
capped_cylinder_mesh.hpp:48
generator::capped_cylinder_mesh_t::triangles
triangles_t triangles() const noexcept
Definition
capped_cylinder_mesh.hpp:71
generator::capped_cylinder_mesh_t::vertices
vertices_t vertices() const noexcept
Definition
capped_cylinder_mesh.hpp:78
generator::capped_cylinder_mesh_t::capped_cylinder_mesh_t
capped_cylinder_mesh_t(double radius=1.0, double size=1.0, int slices=32, int segments=8, int rings=4, double start=0.0, double sweep=gml::radians(360.0))
Definition
capped_cylinder_mesh.cpp:11
generator::capped_cylinder_mesh_t::vertices_t
typename impl_t::vertices_t vertices_t
Definition
capped_cylinder_mesh.hpp:76
generator::capped_cylinder_mesh_t::triangles_t
typename impl_t::triangles_t triangles_t
Definition
capped_cylinder_mesh.hpp:69
generator::detail::cap_t
Definition
capped_cylinder_mesh.hpp:21
generator::detail::cap_t::vertices
vertices_t vertices() const noexcept
Definition
capped_cylinder_mesh.hpp:38
generator::detail::cap_t::triangles_t
typename impl_t::triangles_t triangles_t
Definition
capped_cylinder_mesh.hpp:29
generator::detail::cap_t::vertices_t
typename impl_t::vertices_t vertices_t
Definition
capped_cylinder_mesh.hpp:36
generator::detail::cap_t::cap_t
cap_t(double radius, double distance, int slices, int rings, double start, double sweep)
Definition
capped_cylinder_mesh.cpp:6
generator::detail::cap_t::triangles
triangles_t triangles() const noexcept
Definition
capped_cylinder_mesh.hpp:31
generator::merge_mesh_t< cylinder_mesh_t, detail::cap_t, uv_flip_mesh_t< flip_mesh_t< detail::cap_t > > >
generator::translate_mesh_t< disk_mesh_t >
generator::translate_mesh_t::vertices
vertices_t vertices() const noexcept
Definition
translate_mesh.hpp:38
generator::translate_mesh_t< disk_mesh_t >::triangles_t
typename impl_t::triangles_t triangles_t
Definition
translate_mesh.hpp:29
generator::translate_mesh_t< disk_mesh_t >::vertices_t
typename impl_t::vertices_t vertices_t
Definition
translate_mesh.hpp:36
generator::translate_mesh_t::triangles
triangles_t triangles() const noexcept
Definition
translate_mesh.hpp:31
cylinder_mesh.hpp
disk_mesh.hpp
flip_mesh.hpp
lathe_mesh.hpp
line_shape.hpp
merge_mesh.hpp
generator
Definition
any_generator.hpp:7
segments
const segment_list * segments
Definition
text_component.cpp:442
rotate_mesh.hpp
distance
float distance
Definition
script_component.cpp:24
size
Definition
basetypes.hpp:43
translate_mesh.hpp
uv_flip_mesh.hpp
UnravelEngine
UnravelEngine
engine
engine
rendering
generator
capped_cylinder_mesh.hpp
Generated by
1.12.0