MODEL Documentation
[revenir à la page d'accueil] |
extern MODEL *model_new(char *filename);
crée un objet modèle SANS CHARGER LE FICHIER.extern void model_free(MODEL *m);
détruit un objet model.extern FACE *model_get_face_ptr(MODEL *model, int face_id);
renvoie un pointeur sur la face identifiée par face_idextern MATERIAL *model_face_get_material_ptr(MODEL *model, FACE *face);
renvoie un pointeur sur le descripteur de la matière associée à la face 'face'.extern float *model_face_get_vertex_ptr(MODEL *model, FACE *face, int vertex_id);
renvoie un pointeur sur un sommet de la face. Le sommet est identifié par vertex_id.extern int model_face_get_edge(MODEL *model, FACE *face, int edge_id, VEC *edge);
calcule et renvoie le vecteur associé à l'arete identifiée par edge_id.extern float *model_face_get_norm_ptr(MODEL *model, FACE *face);
renvoie un pointeur sur le vecteur normal à la face.extern float model_face_get_area(MODEL *model, FACE *face);
calcule et renvoie l'aire de la face.extern int model_get_faces_n(MODEL *model);
renvoie le nombre de faces du modèle.extern int model_load_obj(MODEL **pmodel, char *filename);
charge un objet 3D au format maya .obj et renvoie un MODEL le représentant.extern int model_save_obj(MODEL *model, char *filename);
enregistre un objet MODEL.extern int model_is_obj(char *filename);
vérifie qu'un nom de fichier se termine par .obj extern int model_load_off(MODEL **pmodel, char *filename);
charge un objet 3D au format .off et renvoie un MODEL le représentant.extern int model_is_off(char *filename);
vérifie q'un nom de fichier se termine par .offint main(int argc, char **argv)
{
MODEL *model;
RENDER *render;
/* charge le modele .obj ou .off passé en paramètre argv[1]
*/
model= NULL;
if((model_is_obj(argv[1])==0 && model_load_obj(&model, argv[1]) < 0)
|| (model_is_off(argv[1])==0 && model_load_off(&model, argv[1]) < 0))
{
printf("\n -- unable to load model '%s'\n", argv[1]);
return 1;
}
if(model==NULL)
{
printf("\n -- unknown model format or missing \n");
return 1;
}
/* cree le contexte de calcul */
render= render_new(model, "diffuseLuminaire1SG");
/* faire quelquechose avec l'objet RENDER */
...
return 0;
}