RenderManAPI  24.0
RixShadeFunctions Class Referenceabstract

RixShadeFunctions provides a general interface containing functions useful for developing patterns for shading. More...

#include <RixInterfaces.h>

Inherits RixInterface.

Public Types

enum  SplineType {
  Bezier = 0, BSpline, Hermite, Linear,
  Catmullrom
}
 Spline solver and evaluator. More...
 
enum  Type {
  k_Float, k_Integer, k_StringV, k_Color,
  k_Normal, k_Vector, k_Point, k_HPoint,
  k_MPoint, k_Matrix
}
 

Public Member Functions

virtual float Noise (float in)=0
 Noise. More...
 
virtual float Noise (RtFloat2 const &in)=0
 
virtual float Noise (RtFloat3 const &in)=0
 
virtual float Noise (RtFloat3 const &in, float inF)=0
 
virtual RtFloat3 Noise3 (float in)=0
 
virtual RtFloat3 Noise3 (RtFloat2 const &in)=0
 
virtual RtFloat3 Noise3 (RtFloat3 const &in)=0
 
virtual RtFloat3 Noise3 (RtFloat3 const &in, float inF)=0
 
virtual float PNoise (float in, float period)=0
 Periodic Noise. More...
 
virtual float PNoise (RtFloat2 const &in, RtFloat2 const &period)=0
 
virtual float PNoise (RtFloat3 const &in, RtFloat3 const &period)=0
 
virtual float PNoise (RtFloat3 const &in, float inF, RtFloat3 const &period, float periodF)=0
 
virtual RtFloat3 PNoise3 (float in, float period)=0
 
virtual RtFloat3 PNoise3 (RtFloat2 const &in, RtFloat2 const &period)=0
 
virtual RtFloat3 PNoise3 (RtFloat3 const &in, RtFloat3 const &period)=0
 
virtual RtFloat3 PNoise3 (RtFloat3 const &in, float inF, RtFloat3 const &period, float periodF)=0
 
virtual float CellNoise (float in)=0
 Cell Noise. More...
 
virtual float CellNoise (RtFloat2 const &in)=0
 
virtual float CellNoise (RtFloat3 const &in)=0
 
virtual float CellNoise (RtFloat3 const &in, float inF)=0
 
virtual RtFloat3 CellNoise3 (float in)=0
 
virtual RtFloat3 CellNoise3 (RtFloat2 const &in)=0
 
virtual RtFloat3 CellNoise3 (RtFloat3 const &in)=0
 
virtual RtFloat3 CellNoise3 (RtFloat3 const &in, float inF)=0
 
virtual float SolveSpline (SplineType type, float const knot[], int nKnots, float a)=0
 
virtual float EvalSpline (SplineType type, float const knot[], int nKnots, float a)=0
 
virtual RtFloat3 EvalSpline3 (SplineType type, RtFloat3 const knot[], int nknot, float a)=0
 
virtual int GetVersion () const
 Get the version number of this interface. More...
 

Protected Member Functions

 RixShadeFunctions ()
 constructor for internal use only More...
 

Protected Attributes

int m_version
 Version number of this interface. More...
 

Detailed Description

RixShadeFunctions provides a general interface containing functions useful for developing patterns for shading.

Currently offers 3 types of noise in 1D, 2D, 3D, and 4D as well as spline solving and evaluation.

Member Enumeration Documentation

◆ SplineType

Spline solver and evaluator.

Enumerator
Bezier 
BSpline 
Hermite 
Linear 
Catmullrom 

◆ Type

enum RixInterface::Type
inherited
Enumerator
k_Float 
k_Integer 
k_StringV 
k_Color 
k_Normal 
k_Vector 
k_Point 
k_HPoint 
k_MPoint 
k_Matrix 

Constructor & Destructor Documentation

◆ RixShadeFunctions()

RixShadeFunctions::RixShadeFunctions ( )
inlineprotected

constructor for internal use only

Member Function Documentation

◆ CellNoise() [1/4]

virtual float RixShadeFunctions::CellNoise ( float  in)
pure virtual

Cell Noise.

◆ CellNoise() [2/4]

virtual float RixShadeFunctions::CellNoise ( RtFloat2 const &  in)
pure virtual

◆ CellNoise() [3/4]

virtual float RixShadeFunctions::CellNoise ( RtFloat3 const &  in)
pure virtual

