Blender  V2.93
Public Member Functions | Protected Attributes | List of all members
blender::opensubdiv::CpuEvalOutputAPI Class Reference

#include <evaluator_impl.h>

Public Member Functions

 CpuEvalOutputAPI (CpuEvalOutput *implementation, OpenSubdiv::Far::PatchMap *patch_map)
 
 ~CpuEvalOutputAPI ()
 
void setCoarsePositions (const float *positions, const int start_vertex_index, const int num_vertices)
 
void setVaryingData (const float *varying_data, const int start_vertex_index, const int num_vertices)
 
void setFaceVaryingData (const int face_varying_channel, const float *varying_data, const int start_vertex_index, const int num_vertices)
 
void setCoarsePositionsFromBuffer (const void *buffer, const int start_offset, const int stride, const int start_vertex_index, const int num_vertices)
 
void setVaryingDataFromBuffer (const void *buffer, const int start_offset, const int stride, const int start_vertex_index, const int num_vertices)
 
void setFaceVaryingDataFromBuffer (const int face_varying_channel, const void *buffer, const int start_offset, const int stride, const int start_vertex_index, const int num_vertices)
 
void refine ()
 
void evaluateLimit (const int ptex_face_index, float face_u, float face_v, float P[3], float dPdu[3], float dPdv[3])
 
void evaluateVarying (const int ptes_face_index, float face_u, float face_v, float varying[3])
 
void evaluateFaceVarying (const int face_varying_channel, const int ptes_face_index, float face_u, float face_v, float face_varying[2])
 
void evaluatePatchesLimit (const OpenSubdiv_PatchCoord *patch_coords, const int num_patch_coords, float *P, float *dPdu, float *dPdv)
 

Protected Attributes

CpuEvalOutputimplementation_
 
OpenSubdiv::Far::PatchMap * patch_map_
 

Detailed Description

Definition at line 46 of file evaluator_impl.h.

Constructor & Destructor Documentation

◆ CpuEvalOutputAPI()

blender::opensubdiv::CpuEvalOutputAPI::CpuEvalOutputAPI ( CpuEvalOutput implementation,
OpenSubdiv::Far::PatchMap *  patch_map 
)

Definition at line 587 of file evaluator_impl.cc.

◆ ~CpuEvalOutputAPI()

blender::opensubdiv::CpuEvalOutputAPI::~CpuEvalOutputAPI ( )

Definition at line 593 of file evaluator_impl.cc.

References implementation_.

Member Function Documentation

◆ evaluateFaceVarying()

void blender::opensubdiv::CpuEvalOutputAPI::evaluateFaceVarying ( const int  face_varying_channel,
const int  ptes_face_index,
float  face_u,
float  face_v,
float  face_varying[2] 
)

Definition at line 718 of file evaluator_impl.cc.

References implementation_, and patch_map_.

◆ evaluateLimit()

void blender::opensubdiv::CpuEvalOutputAPI::evaluateLimit ( const int  ptex_face_index,
float  face_u,
float  face_v,
float  P[3],
float  dPdu[3],
float  dPdv[3] 
)

Definition at line 683 of file evaluator_impl.cc.

References implementation_, NULL, P(), and patch_map_.

◆ evaluatePatchesLimit()

void blender::opensubdiv::CpuEvalOutputAPI::evaluatePatchesLimit ( const OpenSubdiv_PatchCoord patch_coords,
const int  num_patch_coords,
float P,
float dPdu,
float dPdv 
)

Definition at line 733 of file evaluator_impl.cc.

References implementation_, NULL, P(), and patch_map_.

◆ evaluateVarying()

void blender::opensubdiv::CpuEvalOutputAPI::evaluateVarying ( const int  ptes_face_index,
float  face_u,
float  face_v,
float  varying[3] 
)

Definition at line 704 of file evaluator_impl.cc.

References implementation_, and patch_map_.

◆ refine()

void blender::opensubdiv::CpuEvalOutputAPI::refine ( )

Definition at line 678 of file evaluator_impl.cc.

References implementation_.

◆ setCoarsePositions()

void blender::opensubdiv::CpuEvalOutputAPI::setCoarsePositions ( const float positions,
const int  start_vertex_index,
const int  num_vertices 
)

Definition at line 598 of file evaluator_impl.cc.

References implementation_.

◆ setCoarsePositionsFromBuffer()

void blender::opensubdiv::CpuEvalOutputAPI::setCoarsePositionsFromBuffer ( const void *  buffer,
const int  start_offset,
const int  stride,
const int  start_vertex_index,
const int  num_vertices 
)

Definition at line 624 of file evaluator_impl.cc.

References buffer, implementation_, and stride.

◆ setFaceVaryingData()

void blender::opensubdiv::CpuEvalOutputAPI::setFaceVaryingData ( const int  face_varying_channel,
const float varying_data,
const int  start_vertex_index,
const int  num_vertices 
)

Definition at line 614 of file evaluator_impl.cc.

References implementation_.

◆ setFaceVaryingDataFromBuffer()

void blender::opensubdiv::CpuEvalOutputAPI::setFaceVaryingDataFromBuffer ( const int  face_varying_channel,
const void *  buffer,
const int  start_offset,
const int  stride,
const int  start_vertex_index,
const int  num_vertices 
)

Definition at line 658 of file evaluator_impl.cc.

References buffer, implementation_, and stride.

◆ setVaryingData()

void blender::opensubdiv::CpuEvalOutputAPI::setVaryingData ( const float varying_data,
const int  start_vertex_index,
const int  num_vertices 
)

Definition at line 606 of file evaluator_impl.cc.

References implementation_.

◆ setVaryingDataFromBuffer()

void blender::opensubdiv::CpuEvalOutputAPI::setVaryingDataFromBuffer ( const void *  buffer,
const int  start_offset,
const int  stride,
const int  start_vertex_index,
const int  num_vertices 
)

Definition at line 641 of file evaluator_impl.cc.

References buffer, implementation_, and stride.

Member Data Documentation

◆ implementation_

CpuEvalOutput* blender::opensubdiv::CpuEvalOutputAPI::implementation_
protected

◆ patch_map_

OpenSubdiv::Far::PatchMap* blender::opensubdiv::CpuEvalOutputAPI::patch_map_
protected

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