\documentclass[a4paper,12pt]{article}

\usepackage[french]{babel}
\usepackage[T1]{fontenc} 
\usepackage[latin1]{inputenc}
%\usepackage{amsmath}

\author{Rémi Synave, Stefka Gueorguieva, Pascal Desbarats}
\title{Manuel de la bibliothèque QUALITY}
\date{}

\begin{document}
\maketitle

\section{Utilisation}
Dans cette bibliothèque sont implémentées des fonctions permettant d'apprécier la qualité d'un maillage.

\section{Fonctions}


\textbullet \texttt{double vf\_model\_mean\_ratio\_metric\_for\_a\_face(vf\_model *m, int numface)}\\
Calcul du \texttt{Mean Ratio Metric}\cite{DKMS2006} d'une face.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{numface} : le numéro de la face à évaluer.\\
\texttt{retour} : évaluation de la face.\\


\textbullet \texttt{double vf\_model\_mean\_ratio\_metric(vf\_model *m)}\\
Calcul du \texttt{Mean Ratio Metric} d'un maillage.\\
Le \texttt{Mean Ratio Metric} d'un maillage complet est égale à la moyenne des \textit{Mean Ratio Metric} de ses faces.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{retour} : évaluation du modele.\\


\textbullet \texttt{void vf\_model\_list\_angle(vf\_model *m,double **list, int *size)}\\
Liste la valeur en degré des angles de toutes les faces d'un maillage.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{list} : liste des angles de tous les triangles.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\


\textbullet \texttt{void vf\_model\_list\_area(vf\_model *m,double **list, int *size)}\\
Liste la valeur des aires de toutes els faces d'un maillage.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{list} : liste des aires de tous les triangles.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\


\textbullet \texttt{void vf\_model\_list\_valence(vf\_model *m,int **list, int *size)}\\
Liste les valences des sommets d'un maillage.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{list} : liste des valence de tous les sommets.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\


\textbullet \texttt{void vf\_model\_list\_edge\_length(vf\_model *m, double **list, int *size)}\\
Liste la longueur des toutes les arêtes d'un maillage.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{list} : liste des longueurs de toutes les aretes.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\


\textbullet \texttt{void vf\_model\_list\_height\_length(vf\_model *m, double **list, int *size)}\\
Liste l'ensemble des hauteurs des faces d'un modèle.\\
Chaque face étant un triangle, trois hauteurs sont données par face.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{list} : liste des hauteurs de tous les triangles.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\


\textbullet \texttt{int* vf\_model\_angle\_measure(vf\_model *m)}\\
Synthétise la valeur en degré des angles d'un modèle dans un tableau par intervalle de dix degrés.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le modele.\\
\texttt{retour} : tableau de 18 valeurs contenant la synthèse des valeurs des angles des triangles.\\


\textbullet \texttt{double DPP(point3d p, point3d *points, int size)}\\
Calcul de la distance Point-Point entre un point et un ensemble de points. \cite{CRS1998,G1999}\\
\textbf{Algorithme :}\\
$DPP(p,points)=\min_{v\in{points}}\parallel p-v \parallel$\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{p} : le point pour lequel on cherche la distance avec l'ensemble de points.\\
\texttt{points} : l'ensemble de points.\\
\texttt{size} : taille de la liste de points.\\
\texttt{retour} : longueur point à point entre le point et l'ensemble de point.\\


\textbullet \texttt{double vf\_model\_hausdorff(vf\_model *m1, vf\_model *m2, int sampling)}\\
Calcul la distance de Hausdorff \cite{CRS1998,G1999} entre deux maillages.\\
La distance de Hausdorff est calculé entre deux ensembles de points. Le paramètre \texttt{sampling} peut prendre deux valeurs : \texttt{SAMPLING} et \texttt{NO\_SAMPLING}. Si \texttt{sampling==SAMPLING} alors les ensembles des points seront l'ensemble des sommets du maillage ainsi que l'ensemble des points fournis lors de l'échantillonnage de toutes les faces. Si \texttt{sampling==NO\_SAMPLING}, l'ensemble de points se réduit aux simple sommets du maillage.\\
\textbf{Algorithme :}\\
Soit $U$ et $V$ nos deux ensembles de points.\\
$Hausdorff(U,V)=\max(\max{u\in{U}}DPP(u,V),\max{v\in{V}}DPP(v,U))$
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m1} : le premier maillage.\\
\texttt{m2} : le second maillage.\\
\texttt{sampling} : paramètre qui gère l'échantillonnage ou non des faces.\\
\texttt{retour} : distance de Hausdorff entre \texttt{m1} et \texttt{m2}.\\


\textbullet \texttt{double vf\_model\_Emn\_DPP(vf\_model *m1, vf\_model *m2, int sampling)}\\
Calcul de l'erreur $E_mean\_DPP$ entre deux maillages.\cite{GH1997}\\
L'erreur $E_mean\_DPP$ se calcule entre deux ensembles de points.\\
Algorithme : \\
Soit $U$ et $V$ nos deux ensembles de points.\\
$$E_{MN\_DPP}(U,V)=\frac 1 {w_1+w_2} (\int_{u \in{U}} DPP^2(u,V) + \int_{v \in{V}} DPP^2(v,U))$$
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m1} : le premier maillage.\\
\texttt{m2} : le second maillage.\\
\texttt{sampling} : paramètre qui gère l'échantillonnage ou non des faces.\\
\texttt{retour} : erreur Emn\_DPP entre \texttt{m1} et \texttt{m2}.\\


\textbullet \texttt{double vf\_model\_triangle\_aspect\_ratio(vf\_model *m, int numface)}\\
Calcul de l'aspect ratio d'un triangle.\\
L'aspect ratio est le rapport entre le plus grand de ses côtés et la hauteur perpendiculaire à ce côté.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le maillage.\\
\texttt{numface} : numéro de la face à évaluer.\\
\texttt{retour} : évaluation de la face.\\


\textbullet \texttt{void vf\_model\_list\_triangle\_aspect\_ratio(vf\_model *m, double **list, int *size)}\\
Liste les valeurs des aspect ratio de toutes les faces.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le maillage.\\
\texttt{list} : aspect ratio de toutes les faces.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\


\textbullet \texttt{double vf\_model\_face\_size\_variation(vf\_model *m, int face1, int face2)}\\
Retourne la variation d'aire entre deux faces $\frac{\mathbf{A}_{face1}}{\mathbf{A}_{face2}}$.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le maillage.\\
\texttt{face1} : numero de la premiere face.\\
\texttt{face2} : numero de la seconde face.\\
\texttt{retour} : variation de la taille.\\


\textbullet \texttt{void vf\_model\_list\_radius\_incircle(vf\_model *m, double **list, int *size)}\\
Liste les longueurs des rayons des cercles inscrit pour chaque face.\\
~\\
\underline{Paramètres et type de retour :}\\
\texttt{m} : le maillage.\\
\texttt{list} : liste des longueurs des rayons des cercles inscrits à toutes les faces.\\
\texttt{size} : taille de la liste.\\
\texttt{retour} : aucun.\\

\bibliographystyle{unsrt}
\bibliography{manuel}

\end{document}
