Documentation de la bibliothèque MLV-0.5

MLV_shapes.h

Aller à la documentation de ce fichier.
00001 /*
00002  *   This file is part of the MLV Library.
00003  *
00004  *   Copyright (C) 2010 Adrien Boussicault, Marc Zipstein
00005  *
00006  *
00007  *    This Library is free software: you can redistribute it and/or modify
00008  *    it under the terms of the GNU General Public License as published by
00009  *    the Free Software Foundation, either version 3 of the License, or
00010  *    (at your option) any later version.
00011  *
00012  *    This Library is distributed in the hope that it will be useful,
00013  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  *    GNU General Public License for more details.
00016  *
00017  *    You should have received a copy of the GNU General Public License
00018  *    along with this Library.  If not, see <http://www.gnu.org/licenses/>.
00019  */
00020 
00033 #ifndef __MLV_FIGURES_H__
00034 #define __MLV_FIGURES_H__
00035 
00036 #include "MLV_color.h"
00037 #include "MLV_image.h"
00038 
00039 #ifdef __cplusplus
00040 extern "C" {
00041 #endif
00042 
00051 void MLV_draw_circle(int x, int y, int radius, MLV_Color color);
00052 
00062 void MLV_draw_filled_circle(int x, int y, int radius, MLV_Color color);
00063 
00073 void MLV_draw_ellipse(
00074         int x, int y, int radius_x, int radius_y, MLV_Color color
00075 );
00076 
00086 void MLV_draw_filled_ellipse(
00087         int x, int y, int radius_x, int radius_y, MLV_Color color
00088 );
00089 
00098 void MLV_draw_polygon(
00099         const int* vx, const int* vy, int npoints, MLV_Color color
00100 );
00101 
00110 void MLV_draw_filled_polygon(
00111         const int* vx, const int* vy, int npoints, MLV_Color color
00112 );
00113 
00123 void MLV_draw_bezier_curve(
00124         const int* vx, const int* vy, int npoints, MLV_Color color
00125 );
00126 
00135 void MLV_draw_filled_polygon(
00136         const int* vx, const int* vy, int npoints, MLV_Color color
00137 );
00138 
00149 void MLV_draw_rectangle(int x, int y, int width, int height, MLV_Color color);
00150 
00161 void MLV_draw_rectangle(int x, int y, int width, int height, MLV_Color color);
00162 
00173 void MLV_draw_filled_rectangle(
00174         int x, int y, int width, int height, MLV_Color color
00175 );
00176 
00186 void MLV_draw_line(int x1, int y1, int x2, int y2, MLV_Color color);
00187 
00195 void MLV_draw_pixel(int x, int y, MLV_Color color);
00196 
00205 void MLV_draw_point(int x, int y, MLV_Color color);
00206 
00212 void MLV_save_screen();
00213 
00219 void MLV_load_screen();
00220 
00221 
00222 
00223 
00224 
00225 
00227 // Drawing operation on images                                               //
00229 
00240 void MLV_draw_circle_on_image(
00241         int x, int y, int radius, MLV_Color color, MLV_Image* image
00242 );
00243 
00254 void MLV_draw_filled_circle_on_image(
00255         int x, int y, int radius, MLV_Color color, MLV_Image* image
00256 );
00257 
00268 void MLV_draw_ellipse_on_image(
00269         int x, int y, int radius_x, int radius_y, MLV_Color color, MLV_Image* image
00270 );
00271 
00282 void MLV_draw_filled_ellipse_on_image(
00283         int x, int y, int radius_x, int radius_y, MLV_Color color, MLV_Image* image
00284 );
00285 
00295 void MLV_draw_polygon_on_image(
00296         const int* vx, const int* vy, int npoints, MLV_Color color, MLV_Image* image
00297 );
00298 
00309 void MLV_draw_filled_polygon_on_image(
00310         const int* vx, const int* vy, int npoints, MLV_Color color, MLV_Image* image
00311 );
00312 
00324 void MLV_draw_bezier_curve_on_image(
00325         const int* vx, const int* vy, int npoints, MLV_Color color, MLV_Image* image
00326 );
00327 
00338 void MLV_draw_filled_polygon_on_image(
00339         const int* vx, const int* vy, int npoints, MLV_Color color, MLV_Image* image
00340 );
00341 
00353 void MLV_draw_rectangle_on_image(
00354         int x, int y, int width, int height, MLV_Color color, MLV_Image* image
00355 );
00356 
00368 void MLV_draw_rectangle_on_image(
00369         int x, int y, int width, int height, MLV_Color color, MLV_Image* image
00370 );
00371 
00383 void MLV_draw_filled_rectangle_on_image(
00384         int x, int y, int width, int height, MLV_Color color, MLV_Image* image
00385 );
00386 
00397 void MLV_draw_line_on_image(
00398         int x1, int y1, int x2, int y2, MLV_Color color, MLV_Image* image
00399 );
00400 
00410 void MLV_draw_pixel_on_image(int x, int y, MLV_Color color, MLV_Image* image);
00411 
00421 void MLV_draw_point_on_image(int x, int y, MLV_Color color, MLV_Image* image);
00422 
00423 
00424 #ifdef __cplusplus
00425 }
00426 #endif
00427 
00428 #endif