/* POLYGON.H: Fichier en-tête du code de remplissage de polygone */ /* Décrit un seul point (utilisé pour un seul point) */ struct Point { int X; /* coordonnée X */ int Y; /* coordonnée Y */ }; /* Décrit une série de points (utilisée pour stocker la liste de points qui décrit un polygone; chaque point est supposé se connecter aux deux points adjacents, et le dernier point est supposé se connecter au premier) */ struct PointListHeader { int Length; /* nombre de points */ struct Point * PointPtr; /* pointeur sur la liste de points */ }; /* Décrit le début et la fin des coordonnées X d'une seule ligne horizontale */ struct HLine { int XStart; /* coordonnée X du pixel le plus à gauche dans la ligne */ int XEnd; /* coordonnée X du pixel le plus à droite dans la ligne */ }; /* Décrit une série d'une longueur "Length" de lignes horizontales, toutes sont supposées être sur des lignes d'affichage contiguës en commençant à YStart et en allant vers le bas (utilisé pour décrire un polygone numérisé en code d'affichage de bas niveau dépendant du matériel) */ struct HLineList { int Length; /* nombre de lignes horizontales */ int YStart; /* coordonnée Y de la ligne supérieure*/ struct HLine * HLinePtr; /* pointeur sur la liste des lignes horizontales */ }; =