Je joue avec des cartes de hauteur (bitmaps), j'essaie de créer certaines des miennes dans mon jeu, et pour cela, je dois implémenter quelques méthodes de dessin de base. J'ai rapidement réalisé que dessiner des lignes droites n'était pas aussi basique que je le pensais.
C'est simple si vos points partagent une coordonnée X ou Y, ou s'ils sont alignés afin que vous puissiez dessiner une ligne parfaitement diagonale. Mais dans tous les autres cas, c'est plus délicat.
Quel algorithme utilisez-vous pour déterminer quels pixels doivent être colorés pour qu'il devienne une ligne "droite"?
la source
to->red = br * (float)from->red;
ce qui suit:to->red = (br * (float)from->red) + ((1-br) * (float) to->red);
. Faites de même pour le vert et le bleu respectivementVoici une manière extrêmement simple de dessiner des lignes. La fonction peut facilement être modifiée pour être utilisée dans des projets.
la source