FaceModel
 All Classes Namespaces Functions Variables Enumerations Enumerator Pages
Classes | Functions
iyf Namespace Reference

contains types and functions used for this part of the pipeline More...

Classes

class  ArgParser
 utility class to parse command line arguments passed to FaceModel More...
 
class  JsonJig
 utility class to help managing typical operations on json files. (loading, manipulating, writing) More...
 
struct  Transform
 a struct to encapsulate all attributes needed to apply facial deformations More...
 

Functions

aiVector3D cross (aiVector3D a, aiVector3D b)
 helper function to calculate the crossproduct of the two vectors provided More...
 
void processModel (const aiScene *scene, aiNode *currNode, aiMatrix4x4 transMat, iyf::JsonJig &model, iyf::Transform *trans, unsigned int transCount, std::string boundaryTargetFile)
 processes the model loaded via ASSIMP More...
 

Detailed Description

contains types and functions used for this part of the pipeline

this namespace contains the Transform which encapsulates the deformation performed based on the translations defined in the input data of this module. Furthermore the processModel function is the major piece of functionality provided, which parses a DAE model and generates json output optimised for the WebGL rendering frontend

Function Documentation

aiVector3D iyf::cross ( aiVector3D  a,
aiVector3D  b 
)

helper function to calculate the crossproduct of the two vectors provided

Parameters
aiVector3Da denotes the left hand side vector of the crossproduct
aiVector3Db denoes the right hand side vector of the crossproduct
Returns
aiVector3D the corssproduct calculated
void iyf::processModel ( const aiScene *  scene,
aiNode *  currNode,
aiMatrix4x4  transMat,
iyf::JsonJig model,
iyf::Transform trans,
unsigned int  transCount,
std::string  boundaryTargetFile 
)

processes the model loaded via ASSIMP

Parameters
constaiScene *scene the scene loaded via assimp which is processed recursively to find the Node with the name Head
aiNode*currNode the current node being processed by this step of the recursion
aiMatrix4x4transMat a matrix that stores the cumulative transformations which are applied to every vertex during rendering (object space coordinates)
iyf::JsonJig&model a reference to the json node of the output to hold the processed vertices
iyf::Transform*trans iyf::Transform array that holds all transformations to apply to the model's vertices
unsignedint transCount the length of the passed iyf::Transform array
std::stringboundaryTargetFile the target filepath to write the boundaries found during the processing to