◆ CellNoise() [4/4]

virtual float RixShadeFunctions::CellNoise ( RtFloat3 const &  in,
float  inF 
)
pure virtual

◆ CellNoise3() [1/4]

virtual RtFloat3 RixShadeFunctions::CellNoise3 ( float  in)
pure virtual

◆ CellNoise3() [2/4]

virtual RtFloat3 RixShadeFunctions::CellNoise3 ( RtFloat2 const &  in)
pure virtual

◆ CellNoise3() [3/4]

virtual RtFloat3 RixShadeFunctions::CellNoise3 ( RtFloat3 const &  in)
pure virtual

◆ CellNoise3() [4/4]

virtual RtFloat3 RixShadeFunctions::CellNoise3 ( RtFloat3 const &  in,
float  inF 
)
pure virtual

◆ EvalSpline()

virtual float RixShadeFunctions::EvalSpline ( SplineType  type,
float const  knot[],
int  nKnots,
float  a 
)
pure virtual

◆ EvalSpline3()

virtual RtFloat3 RixShadeFunctions::EvalSpline3 ( SplineType  type,
RtFloat3 const  knot[],
int  nknot,
float  a 
)
pure virtual

◆ GetVersion()

virtual int RixInterface::GetVersion ( ) const
inlinevirtualinherited

Get the version number of this interface.

Different interfaces might have different version numbers in a given release.

References RixInterface::m_version.

◆ Noise() [1/4]

virtual float RixShadeFunctions::Noise ( float  in)
pure virtual

Noise.

◆ Noise() [2/4]

virtual float RixShadeFunctions::Noise ( RtFloat2 const &  in)
pure virtual

◆ Noise() [3/4]

virtual float RixShadeFunctions::Noise ( RtFloat3 const &  in)
pure virtual

◆ Noise() [4/4]

virtual float RixShadeFunctions::Noise ( RtFloat3 const &  in,
float  inF 
)
pure virtual

◆ Noise3() [1/4]

virtual RtFloat3 RixShadeFunctions::Noise3 ( float  in)
pure virtual

◆ Noise3() [2/4]

virtual RtFloat3 RixShadeFunctions::Noise3 ( RtFloat2 const &  in)
pure virtual

◆ Noise3() [3/4]

virtual RtFloat3 RixShadeFunctions::Noise3 ( RtFloat3 const &  in)
pure virtual

◆ Noise3() [4/4]

virtual RtFloat3 RixShadeFunctions::Noise3 ( RtFloat3 const &  in,
float  inF 
)
pure virtual

◆ PNoise() [1/4]

virtual float RixShadeFunctions::PNoise ( float  in,
float  period 
)
pure virtual

Periodic Noise.

◆ PNoise() [2/4]

virtual float RixShadeFunctions::PNoise ( RtFloat2 const &  in,
RtFloat2 const &  period 
)
pure virtual

◆ PNoise() [3/4]

virtual float RixShadeFunctions::PNoise ( RtFloat3 const &  in,
RtFloat3 const &  period 
)
pure virtual

◆ PNoise() [4/4]

virtual float RixShadeFunctions::PNoise ( RtFloat3 const &  in,
float  inF,
RtFloat3 const &  period,
float  periodF 
)
pure virtual

◆ PNoise3() [1/4]

virtual RtFloat3 RixShadeFunctions::PNoise3 ( float  in,
float  period 
)
pure virtual

◆ PNoise3() [2/4]

virtual RtFloat3 RixShadeFunctions::PNoise3 ( RtFloat2 const &  in,
RtFloat2 const &  period 
)
pure virtual

◆ PNoise3() [3/4]

virtual RtFloat3 RixShadeFunctions::PNoise3 ( RtFloat3 const &  in,
RtFloat3 const &  period 
)
pure virtual

◆ PNoise3() [4/4]

virtual RtFloat3 RixShadeFunctions::PNoise3 ( RtFloat3 const &  in,
float  inF,
RtFloat3 const &  period,
float  periodF 
)
pure virtual

◆ SolveSpline()

virtual float RixShadeFunctions::SolveSpline ( SplineType  type,
float const  knot[],
int  nKnots,
float  a 
)
pure virtual

Member Data Documentation

◆ m_version

int RixInterface::m_version
protectedinherited

Version number of this interface.

Referenced by RixInterface::GetVersion().


The documentation for this class was generated from the following file: