Files
SAE11_2025/src/images.h
T

36 lines
911 B
C
Raw Normal View History

2025-12-06 19:44:44 +01:00
/* src/images.h
* Définition des structures pour la gestion et le découpage de l'image.
*/
2025-11-30 15:56:48 +01:00
#ifndef IMAGES_H
#define IMAGES_H
2025-12-06 19:44:44 +01:00
/* Une tuile est une partie de l'image source */
2025-11-30 15:56:48 +01:00
typedef struct {
char path[30];
2025-12-06 19:44:44 +01:00
/* Coordonnées de la tuile DANS l'image source */
2025-11-30 15:56:48 +01:00
int src_x, src_y;
int width, height;
2025-12-06 19:44:44 +01:00
int id; /* ID unique, de 0 à (L*C - 2) */
2025-11-30 15:56:48 +01:00
} tile_t;
2025-12-06 19:44:44 +01:00
/* Structure pour l'image source complète */
2025-11-30 15:56:48 +01:00
typedef struct {
int width;
int height;
char path[30];
} image_source_t;
2025-12-06 19:44:44 +01:00
/* Prototypes */
2025-11-30 15:56:48 +01:00
2025-12-06 19:44:44 +01:00
/* Obtient les informations de l'image choisie */
2025-11-30 15:56:48 +01:00
image_source_t get_image_source(int selected_index);
2025-12-06 19:44:44 +01:00
/* Crée et retourne un tableau de tuiles (découpage) */
2025-11-30 15:56:48 +01:00
tile_t **images_slice(image_source_t img_src, int rows, int cols);
2025-12-06 19:44:44 +01:00
/* Libère la mémoire allouée par images_slice (selon la règle free/malloc) */
2025-11-30 15:56:48 +01:00
void images_free_tiles(tile_t **tiles, int num_tiles);
2025-12-06 19:44:44 +01:00
#endif /* IMAGES_H */