Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

POINTS ET LIGNES AVEC ANTIALIAS (LIGNES "LISSÉES"/ANTICRÈNELÉES)


Information sur la source



Description

Cliquez pour voir la capture en taille normale
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
 

Source

  • Lancez le code, cliquez sur la picturebox et bougez votre souris en gardant le bouton gauche enfoncé.
Lancez le code, cliquez sur la picturebox et bougez votre souris en gardant le bouton gauche enfoncé.

Conclusion

Je pense que je vais avoir le droit à pas mal de suggestions d'améliorations (c'est souvent le cas pour une source graphique), alors je les attend avec impatience ;-)

MadMatt
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de MadM@tt le 12/08/2006 18:25:46

Pour voir un exemple de ce que ça donne :
http://www.vbfrance.com/code.aspx?ID=39061

signaler à un administrateur
Commentaire de Warning le 13/08/2006 18:43:38 administrateur CS

Très bonne source. Cependant, impossible de tracer une ligne verticale completement droite.

signaler à un administrateur
Commentaire de Renfield le 14/08/2006 09:37:14 administrateur CS

sympa... en manipulant directement tes bits en mémoire, tu gagnerais un certain temps...
(plutot que d'utiliser GetPixel)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Retour de ligne [ par maw ] Bonjour à tousUne question de débutant :comment faire un retour de ligne dans mon code ?celà m'éviterait des lignes trop longues.Merçi Recupere une donnée depuis une dbgrid [ par Cameleon ] a partir d'une requete sql je remplis une dbgrid, lorsque je selectionne une ligne je voudrais recuperer une valeur dans une cellule de cette ligne, j récupurer une valeur d'une ligne sélectionnée dans une dbgrid [ par Cameleon ] A partir d'une requete SQL je rempli une dbgrid, quand je selectionne une ligne je voudrais en recupérer une valeur d'une colonne, je ne vois pas comm recherche d'une ligne d'erreur [ par Bernard ] Je cherche à localiser de manière précise les erreurs d'exécution de mes programmes VB. J'aimerais retrouver la ligne où s'est produite une erreur, af Lire un TEXTBOX [ par pedro ] Salut à tous.Comment lire dans un TEXTBOX ligne par ligne. J'aimerais que le programme lise chaque ligne et qu'il me le mette dans un tableau.(Tab[i]) Unbound DBGRID [ par Pat ] Salut, j'utilise un dbgrid en mode Unbound et j'ai mis un boutton Annuler au cas où un usager veut annuler ses modifications. Lorsqu' il ajoute une charger un fichier dans une table [ par maryem ] Bonjour, je suis entrain de travailler avec le vb5 et une base de données sous accessemon problème est que pour une table, j'ai les données sous un fi


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.