NVIDIA Iray API Home  Up
 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, 2016 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 #include <mi/neuraylib/version.h>
14 
15 namespace mi {
16 
17 namespace neuraylib {
18 
23 class ISimple_mesh :
46  public base::Interface_declare<0xd678b434,0x675f,0x4d55,0x8f,0xed,0x50,0x34,0x1e,0x0b,0xa9,0xf2>
47 {
48 public:
50  virtual Uint32 data_size() const = 0;
51 
56  virtual const Float32_3_struct* get_points() const = 0;
57 
64  virtual const Float32_3_struct* get_normals() const = 0;
65 
77  virtual Uint32 get_texture_dimension( Uint32 texture_space_id) const = 0;
78 
90  virtual const Float32* get_texture_coordinates( Uint32 texture_space_id) const = 0;
91 
103  virtual const Float32_3_struct* get_derivatives() const = 0;
104 
109  virtual Uint32 get_motion_vector_count() const = 0;
110 
118  virtual const Float32_3_struct* get_motion_vectors() const = 0;
119 
121  virtual Uint32 triangles_size() const = 0;
122 
131  virtual const Uint32_3_struct* get_triangles() const = 0;
132 
134  virtual bool has_unique_material() const = 0;
135 
144  virtual const Uint32* get_material_indices() const = 0;
145 };
146  // end group mi_neuray_leaf_nodes
148 
149 } // namespace neuraylib
150 
151 #ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
152 using neuraylib::ISimple_mesh;
153 #endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
154 
155 } // namespace mi
156 
157 #endif // MI_NEURAYLIB_ISIMPLE_MESH_H