Modification de la structure de route et définition d'une intersection.

This commit is contained in:
Yoann 2011-10-18 10:07:28 +02:00
parent c14f0fd916
commit db11a3ffb7

16
roads.c
View File

@ -28,12 +28,28 @@ void roads(Polygon* quartier) {
} }
/* Fonctions de Yoann suffixée par "Y" */ /* Fonctions de Yoann suffixée par "Y" */
/* Cette structure définie un noad de route. Les champs next et previous permettent d'avancer
* ou de reculler sur la route tant que l'on ne rencontre pas d'intersections avec une ou
* plusieurs autre routes. Dans ce dernier cas next er previous se retrouvent à NULL.
*/
typedef struct roadNodeY { typedef struct roadNodeY {
Vertex *v; Vertex *v;
struct roadNodeY *next; struct roadNodeY *next;
struct roadNodeY *previous; struct roadNodeY *previous;
short nbIntersec;
struct intersection *intersec;
} roadNodeY; } roadNodeY;
/* Définition d'une intersection. Permet de savoir quelle route est concernée par cette intersection.
* Elle permet également de changer la navigation por parcourir une nouvelle route.
* */
typedef struct intersection {
roadNodeY roadId; // Premier nœd de la route qui lui sert d'identifiant.
roadNodeY *next; // Nœd de la route juste après l'intersection.
roadNodeY *previous; // Nœd de la route juste avant l'intersection.
int zIndex; // Index sur l'axe z de la route.
} intersection;
const int maxSubDivision = 6; // Nombre de subdivisions max en hauteur et largeur. const int maxSubDivision = 6; // Nombre de subdivisions max en hauteur et largeur.
// TODO Fusionner les deux fonctions et retourner une paire de valeurs. // TODO Fusionner les deux fonctions et retourner une paire de valeurs.