This repository has been archived on 2023-11-03. You can view files and clone it, but cannot push or open issues or pull requests.
GINPA/Vue/creation.h

86 lines
3.3 KiB
C

#pragma once
#include "vue.h"
/**
* @brief Crée une fenêtre, et renvoie un pointeur dessus
*
* Cette fonction initialise une fenêtre en accord avec les variables globales définies dans 'graphique.h'.
*
* @return Pointeur sur la fenêtre fraîchement créée.
*/
sfRenderWindow* initialisationFenetre(void);
/**
* @brief Crée une texture de rendu, et renvoie un pointeur dessus
*
* Cette fonction initialise une texture en accord avec les variables globales définies dans 'graphique.h'.
*
* @param width Largeur de la texture de rendu à créer.
* @param height Hauteur de la texture de rendu à créer.
* @return Pointeur sur la texture fraîchement créée.
*/
sfRenderTexture* initialisationRenderTexture(const uint16_t width, const uint16_t height);
/**
* @brief Crée un cercle, et renvoie un pointeur dessus
*
* Cette fonction crée un cercle en accord avec les variables passées en paramètres, à savoir:
*
* @param position Vecteur contenant les positions 'x' et 'y' du cercle à créer.
* @param rayon Rayon du cercle à créer.
* @param couleur Couleur intérieure du cercle à créer.
* @return Pointeur sur le cercle fraîchement créé.
*/
sfCircleShape* creerCercle(const sfVector2f position, const float rayon, const sfColor couleur);
/**
*@brief Crée un rectangle, et renvoie un pointeur dessus
*
* Cette fonction crée un rectangle en accord avec les variables passées en paramètres, à savoir:
*
* @param positionHG Vecteur contenant les coordonées du coin HAUT GAUCHE du rectangle à créer.
* @param positionBD Vecteur contenant les coordonées du coin BAS DROIT du rectangle à créer.
* @param couleur Couleur intérieure du rectangle à créer.
* @return Pointeur sur le rectangle fraîchement créé.
*/
sfConvexShape* creerRectangle(const sfVector2f positionHG, const sfVector2f positionBD, const sfColor couleur);
/**
*@brief Crée une droite, et renvoie un pointeur dessus
*
* Cette fonction crée une droite entre 2 points donnés en paramètre, à l'aide de:
*
* @param position1 Vecteur contenant les coordonées du premier point.
* @param position2 Vecteur contenant les coordonées du second point.
* @param couleur Couleur de la droite à créer.
* @return Pointeur sur la droite fraîchement créée.
*/
sfVertexArray* creerDroite(const sfVector2f position1, const sfVector2f position2, const sfColor couleur);
/**
* @brief Crée un text, et renvoie un pointeur dessus
*
* Cette fonction crée un text en accord avec les variables passées en paramètres, à savoir:
*
* @param position Vecteur contenant les positions 'x' et 'y' du texte à créer.
* @param chaine Le texte à afficher.
* @param font La fonte à appliquer sur ce texte.
* @param taille La taille du texte à créer.
* @param couleur La couleur du texte à créer.
* @return Pointeur sur le texte fraîchement créé.
*/
sfText* creerTexte(const sfVector2f position, const char *const chaine, const sfFont *const font, const uint16_t taille, const sfColor couleur);
/**
*@brief Crée des routes entre tous les points d'une même 'Route'
*
* @param route Structure route pour laquelle on va relier les points.
* @param numRoute numéro de la route ci dessus.
* @param mode Mode dans lequel on se trouve pour l'affichage.
* @return Pointeur sur le tableau de "lignes" créé.
*/
sfVertexArray* creerDroiteFromRoute(Route route, uint8_t numRoute, Mode mode);