OpenStructure
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Variables
a
b
c
d
e
f
g
h
l
m
n
o
p
r
s
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Enumerations
a
b
c
d
e
f
h
i
l
m
n
o
p
r
s
t
Enumerator
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
i
m
n
p
r
s
v
w
Enumerations
Enumerator
a
b
c
d
e
f
g
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
c
d
e
g
i
l
m
o
r
s
t
x
Files
File List
Globals
All
_
b
c
d
f
g
i
l
m
o
p
q
r
s
u
v
w
Functions
c
d
f
g
m
q
v
Typedefs
c
i
r
s
u
w
Macros
_
b
c
d
i
l
o
p
s
u
w
Examples
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
build-2.9.2
stage
include
ost
gfx
vertex_array_helper.hh
Go to the documentation of this file.
1
//------------------------------------------------------------------------------
2
// This file is part of the OpenStructure project <www.openstructure.org>
3
//
4
// Copyright (C) 2008-2020 by the OpenStructure authors
5
//
6
// This library is free software; you can redistribute it and/or modify it under
7
// the terms of the GNU Lesser General Public License as published by the Free
8
// Software Foundation; either version 3.0 of the License, or (at your option)
9
// any later version.
10
// This library is distributed in the hope that it will be useful, but WITHOUT
11
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12
// FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
13
// details.
14
//
15
// You should have received a copy of the GNU Lesser General Public License
16
// along with this library; if not, write to the Free Software Foundation, Inc.,
17
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
//------------------------------------------------------------------------------
19
#ifndef OST_GFX_VERTEX_ARRAY_HELPER_HH
20
#define OST_GFX_VERTEX_ARRAY_HELPER_HH
21
22
#include <vector>
23
#include <
ost/geom/geom.hh
>
24
25
namespace
ost
{
namespace
gfx {
26
27
static
const
unsigned
int
VA_SPHERE_MAX_DETAIL
=12;
28
static
const
unsigned
int
VA_ICO_SPHERE_MAX_DETAIL
=4;
29
static
const
unsigned
int
VA_CYL_MAX_DETAIL
=12;
30
31
namespace
detail {
32
33
struct
PrebuildSphereEntry
{
34
std::vector<geom::Vec3>
vlist
;
35
std::vector<unsigned int>
ilist
;
36
};
37
38
PrebuildSphereEntry
&
GetPrebuildSphere
(
unsigned
int
level);
39
40
std::vector<geom::Vec3>
GetPrebuildCyl
(
unsigned
int
level);
41
42
std::vector<geom::Vec3>
GetPrebuildIcoSphere
(
unsigned
int
level);
43
44
}}}
//
45
46
#endif
geom.hh
ost::gfx::detail::GetPrebuildCyl
std::vector< geom::Vec3 > GetPrebuildCyl(unsigned int level)
ost::gfx::detail::GetPrebuildSphere
PrebuildSphereEntry & GetPrebuildSphere(unsigned int level)
ost::gfx::detail::GetPrebuildIcoSphere
std::vector< geom::Vec3 > GetPrebuildIcoSphere(unsigned int level)
ost::gfx::VA_CYL_MAX_DETAIL
static const unsigned int VA_CYL_MAX_DETAIL
Definition:
vertex_array_helper.hh:29
ost::gfx::VA_SPHERE_MAX_DETAIL
static const unsigned int VA_SPHERE_MAX_DETAIL
Definition:
vertex_array_helper.hh:27
ost::gfx::VA_ICO_SPHERE_MAX_DETAIL
static const unsigned int VA_ICO_SPHERE_MAX_DETAIL
Definition:
vertex_array_helper.hh:28
ost
Definition:
base.dox:1
ost::gfx::detail::PrebuildSphereEntry
Definition:
vertex_array_helper.hh:33
ost::gfx::detail::PrebuildSphereEntry::ilist
std::vector< unsigned int > ilist
Definition:
vertex_array_helper.hh:35
ost::gfx::detail::PrebuildSphereEntry::vlist
std::vector< geom::Vec3 > vlist
Definition:
vertex_array_helper.hh:34
Generated by
1.9.1