Changeset View
Changeset View
Standalone View
Standalone View
intern/opensubdiv/internal/opensubdiv_evaluator.cc
| Show First 20 Lines • Show All 102 Lines • ▼ Show 20 Lines | void evaluateLimit(OpenSubdiv_Evaluator* evaluator, | ||||
| const int ptex_face_index, | const int ptex_face_index, | ||||
| const float face_u, const float face_v, | const float face_u, const float face_v, | ||||
| float P[3], float dPdu[3], float dPdv[3]) { | float P[3], float dPdu[3], float dPdv[3]) { | ||||
| evaluator->internal->eval_output->evaluateLimit(ptex_face_index, | evaluator->internal->eval_output->evaluateLimit(ptex_face_index, | ||||
| face_u, face_v, | face_u, face_v, | ||||
| P, dPdu, dPdv); | P, dPdu, dPdv); | ||||
| } | } | ||||
| void evaluateLimit2(OpenSubdiv_Evaluator* evaluator, | |||||
| const int ptex_face_index, | |||||
| const float face_u, const float face_v, | |||||
| float P[3], | |||||
| float dPdu[3], | |||||
| float dPdv[3], | |||||
| float dPduu[3], | |||||
| float dPduv[3], | |||||
| float dPdvv[3]) { | |||||
| evaluator->internal->eval_output->evaluateLimit2(ptex_face_index, | |||||
| face_u, face_v, | |||||
| P, dPdu, dPdv, | |||||
| dPduu, dPduv, dPdvv); | |||||
| } | |||||
| void evaluateVarying(OpenSubdiv_Evaluator* evaluator, | void evaluateVarying(OpenSubdiv_Evaluator* evaluator, | ||||
| const int ptex_face_index, | const int ptex_face_index, | ||||
| float face_u, float face_v, | float face_u, float face_v, | ||||
| float varying[3]) { | float varying[3]) { | ||||
| evaluator->internal->eval_output->evaluateVarying(ptex_face_index, | evaluator->internal->eval_output->evaluateVarying(ptex_face_index, | ||||
| face_u, face_v, | face_u, face_v, | ||||
| varying); | varying); | ||||
| } | } | ||||
| Show All 14 Lines | void assignFunctionPointers(OpenSubdiv_Evaluator* evaluator) { | ||||
| evaluator->setCoarsePositionsFromBuffer = setCoarsePositionsFromBuffer; | evaluator->setCoarsePositionsFromBuffer = setCoarsePositionsFromBuffer; | ||||
| evaluator->setVaryingDataFromBuffer = setVaryingDataFromBuffer; | evaluator->setVaryingDataFromBuffer = setVaryingDataFromBuffer; | ||||
| evaluator->setFaceVaryingDataFromBuffer = setFaceVaryingDataFromBuffer; | evaluator->setFaceVaryingDataFromBuffer = setFaceVaryingDataFromBuffer; | ||||
| evaluator->refine = refine; | evaluator->refine = refine; | ||||
| evaluator->evaluateLimit = evaluateLimit; | evaluator->evaluateLimit = evaluateLimit; | ||||
| evaluator->evaluateLimit2 = evaluateLimit2; | |||||
| evaluator->evaluateVarying = evaluateVarying; | evaluator->evaluateVarying = evaluateVarying; | ||||
| evaluator->evaluateFaceVarying = evaluateFaceVarying; | evaluator->evaluateFaceVarying = evaluateFaceVarying; | ||||
| } | } | ||||
| } // namespace | } // namespace | ||||
| OpenSubdiv_Evaluator* openSubdiv_createEvaluatorFromTopologyRefiner( | OpenSubdiv_Evaluator* openSubdiv_createEvaluatorFromTopologyRefiner( | ||||
| OpenSubdiv_TopologyRefiner* topology_refiner) { | OpenSubdiv_TopologyRefiner* topology_refiner) { | ||||
| Show All 10 Lines | |||||