neuray API Programmer's Manual

ion_demand_mesh.h File Reference

Description

Scene element On_demand_mesh.

Code Example

ion_demand_mesh.h

‎//*****************************************************************************
// Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
//*****************************************************************************
//*****************************************************************************

#ifndef MI_NEURAYLIB_ION_DEMAND_MESH_H
#define MI_NEURAYLIB_ION_DEMAND_MESH_H

#include <mi/neuraylib/iscene_element.h>
#include <mi/neuraylib/typedefs.h>
#include <mi/neuraylib/version.h>

namespace mi {

namespace neuraylib {

class ITransaction;

class IOn_demand_mesh_callback;
class ISimple_mesh;






















class IOn_demand_mesh :
    public base::Interface_declare<0x0c1cb14f,0x985a,0x426e,0xa3,0x79,0xa7,0xf5,0x62,0x60,0xd6,0x8d,
                                   neuraylib::IScene_element>
{
public:
    virtual void set_callback( IOn_demand_mesh_callback* callback) = 0;

    virtual const IOn_demand_mesh_callback* get_callback() const = 0;



    virtual void set_bbox_min( const Float32_3_struct& bbox_min) = 0;

    virtual void set_bbox_max( const Float32_3_struct& bbox_max) = 0;

    virtual const Float32_3_struct& get_bbox_min() const = 0;

    virtual const Float32_3_struct& get_bbox_max() const = 0;




    virtual void set_maximum_displacement( Float32 displacement) = 0;

    virtual Float32 
               get_maximum_displacement() const = 0;

};

class IOn_demand_mesh_callback :
    public base::Interface_declare<0x7cadfdf7,0xd26f,0x48ac,0x91,0x18,0x2d,0x6d,0x6f,0x7a,0x78,0xf4>
{
public:
    virtual const ISimple_mesh* call() const = 0;
};
 // end group mi_neuray_leaf_nodes

} // namespace neuraylib

#ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
using neuraylib::IOn_demand_mesh;
using neuraylib::IOn_demand_mesh_callback;
using neuraylib::IScene_element;
using neuraylib::ISimple_mesh;
#endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION

} // namespace mi

#endif // MI_NEURAYLIB_ION_DEMAND_MESH_H

Namespaces

namespace 
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. More...
namespace 
Namespace for the neuray API. More...

Classes

class 
Interface representing an on-demand mesh. More...
class 
Abstract interface for callbacks used by on-demand meshes. More...