Documentation de la bibliothèque MLV-3.1.0

MLV_turtle.h
Aller à la documentation de ce fichier.
1 /*
2  * This file is part of the MLV Library.
3  *
4  * Copyright (C) 2016 Adrien Boussicault
5  *
6  *
7  * This Library is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This Library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this Library. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
30 #ifndef __MLV__MLV_TURTLE_H__
31 #define __MLV__MLV_TURTLE_H__
32 
33 #include "MLV_color.h"
34 #include "MLV_image.h"
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
46 void MLV_leonardo_radian();
47 
54 void MLV_leonardo_degree();
55 
61 void MLV_leonardo_forward( float distance );
62 
73 void MLV_leonardo_right( double angle );
74 
85 void MLV_leonardo_left( double angle );
86 
97 void MLV_leonardo_go_to( int x, int y );
98 
114 void MLV_leonardo_orient_to( double angle );
115 
121 void MLV_leonardo_color( MLV_Color color );
122 
134 void MLV_leonardo_write( int write );
135 
142 
149 
158 double MLV_leonardo_orientation();
159 
166 
173 
180 
188 void MLV_leonardo_point_to( int x, int y );
189 
200 void MLV_leonardo_speed( int time );
201 
211 void MLV_leonardo_should_update_window( int yes );
212 
222 
230 void MLV_show_leonardo();
231 
239 void MLV_hide_leonardo();
240 
247 typedef struct _MLV_Turtle MLV_Turtle;
248 
254 
263 void MLV_free_turtle( MLV_Turtle* turtle );
264 
285 void MLV_turtle_attach_on_image( MLV_Turtle* turtle, MLV_Image* image );
286 
295 void MLV_turtle_radian( MLV_Turtle* turtle );
296 
305 void MLV_turtle_degree( MLV_Turtle* turtle );
306 
313 void MLV_turtle_forward( MLV_Turtle* turtle, float distance );
314 
326 void MLV_turtle_right( MLV_Turtle* turtle, double angle );
327 
339 void MLV_turtle_left( MLV_Turtle* turtle, double angle );
340 
352 void MLV_turtle_go_to( MLV_Turtle* turtle, int x, int y );
353 
368 void MLV_turtle_orient_to( MLV_Turtle* turtle, double angle );
369 
376 void MLV_turtle_color( MLV_Turtle* turtle, MLV_Color color );
377 
390 void MLV_turtle_write( MLV_Turtle* turtle, int write );
391 
400 void MLV_turtle_point_to( MLV_Turtle* turtle, int x, int y );
401 
408 int MLV_turtle_X_coordinate( MLV_Turtle* turtle );
409 
416 int MLV_turtle_Y_coordinate( MLV_Turtle* turtle );
417 
427 double MLV_turtle_orientation( MLV_Turtle* turtle );
428 
436 
444 
451 int MLV_turtle_is_writing( MLV_Turtle* turtle );
452 
453 
463 void MLV_draw_turtle_on_image( MLV_Turtle* turtle, MLV_Image* image );
464 
465 #ifdef __cplusplus
466 }
467 #endif
468 
469 #endif
int MLV_turtle_Y_coordinate(MLV_Turtle *turtle)
Renvoie la coordonée en Y de la tortue.
void MLV_turtle_write(MLV_Turtle *turtle, int write)
La tortue pose le pinceau et écrit.
void MLV_leonardo_color(MLV_Color color)
Change la couleur du pinceau de la tortue Leonardo.
int MLV_turtle_is_writing(MLV_Turtle *turtle)
Renvoie vrai si la tortue est en train d&#39;écrire.
Ce fichier définit tous les prototypes concernant les fonctions permettant d&#39;insérer des images...
Définit toutes les couleurs disponibles dans la bibliothèque MLV.
void MLV_turtle_degree(MLV_Turtle *turtle)
La tortue passée en paramètre utilise désormais les angles en degrés.
void MLV_leonardo_go_to(int x, int y)
La tortue Leonardo se déplace à la position passé en paramètre, sans changer son orientation...
void MLV_leonardo_should_update_window(int yes)
Demmande à la tortue Leonardo de mettre à jour l&#39;affichage à chaque déacement.
void MLV_turtle_left(MLV_Turtle *turtle, double angle)
La tortue tourne à gauche d&#39;un angle donné en paramètre.
MLV_Turtle * MLV_create_turtle()
Créer une tortue qui dessine sur la fenêtre d&#39;affichage.
void MLV_draw_turtle_on_image(MLV_Turtle *turtle, MLV_Image *image)
Dessine la tortue sur une image passée en paramètre.
int MLV_leonardo_Y_coordinate()
Renvoie la coordonée en Y de la tortuei Leonardo.
void MLV_turtle_color(MLV_Turtle *turtle, MLV_Color color)
Change la couleur du pinceau de la tortue passée en paramètre.
double MLV_leonardo_orientation_in_radian()
Renvoie l&#39;orientation de la tortue Leonardo en radians.
struct _MLV_Image MLV_Image
Définit le type Image dans la bibliothèque MLV.
Definition: MLV_image.h:53
double MLV_turtle_orientation_in_radian(MLV_Turtle *turtle)
Renvoie l&#39;orientation de la tortue en radians.
Uint32 MLV_Color
Définit un type couleur pour la bibliothèque MLV.
Definition: MLV_color.h:54
void MLV_show_leonardo()
Affiche à l&#39;écran Leonardo.
void MLV_turtle_radian(MLV_Turtle *turtle)
La tortue passée en paramètre utilise désormais les angles en radian.
void MLV_leonardo_point_to(int x, int y)
Tourne la tortue Leonardo pour qu&#39;elle regarde vers le point passé en paramètre.
void MLV_leonardo_right(double angle)
La tortue Leonardo tourne à droite d&#39;un angle donné en paramètre.
int MLV_leonardo_is_writing()
Renvoie vrai si la tortue Leonardo est en train d&#39;écrire.
void MLV_leonardo_radian()
La tortue Leonardo utilise désormais les angles en radian.
void MLV_turtle_right(MLV_Turtle *turtle, double angle)
La tortue à droite d&#39;un angle donné en paramètre.
void MLV_free_turtle(MLV_Turtle *turtle)
Libère la mémoire de la tortue.
void MLV_leonardo_forward(float distance)
La tortue Leonardo avance d&#39;un nombre de pixel donnée en paramètre.
double MLV_turtle_orientation(MLV_Turtle *turtle)
Renvoie l&#39;orientation de la tortue.
void MLV_leonardo_speed(int time)
Modifie la vitesse de la tortue Leonardo.
void MLV_turtle_attach_on_image(MLV_Turtle *turtle, MLV_Image *image)
Attache la tortue sur une image passé en paramètre.
void MLV_turtle_go_to(MLV_Turtle *turtle, int x, int y)
La tortue se déplace à la position passé en paramètre, sans changer son orientation.
double MLV_leonardo_orientation()
Renvoie l&#39;orientation de la tortue Leonardo.
int MLV_turtle_X_coordinate(MLV_Turtle *turtle)
Renvoie la coordonée en X de la tortue.
void MLV_leonardo_write(int write)
La tortue Leonardo pose le pinceau et écrit.
double MLV_turtle_orientation_in_degree(MLV_Turtle *turtle)
Renvoie l&#39;orientation de la tortue en degré.
void MLV_turtle_point_to(MLV_Turtle *turtle, int x, int y)
Tourne la tortue pour qu&#39;elle regarde vers le point passé en paramètre.
void MLV_turtle_orient_to(MLV_Turtle *turtle, double angle)
La tortue s&#39;oriente vers la direction donné en parmètre.
int MLV_leonardo_X_coordinate()
Renvoie la coordonée en X de la tortue Leonardo.
void MLV_leonardo_left(double angle)
La tortue Leonardo tourne à gauche d&#39;un angle donné en paramètre.
void MLV_hide_leonardo()
Cache la tortue Leonardo.
void MLV_draw_leonardo_on_image(MLV_Image *image)
Dessine la tortue Leonardo sur une image passée en paramètre.
void MLV_leonardo_degree()
La tortue Leonardo utilise désormais les angles en degrés.
void MLV_leonardo_orient_to(double angle)
La tortue Leonardo s&#39;oriente vers la direction donné en parmètre.
void MLV_turtle_forward(MLV_Turtle *turtle, float distance)
La tortue avance d&#39;un nombre de pixel donnée en paramètre.
double MLV_leonardo_orientation_in_degree()
Renvoie l&#39;orientation de la tortue Leonardo en degré.
struct _MLV_Turtle MLV_Turtle
Définit le type d&#39;une tortue.
Definition: MLV_turtle.h:247