NVIDIA Iray API
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
isubdivision_surface.h
Go to the documentation of this file.
1
//*****************************************************************************
2
// Copyright 1986, 2014 NVIDIA Corporation. All rights reserved.
3
//*****************************************************************************
6
//*****************************************************************************
7
8
#ifndef MI_NEURAYLIB_ISUBDIVISION_SURFACE_H
9
#define MI_NEURAYLIB_ISUBDIVISION_SURFACE_H
10
11
#include <
mi/neuraylib/ipolygon_mesh.h
>
12
13
namespace
mi {
14
15
class
IArray;
16
21
enum
Vertex_feature
{
28
SMOOTH_VERTEX
= 0,
29
CORNER_VERTEX
= 1,
30
VERTEX_FEATURE_FORCE_32_BIT = 0xffffffffU
31
};
32
33
mi_static_assert
(
sizeof
(
Vertex_feature
) ==
sizeof
(
Uint32
));
34
54
class
ISubdivision_surface
:
55
public
base::Interface_declare
<0x6a65666a,0x849d,0x4081,0xaa,0x32,0xb3,0xa1,0xeb,0xa0,0x6f,0xe2,
56
IPolygon_mesh>
57
{
58
public
:
60
61
63
virtual
Uint32
triangles_size
()
const
= 0;
64
71
virtual
Uint32
triangles_capacity
()
const
= 0;
72
79
virtual
void
reserve_triangles
(
Uint32
n) = 0;
80
82
virtual
Uint32
quads_size
()
const
= 0;
83
90
virtual
Uint32
quads_capacity
()
const
= 0;
91
98
virtual
void
reserve_quads
(
Uint32
n) = 0;
99
101
103
123
virtual
Sint32
set_crease_value
(
Polygon_handle_struct
p,
Uint32
index,
Float32
value) = 0;
124
132
virtual
Float32
get_crease_value
(
Polygon_handle_struct
p,
Uint32
index)
const
= 0;
133
149
virtual
Sint32
set_crease_values
(
Polygon_handle_struct
p,
const
Float32
* values) = 0;
150
158
virtual
const
Float32
*
get_crease_values
(
Polygon_handle_struct
p)
const
= 0;
159
172
virtual
IArray
*
get_inconsistent_crease_values
()
const
= 0;
173
175
177
186
virtual
Sint32
set_vertex_feature
(
Uint32
index,
Vertex_feature
feature) = 0;
187
192
virtual
Vertex_feature
get_vertex_feature
(
Uint32
index)
const
= 0;
193
195
};
196
// end group mi_neuray_leaf_nodes
198
199
}
// namespace mi
200
201
#endif // MI_NEURAYLIB_ISUBDIVISION_SURFACE_H
mi
neuraylib
isubdivision_surface.h
Generated on Tue Aug 12 2014 15:28:35. Build 221133.3991, Doxygen 1.8.4