NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
isimple_mesh.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_ISIMPLE_MESH_H
9 #define MI_NEURAYLIB_ISIMPLE_MESH_H
10 
12 #include <mi/neuraylib/typedefs.h>
13 
14 namespace mi {
15 
20 class ISimple_mesh :
43  public base::Interface_declare<0xd678b434,0x675f,0x4d55,0x8f,0xed,0x50,0x34,0x1e,0x0b,0xa9,0xf2>
44 {
45 public:
47  virtual Uint32 data_size() const = 0;
48 
53  virtual const Float32_3_struct* get_points() const = 0;
54 
61  virtual const Float32_3_struct* get_normals() const = 0;
62 
74  virtual Uint32 get_texture_dimension( Uint32 texture_space_id) const = 0;
75 
87  virtual const Float32* get_texture_coordinates( Uint32 texture_space_id) const = 0;
88 
100  virtual const Float32_3_struct* get_derivatives() const = 0;
101 
106  virtual Uint32 get_motion_vector_count() const = 0;
107 
115  virtual const Float32_3_struct* get_motion_vectors() const = 0;
116 
118  virtual Uint32 triangles_size() const = 0;
119 
124  virtual const Uint32_3_struct* get_triangles() const = 0;
125 
127  virtual bool has_unique_material() const = 0;
128 
133  virtual const Uint32* get_material_indices() const = 0;
134 };
135  // end group mi_neuray_leaf_nodes
137 
138 } // namespace mi
139 
140 #endif // MI_NEURAYLIB_ISIMPLE_MESH_H