Ich spiele mit Höhenkarten (Bitmaps) herum und versuche, einige meiner eigenen in meinem Spiel zu erstellen. Dazu muss ich einige grundlegende Zeichenmethoden implementieren. Ich habe schnell gemerkt, dass das Zeichnen von geraden Linien nicht so einfach ist, wie ich dachte.
Es ist ganz einfach, wenn Ihre Punkte eine X- oder Y-Koordinate haben oder wenn sie so ausgerichtet sind, dass Sie eine perfekt diagonale Linie zeichnen können. Aber in allen anderen Fällen ist es schwieriger.
Mit welchem Algorithmus bestimmen Sie, welche Pixel gefärbt werden müssen, damit eine "gerade" Linie entsteht?
quelle
to->red = br * (float)from->red;
auf diese folgendes:to->red = (br * (float)from->red) + ((1-br) * (float) to->red);
. Machen Sie dasselbe für Grün und BlauHier finden Sie eine äußerst einfache Methode zum Zeichnen von Linien. Die Funktion kann leicht geändert werden, um in Projekten verwendet zu werden.
quelle