Estou brincando com mapas de altura (bitmaps), tentando criar alguns dos meus no meu jogo, e para isso preciso implementar alguns métodos básicos de desenho. Eu rapidamente percebi que desenhar linhas retas não é tão básico quanto eu pensava.
É simples se seus pontos compartilham uma coordenada X ou Y ou se estão alinhados para que você possa desenhar uma linha perfeitamente diagonal. Mas em todos os outros casos é mais complicado.
Qual algoritmo você usa para determinar quais pixels precisam ser coloridos para se tornar uma linha "reta"?
fonte
to->red = br * (float)from->red;
a este a seguir:to->red = (br * (float)from->red) + ((1-br) * (float) to->red);
. Faça o mesmo para respectivly verde e azulAqui está uma maneira extremamente simples de desenhar linhas. A função pode ser facilmente alterada para ser usada em projetos.
fonte