Loading...
Searching...
No Matches
Classes | Concepts
bbm::ior Namespace Reference

Namespace for 'ior' and 'reflectance' types. More...

Classes

struct  bagher_reflectance_tag
 
struct  complex_ior_tag
 
struct  ior_tag
 
struct  reflectance_tag
 

Concepts

concept  is_ior_v
 
concept  is_complex_ior_v
 
concept  is_reflectance_v
 
concept  is_ior_type
 

Typedefs

Specialized 2d reflectance type for Bagher et al.'s modified Schlick's approxiation.
template<typename T >
using bagher_reflectance = attribute< bagher_reflectance_tag< T > >
 
Type definition
template<typename T >
using ior = attribute< ior_tag< T > >
 
template<typename T >
using complex_ior = attribute< complex_ior_tag< T > >
 
template<typename T >
using reflectance = attribute< reflectance_tag< T > >
 

Functions

Conversion between 'ior' and 'reflectance'

Conversion between 'ior' and 'reflectance' types

Parameters
target= type to copy to.
source= which variable to copy from
template<typename T >
void convert (reflectance< T > &target, const ior< T > &i)
 
template<typename T >
void convert (ior< T > &target, const reflectance< T > &r)
 
template<typename T >
void convert (complex< T > &target, const ior< T > &i)
 

Detailed Description

Namespace for 'ior' and 'reflectance' types.


Class Documentation

◆ bbm::ior::bagher_reflectance_tag

struct bbm::ior::bagher_reflectance_tag
template<typename T>
struct bbm::ior::bagher_reflectance_tag< T >
Class Members
typedef vec2d< T > type

◆ bbm::ior::complex_ior_tag

struct bbm::ior::complex_ior_tag
template<typename T>
struct bbm::ior::complex_ior_tag< T >
Class Members
typedef complex< T > type

◆ bbm::ior::ior_tag

struct bbm::ior::ior_tag
template<typename T>
struct bbm::ior::ior_tag< T >
Class Members
typedef T type

◆ bbm::ior::reflectance_tag

struct bbm::ior::reflectance_tag
template<typename T>
struct bbm::ior::reflectance_tag< T >
Class Members
typedef T type

Typedef Documentation

◆ bagher_reflectance

◆ complex_ior

◆ ior

using ior = attribute<ior_tag<T> >

◆ reflectance

Function Documentation

◆ convert() [1/3]

void convert ( complex< T > &  target,
const ior< T > &  i 
)

◆ convert() [2/3]

void convert ( ior< T > &  target,
const reflectance< T > &  r 
)

◆ convert() [3/3]

void convert ( reflectance< T > &  target,
const ior< T > &  i 
)