Human/CreateVRML.h File Reference

Create VRML function. More...

#include <stdio.h>
#include <stdlib.h>

Go to the source code of this file.

Data Structures

struct  MatList
struct  VRMLFeatures

Defines

#define FALSE   0
#define TRUE   1

Enumerations

enum  InterpType { POSITION, ORIENTATION, COLOR, SCALE }

Functions

int CreateVRML ()
void HAnimOrientations (double *Or, double *q)
 Compute the matrix of global orientation of the model in the h-anim referential.
void HAnimPosition (double *Pos, double *q)
 Compute the matrix of global position of the model in the h-anim referential.
void HAnimVPos (double *VPOS, double *Lambda, double *q)
 Compute the matrix of position of the center of pressure(COP) of the contact solids and in the last column the sum of the forces vertical components in the h-anim referential.
void HAnimVRot (double *VRot, double *Lambda, double *q)
 Compute the matrix of orientations(angle/axe) of the forces on the contact solids and of the total forces in the h-anim referential NCONTSOL is the number of contact solids and NCONT the number of contact points.
void HAnimVScale (double *VScale, double *Lambda, double *q)
 Compute the scale along the h-anim x, y and z axes.
void InitVRMLFeatures ()
void ResetVRMLFeatures ()
int SetUpVRMLCharacter (char *geomFilename, int nb, char **names, double *rot, double *pos)
int SetUpVRMLFile (char *outputFilename, int useJava)
int SetUpVRMLInterpolation (int nbS, double dt)
int SetUpVRMLPhysVec (int nb, char **names, double *rot, double *pos, double *scale, double *RGB)
int WriteVRMLInterpolator (FILE *f, enum InterpType type, int index, char *name, int nbItems, int nbSamples, double *data)
int WriteVRMLPhysVec (FILE *f, int index, char *name, double *data)


Detailed Description

Create VRML function.

Author:
: Laurence Boissieux Affiliation(s): INRIA, team BIPOP Email(s): Creation : 2005/04/14

Define Documentation

#define FALSE   0

#define TRUE   1


Enumeration Type Documentation

enum InterpType

Enumerator:
POSITION 
ORIENTATION 
COLOR 
SCALE 


Function Documentation

int CreateVRML (  ) 

Creates a VRML h-anim compliant file describing geometry and HUMANS simulated motion

Returns:
return 1 on success, exit(-1) on error

void HAnimOrientations ( double *  Or,
double *  q 
)

Compute the matrix of global orientation of the model in the h-anim referential.

Parameters:
[out] Or Matrix of global orientation dim 1x4
[in] q Joint State Vector dim NDOF

void HAnimPosition ( double *  Pos,
double *  q 
)

Compute the matrix of global position of the model in the h-anim referential.

Parameters:
[out] Pos Matrix of global position dim 1x3
[in] q Joint State Vector dim NDOF

void HAnimVPos ( double *  VPOS,
double *  Lambda,
double *  q 
)

Compute the matrix of position of the center of pressure(COP) of the contact solids and in the last column the sum of the forces vertical components in the h-anim referential.

NCONTSOL is the number of contact solids and NCONT the number of contact points.

Parameters:
[out] VPOS Matrix of COP positions dim NCONTSOLx4
[in] Lambda the forces vector on the contact points dim 3*NCONT
[in] q Joint State Vector dim NDOF

void HAnimVRot ( double *  VRot,
double *  Lambda,
double *  q 
)

Compute the matrix of orientations(angle/axe) of the forces on the contact solids and of the total forces in the h-anim referential NCONTSOL is the number of contact solids and NCONT the number of contact points.

Parameters:
[out] VRot Matrix of forces orientations dim NCONTSOLx4
[in] Lambda the forces vector on the contact points dim 3*NCONT
[in] q Joint State Vector dim NDOF

void HAnimVScale ( double *  VScale,
double *  Lambda,
double *  q 
)

Compute the scale along the h-anim x, y and z axes.

The return is a matrix NCONTSOLx3. The rows correspond to the scales for one contact solid.

Parameters:
[out] VScale Matrix of forces scales dim NCONTSOLx4
[in] Lambda the forces vector on the contact points dim 3*NCONT
[in] q Joint State Vector dim NDOF

void InitVRMLFeatures (  ) 

void ResetVRMLFeatures (  ) 

int SetUpVRMLCharacter ( char *  geomFilename,
int  nb,
char **  names,
double *  rot,
double *  pos 
)

int SetUpVRMLFile ( char *  outputFilename,
int  useJava 
)

int SetUpVRMLInterpolation ( int  nbS,
double  dt 
)

int SetUpVRMLPhysVec ( int  nb,
char **  names,
double *  rot,
double *  pos,
double *  scale,
double *  RGB 
)

int WriteVRMLInterpolator ( FILE *  f,
enum InterpType  type,
int  index,
char *  name,
int  nbItems,
int  nbSamples,
double *  data 
)

Writes in VRML an interpolator bloc for a given joint or physical Vector

Parameters:
file (FILE *) the descriptor of the file to write into
type (InterpType) type of the Intepolator bloc, POSITION, ORIENTATION, COLOR or SCALAR
index (int) index of the joint or physical vector for which is written the interpolator
name (char *) name of the joint or physical vector
nbItems (int) number of joints or physical vectors
nbSamples (int) number of time samples
data (double *) interpolation data

int WriteVRMLPhysVec ( FILE *  f,
int  index,
char *  name,
double *  data 
)

Writes in VRML a transform bloc for a given physical Vector

Parameters:
file (FILE *) the descriptorof the file to write into
index (int) index of the physical vector for which is written the transform node
name (char *) name of the physical vector
data (double *) RGB colors

HuMAnS

humans-users@inrialpes.fr


Generated on Tue Mar 6 14:12:05 2007 for HuMAnS by doxygen 1.4.7