Bonjour à tous, encore moi.
Bon je ne me souviens plus qu'est ce qui m'a motivé à faire cette source, en tout cas ça faisait longtemps que j'en avait envie mais je n'était jamais passé à l'action.
Alors voilà :
AntiAliasPoint > Place un point à des coordonées de type Single, donc avec décimales.
AntiAliasLine > Trace une ligne antialiasée, sa crénelure quoi, lissée. Le résultat n'est pas entièrement parfait mais ça le fait je trouve.
A noter que l'objet dans lequel vous dessinez la ligne ou le point doivent etre en ScaleMode=Pixel
Explications du fonctionnement :
La ligne antialiasée n'est qu'une ligne normale, où les points sont placés à des coordonées avec décimales (donc en utilisant AntiAliasPoint) (pour le tracage de la ligne je me suis servi d'un exemple de quelqu'un dont j'ai oublié le nom)
Les points antialiasés : en fait le point sera placé entre 4 pixels, et on calcule le pourcentage de l'aire du point dans chacun des 4 pixels (ce qui nous donne un coeff qui servira à appliquer la couleur sur les pixels déjà existants).
Pour résumer, je cite Vlad2i :
- On dessine un point a un emplacement (X,Y) défini par des nombres décimaux (pas entiers)
- On dessine donc au moins le double de la figure avec des pixels
- La somme des intensités points ainsi dessinnés = la somme du pixel normal