void create_postscript_contours_bezier2(Liste_Contours c, char *file_name, int height, int width, char *repository)
Crée un file_input EPS pour des courbes de Bézier de degré 2.
Definition contour.c:1267
void turn_left(Robot *r)
Tourne le robot à gauche (changement d'orientation).
Definition contour.c:83
void create_postscript(Contour c, char *file_name, int height, int width)
Génère un file_input EPS contenant la représentation graphique d'un contour en mode trait.
Definition contour.c:794
void create_postscript_contours(Liste_Contours c, char *file_name, int height, int width, char *repository)
Génère un file_input EPS pour une liste de contours donnés.
Definition contour.c:901
void new_orientation(Robot *r, int x, int y, Image I)
Calcule la nouvelle orientation du robot en fonction de son environnement immédiat.
Definition contour.c:215
Contour simplification_douglas_peucker_bezier2(Contour C, int j1, int j2, double d)
Simplifie un contour par la méthode des courbes de Bézier de degré 2.
Definition contour.c:1202
void create_postscript_contours_bezier3(Liste_Contours c, char *file_name, int height, int width, char *repository)
Crée un file_input EPS pour des courbes de Bézier de degré 3.
Definition contour.c:1548
void init_robot(Robot *r, int x, int y, Orientation o)
Initialise le robot à une position donnée avec une orientation spécifique.
Definition contour.c:40
void create_postscript_fill(Contour c, char *file_name, int height, int width)
Génère un file_input EPS contenant la représentation graphique d'un contour en mode remplissage.
Definition contour.c:846
void contours_data_simplification(Liste_Contours c)
Affiche les données des contours simplifiés sur le terminal.
Definition contour.c:672
void position(Robot *r, int *x, int *y)
Récupère la position actuelle du robot.
Definition contour.c:136
Bezier3 conversion_bezier2_to_bezier3(Bezier2 b2)
Convertit une courbe de Bézier de degré 2 en une courbe de degré 3.
Definition contour.c:1063
Orientation orient(Robot *r)
Récupère l'orientation actuelle du robot.
Definition contour.c:170
void contours_data_bezier(Liste_Contours c)
Affiche des informations sur les courbes de Bézier pour les contours sur le terminal.
Definition contour.c:711
void turn_right(Robot *r)
Tourne le robot à droite (changement d'orientation).
Definition contour.c:109
Contour algo_contour(Image I, char *file_name, char *repository)
Calcule et extrait les contours d'une image.
Definition contour.c:421
void pbm_contour_to_txt(Liste_Contours c, char *file_name, char *repository)
Sauvegarde les contours extraits dans un file_input texte.
Definition contour.c:567
int ordinate(Robot *r)
Récupère la coordonnée y de la position actuelle du robot.
Definition contour.c:159
Image mask_image(Image I)
Crée un masque de l'image mettant en évidence les pixels de départ pour les contours.
Definition contour.c:350
Point calcul_ct_bezier3(Bezier3 b3, double t)
Calcule le point sur une courbe de Bézier de degré 3.
Definition contour.c:1043
double distance_point_bezier3(Point P1, Bezier3 b3, double ti)
Calcule la distance entre un point et une courbe de Bézier de degré 3.
Definition contour.c:1457
Point find_departure_pixel(Image I)
Trouve les coordonnées du premier pixel noir avec un voisin blanc au-dessus.
Definition contour.c:303
Orientation
Definition contour.h:21
@ Est
Definition contour.h:21
@ Nord
Definition contour.h:21
@ Sud
Definition contour.h:21
@ Ouest
Definition contour.h:21
void position_forward(Robot *r, int *x, int *y)
Récupère la position de la case directement devant le robot.
Definition contour.c:184
double distance_point_bezier2(Point P1, Bezier2 b2, double ti)
Calcule la distance entre un point et une courbe de Bézier de degré 2.
Definition contour.c:1184
bool image_white(Image I)
Vérifie si l'image est entièrement blanche.
Definition contour.c:390
Contour simplification_douglas_peucker_bezier3(Contour C, int j1, int j2, double d)
Simplifie un contour par la méthode des courbes de Bézier de degré 3.
Definition contour.c:1482
int abscissa(Robot *r)
Récupère la coordonnée x de la position actuelle du robot.
Definition contour.c:148
Bezier2 bezier2_approximation(Contour c, int j1, int j2)
Approxime un contour par une courbe de Bézier de degré 2.
Definition contour.c:1108
Bezier3 bezier3_approximation(Contour c, int j1, int j2)
Approxime un contour par une courbe de Bézier de degré 3.
Definition contour.c:1345
Point calcul_ct_bezier2(Bezier2 b2, double t)
Calcule le point sur une courbe de Bézier de degré 2.
Definition contour.c:1022
Contour simplification_douglas_peucker(Tableau_Point T, int j1, int j2, double d)
Simplifie un contour en utilisant la méthode de simplification des segments de Douglas-Peucker.
Definition contour.c:965
Liste_Contours algo_contours(Image I)
Extrait tous les contours d'une image.
Definition contour.c:506
void contours_data(Liste_Contours c)
Affiche les données des contours sur le terminal.
Definition contour.c:629
void contours_data_bezier3(Liste_Contours c)
Affiche des informations sur les courbes de Bézier de degré 3 sur le terminal.
Definition contour.c:751
void move_forward(Robot *r)
Avance le robot d'une position dans la direction de son orientation actuelle.
Definition contour.c:54
Déclaration des fonctions pour geometry.c.
Déclaration des fonctions pour image.c.
Déclaration des fonctions pour sequence_point.c.
Profil d'une courbe de Bézier de degré 2.
Definition geometry.h:54
Profil d'une courbe de Bézier de degré 3.
Definition geometry.h:64
Structure représentant une image PBM.
Definition sequence_point.h:43
Definition sequence_point.h:27
Type Point.
Definition geometry.h:34
int x
Definition contour.h:24
Orientation o
Definition contour.h:25
Definition sequence_point.h:55