Blender
V3.3
|
#include <evaluator_impl.h>
Classes | |
class | EvalOutput |
Public Member Functions | |
EvalOutputAPI (EvalOutput *implementation, PatchMap *patch_map) | |
~EvalOutputAPI () | |
void | setSettings (const OpenSubdiv_EvaluatorSettings *settings) |
void | setCoarsePositions (const float *positions, const int start_vertex_index, const int num_vertices) |
void | setVertexData (const float *data, 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 | evaluateVertexData (const int ptes_face_index, float face_u, float face_v, float data[]) |
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) |
void | getPatchMap (OpenSubdiv_Buffer *patch_map_handles, OpenSubdiv_Buffer *patch_map_quadtree, int *min_patch_face, int *max_patch_face, int *max_depth, int *patches_are_triangular) |
void | fillPatchArraysBuffer (OpenSubdiv_Buffer *patch_arrays_buffer) |
void | wrapPatchIndexBuffer (OpenSubdiv_Buffer *patch_index_buffer) |
void | wrapPatchParamBuffer (OpenSubdiv_Buffer *patch_param_buffer) |
void | wrapSrcBuffer (OpenSubdiv_Buffer *src_buffer) |
void | wrapSrcVertexDataBuffer (OpenSubdiv_Buffer *src_buffer) |
void | fillFVarPatchArraysBuffer (const int face_varying_channel, OpenSubdiv_Buffer *patch_arrays_buffer) |
void | wrapFVarPatchIndexBuffer (const int face_varying_channel, OpenSubdiv_Buffer *patch_index_buffer) |
void | wrapFVarPatchParamBuffer (const int face_varying_channel, OpenSubdiv_Buffer *patch_param_buffer) |
void | wrapFVarSrcBuffer (const int face_varying_channel, OpenSubdiv_Buffer *src_buffer) |
bool | hasVertexData () const |
Protected Attributes | |
PatchMap * | patch_map_ |
EvalOutput * | implementation_ |
Definition at line 50 of file evaluator_impl.h.
blender::opensubdiv::EvalOutputAPI::EvalOutputAPI | ( | EvalOutput * | implementation, |
PatchMap * | patch_map | ||
) |
Definition at line 159 of file evaluator_impl.cc.
blender::opensubdiv::EvalOutputAPI::~EvalOutputAPI | ( | ) |
Definition at line 164 of file evaluator_impl.cc.
References implementation_.
void blender::opensubdiv::EvalOutputAPI::evaluateFaceVarying | ( | const int | face_varying_channel, |
const int | ptes_face_index, | ||
float | face_u, | ||
float | face_v, | ||
float | face_varying[2] | ||
) |
Definition at line 316 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatchesFaceVarying(), blender::opensubdiv::PatchMap::FindPatch(), implementation_, and patch_map_.
void blender::opensubdiv::EvalOutputAPI::evaluateLimit | ( | const int | ptex_face_index, |
float | face_u, | ||
float | face_v, | ||
float | P[3], | ||
float | dPdu[3], | ||
float | dPdv[3] | ||
) |
Definition at line 267 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatches(), blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatchesWithDerivatives(), blender::opensubdiv::PatchMap::FindPatch(), implementation_, NULL, P(), and patch_map_.
void blender::opensubdiv::EvalOutputAPI::evaluatePatchesLimit | ( | const OpenSubdiv_PatchCoord * | patch_coords, |
const int | num_patch_coords, | ||
float * | P, | ||
float * | dPdu, | ||
float * | dPdv | ||
) |
Definition at line 331 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatches(), blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatchesWithDerivatives(), implementation_, NULL, P(), and patch_map_.
void blender::opensubdiv::EvalOutputAPI::evaluateVarying | ( | const int | ptes_face_index, |
float | face_u, | ||
float | face_v, | ||
float | varying[3] | ||
) |
Definition at line 288 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatchesVarying(), blender::opensubdiv::PatchMap::FindPatch(), implementation_, and patch_map_.
void blender::opensubdiv::EvalOutputAPI::evaluateVertexData | ( | const int | ptes_face_index, |
float | face_u, | ||
float | face_v, | ||
float | data[] | ||
) |
Definition at line 302 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::evalPatchesVertexData(), blender::opensubdiv::PatchMap::FindPatch(), implementation_, and patch_map_.
void blender::opensubdiv::EvalOutputAPI::fillFVarPatchArraysBuffer | ( | const int | face_varying_channel, |
OpenSubdiv_Buffer * | patch_arrays_buffer | ||
) |
Definition at line 396 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::fillFVarPatchArraysBuffer(), and implementation_.
void blender::opensubdiv::EvalOutputAPI::fillPatchArraysBuffer | ( | OpenSubdiv_Buffer * | patch_arrays_buffer | ) |
Definition at line 371 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::fillPatchArraysBuffer(), and implementation_.
void blender::opensubdiv::EvalOutputAPI::getPatchMap | ( | OpenSubdiv_Buffer * | patch_map_handles, |
OpenSubdiv_Buffer * | patch_map_quadtree, | ||
int * | min_patch_face, | ||
int * | max_patch_face, | ||
int * | max_depth, | ||
int * | patches_are_triangular | ||
) |
Definition at line 348 of file evaluator_impl.cc.
References OpenSubdiv_Buffer::alloc, blender::opensubdiv::PatchMap::getHandles(), blender::opensubdiv::PatchMap::getMaxDepth(), blender::opensubdiv::PatchMap::getMaxPatchFace(), blender::opensubdiv::PatchMap::getMinPatchFace(), blender::opensubdiv::PatchMap::getPatchesAreTriangular(), handles, blender::opensubdiv::PatchMap::nodes(), and patch_map_.
bool blender::opensubdiv::EvalOutputAPI::hasVertexData | ( | ) | const |
Definition at line 420 of file evaluator_impl.cc.
References blender::opensubdiv::EvalOutputAPI::EvalOutput::hasVertexData(), and implementation_.
void blender::opensubdiv::EvalOutputAPI::refine | ( | ) |
Definition at line 262 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::refine().
void blender::opensubdiv::EvalOutputAPI::setCoarsePositions | ( | const float * | positions, |
const int | start_vertex_index, | ||
const int | num_vertices | ||
) |
Definition at line 174 of file evaluator_impl.cc.
References implementation_, positions, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateData().
void blender::opensubdiv::EvalOutputAPI::setCoarsePositionsFromBuffer | ( | const void * | buffer, |
const int | start_offset, | ||
const int | stride, | ||
const int | start_vertex_index, | ||
const int | num_vertices | ||
) |
Definition at line 208 of file evaluator_impl.cc.
References buffer, implementation_, stride, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateData().
void blender::opensubdiv::EvalOutputAPI::setFaceVaryingData | ( | const int | face_varying_channel, |
const float * | varying_data, | ||
const int | start_vertex_index, | ||
const int | num_vertices | ||
) |
Definition at line 198 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateFaceVaryingData().
void blender::opensubdiv::EvalOutputAPI::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 242 of file evaluator_impl.cc.
References buffer, implementation_, stride, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateFaceVaryingData().
void blender::opensubdiv::EvalOutputAPI::setSettings | ( | const OpenSubdiv_EvaluatorSettings * | settings | ) |
Definition at line 169 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateSettings().
void blender::opensubdiv::EvalOutputAPI::setVaryingData | ( | const float * | varying_data, |
const int | start_vertex_index, | ||
const int | num_vertices | ||
) |
Definition at line 182 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateVaryingData().
void blender::opensubdiv::EvalOutputAPI::setVaryingDataFromBuffer | ( | const void * | buffer, |
const int | start_offset, | ||
const int | stride, | ||
const int | start_vertex_index, | ||
const int | num_vertices | ||
) |
Definition at line 225 of file evaluator_impl.cc.
References buffer, implementation_, stride, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateVaryingData().
void blender::opensubdiv::EvalOutputAPI::setVertexData | ( | const float * | data, |
const int | start_vertex_index, | ||
const int | num_vertices | ||
) |
Definition at line 190 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::updateVertexData().
void blender::opensubdiv::EvalOutputAPI::wrapFVarPatchIndexBuffer | ( | const int | face_varying_channel, |
OpenSubdiv_Buffer * | patch_index_buffer | ||
) |
Definition at line 402 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapFVarPatchIndexBuffer().
void blender::opensubdiv::EvalOutputAPI::wrapFVarPatchParamBuffer | ( | const int | face_varying_channel, |
OpenSubdiv_Buffer * | patch_param_buffer | ||
) |
Definition at line 408 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapFVarPatchParamBuffer().
void blender::opensubdiv::EvalOutputAPI::wrapFVarSrcBuffer | ( | const int | face_varying_channel, |
OpenSubdiv_Buffer * | src_buffer | ||
) |
Definition at line 414 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapFVarSrcBuffer().
void blender::opensubdiv::EvalOutputAPI::wrapPatchIndexBuffer | ( | OpenSubdiv_Buffer * | patch_index_buffer | ) |
Definition at line 376 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapPatchIndexBuffer().
void blender::opensubdiv::EvalOutputAPI::wrapPatchParamBuffer | ( | OpenSubdiv_Buffer * | patch_param_buffer | ) |
Definition at line 381 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapPatchParamBuffer().
void blender::opensubdiv::EvalOutputAPI::wrapSrcBuffer | ( | OpenSubdiv_Buffer * | src_buffer | ) |
Definition at line 386 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapSrcBuffer().
void blender::opensubdiv::EvalOutputAPI::wrapSrcVertexDataBuffer | ( | OpenSubdiv_Buffer * | src_buffer | ) |
Definition at line 391 of file evaluator_impl.cc.
References implementation_, and blender::opensubdiv::EvalOutputAPI::EvalOutput::wrapSrcVertexDataBuffer().
|
protected |
Definition at line 195 of file evaluator_impl.h.
Referenced by evaluateFaceVarying(), evaluateLimit(), evaluatePatchesLimit(), evaluateVarying(), evaluateVertexData(), fillFVarPatchArraysBuffer(), fillPatchArraysBuffer(), hasVertexData(), refine(), setCoarsePositions(), setCoarsePositionsFromBuffer(), setFaceVaryingData(), setFaceVaryingDataFromBuffer(), setSettings(), setVaryingData(), setVaryingDataFromBuffer(), setVertexData(), wrapFVarPatchIndexBuffer(), wrapFVarPatchParamBuffer(), wrapFVarSrcBuffer(), wrapPatchIndexBuffer(), wrapPatchParamBuffer(), wrapSrcBuffer(), wrapSrcVertexDataBuffer(), and ~EvalOutputAPI().
|
protected |
Definition at line 194 of file evaluator_impl.h.
Referenced by evaluateFaceVarying(), evaluateLimit(), evaluatePatchesLimit(), evaluateVarying(), evaluateVertexData(), and getPatchMap().