GET ET SETDIBITS

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
- - Dernière réponse : steve_clamage
Messages postés
475
Date d'inscription
dimanche 3 octobre 2004
Statut
Membre
Dernière intervention
11 août 2006
- 2 août 2006 à 22:36
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/38788-get-et-setdibits

steve_clamage
Messages postés
475
Date d'inscription
dimanche 3 octobre 2004
Statut
Membre
Dernière intervention
11 août 2006
2 -
En tout cas je te conseil d'eviter les optimisations de ce genre, à savoir itérer à rebourd et faire x*2 + x au lieu de x*3, car au mieux le gain est presque invisible, au pir tu empeches le compilateur de faire de vrais optimisations et dans tout les cas ca rend le code moins lisible.
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12 -
Mais ce n'est qu'un simple exemple. Bien sûr que j'aurais pu modifier tel et tel pixel sans avoir recour à une boucle (ou une mais petite). Ce que je voulais faire, c'est une simple manipulation dans le buffer (ici changer les couleurs de chaque pixels) tout en montrant le calcule pour trouver une position x et y dans le buffer. Non ce n'est pas ce qu'il y a de plus optimisé mais je voulais montrer cette fonctionnalité le plus simplement possible.
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7 -
Oui, mais ce n'est pas une raison pour le faire dans un boucle.
Je suis pss du tout ton raisonnement:
-d'une part tu converge vers 0 parce que c'est soit-disant plus rapide (une instruction en moins)
-d'autre part tu ralentis considérablement la boucle en faisant à chaque tour un calcul inutile
SAKingdom
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12 -
D'après ce que j'en sais, une lecture séquencielle signifie lire les valeurs dans l'ordre une à la suite de l'autre. C'est évident que cette méthode va beaucoup plus vite que de calculer à chaque tour de boucle la position x et y mais il devien impossible d'optenir une position bien précise en un calcule. Il est toujours intéressent de savoir comment aller à la position x et y de son image à partir du buffer. Ça permet de modifier bien spécifiquement son image.
cs_Omeya
Messages postés
28
Date d'inscription
dimanche 4 mai 2003
Statut
Membre
Dernière intervention
10 août 2006
-
Je crois avoir trouvé... Je ne sais pas si c'est ça, mais "séquentiellement" signifie incrémenter ou décrémenter un pointeur sur le tableau LPBYTE. Dites-moi si j'ai faux.
En tout cas, j'ai testé la méthode séquentielle et ça marche.