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 !

Sujet : Getpixel pour une image plus grande qu'un picturebox [ Archives Visual Basic / Graphique ] (rusty347)

mercredi 10 mai 2006 à 11:46:25 | Getpixel pour une image plus grande qu'un picturebox

rusty347

Bonjour a tous. Voila ,j'ai un petit soucis qui devrai pouvoir ce resoudre par une astuce que je ne trouve pas. Je m'explique , une partie de mon code permet de manipuler un image dans un picture box . J'ai deja implemanté pas mal de fonctions qui marchent parfaitement . Sachant que l'image est plus grande que le picturebox , je peux dors et deja bouger l'image par pointer/glisser , centrer l'image sur un pixel double cliqué etc. Je voudrai a present recuperer la couleur d'un pixel de l'image (qui n'est pas forcement ds la picturebox , puisque l'image est plus grande ) . En fait il sagit d'une bete detection de couleur! J'utilise Get/SetPixel et j'arrive a l'utiliser, seul probleme il ne gere que les pixels presents dans la picturebox et etant donné que mon image peu bouger ,je ne peux pas "superposer" (mettre au meme endroit)un pixel fixe (picturebox) et un pixel bougeable (imagebox) ! Par consequeant au lieu d'avoir une valeur fixe de couleur, jai une valeur qui varie en fonction du deplacement de mon image, ce qui est tout a fait logique du point de vue fonction . J'ai bien pensé a balayer l'image complete et faire une comparaison de couleur mais comme elle est plus grande que le picturebox je n'en ai qu'une petite partie. Idem pour la fonction picture.point qui ne gere que les picturebox. Connaitriez vous un moyen (astucieux ou classique) de regler ce soucis? Voila :) , pas evident de definir un probleme pareil quand on est plongé dans son trip, j'espere avoir été clair! Merci d'avance Flo

mercredi 10 mai 2006 à 13:10:54 | Re : Getpixel pour une image plus grande qu'un picturebox

Renfield

Administrateur CodeS-SourceS
n'utilises pas GetPixel (voire pas un pictureBox ^^)

récupères les bits de ton image dans un tableau (en utilisant GetDibBits, par exemple),
gain de performance et pas de soucis avec ta grande image.... que demander de plus ?



Renfield
Admin CodeS-SourceS - MVP Visual Basic

mercredi 10 mai 2006 à 13:49:56 | Re : Getpixel pour une image plus grande qu'un picturebox

rusty347

ok merci, je vais etudier de pres cette fonction aan d'accepter la réponse Pour ce qui est de ne pas utiliser de picturebox cela m'embete un peu car mon prog est bien avancé et cela chamboulerai tout mon code ^^! Allez go, direction google recherche : GetDiBits Je vous tiens au courant de l'evolution du truc.

mercredi 10 mai 2006 à 14:05:19 | Re : Getpixel pour une image plus grande qu'un picturebox

Warning

Administrateur CodeS-SourceS
Ben deja je te conseil de dessiner directement l'image déplaçeable dans la picturebox plutot que d'utiliser un image'box' dans un picturebox.. Ainsi tu pourra utiliser l'instruction point à l'exterieur de ta picturebox.

Pour dessiner l'image dans la picturebox utilise picturbox1.PaintPicture (...)
@++

Warning
Admin Codes-Sources.com
http://www.decompiler-vb.net/


mercredi 10 mai 2006 à 15:04:01 | Re : Getpixel pour une image plus grande qu'un picturebox

Renfield

Administrateur CodeS-SourceS
un contrôle Image dans un contrôle PictureBox !
j'avais même pas compirs ça comme ça :o 

faut vraiment que je me repose, je crois ^^
faut dire.... j'imaginais pas la gestion de la chose ainsi :
on perd tout "avantage" des fonctions de dessin du picturebox ^^

bien que d'accord avec le remaniement architectural proposé par Warning, je vais tout de même proposer une solution permettant d'exploiter GetPixel, dans l'êtat actuel des choses :

Crée un DC (CreateCompatibleDC)
associe tim Image1.Handle à ce DC (SelectObject)
ensuite, manipule te pixels librement (Get/SetPixel) via ton DC
replace le hBmp d'origine dans ton DC
fais un brin de ménage (DeleteDC)
et voilà

Renfield
Admin CodeS-SourceS - MVP Visual Basic

mercredi 10 mai 2006 à 15:15:29 | Re : Getpixel pour une image plus grande qu'un picturebox

Warning

Administrateur CodeS-SourceS
lol pas pour les débutants en tout cas !

Warning
Admin Codes-Sources.com
http://www.decompiler-vb.net/


mercredi 10 mai 2006 à 15:17:16 | Re : Getpixel pour une image plus grande qu'un picturebox

Renfield

Administrateur CodeS-SourceS
certes non ^^

Renfield
Admin CodeS-SourceS - MVP Visual Basic

mercredi 10 mai 2006 à 15:42:57 | Re : Getpixel pour une image plus grande qu'un picturebox

rusty347

Comme vous l'avez compris , je ne suis pas expert , disons que je sais a peu pres programmer et que j'arrive a mes fins souvent par des moyens detournés (pas forcement les plus propres et les plus rapides). En ce qui concerne ma gestion de l'image dans la picture box , je me suis inspiré de nombreux codes de ce site , j'ai donc pensé que c'etait une bonne maniere de faire (Imagebox dans Picturebox , apparament je me suis trompé)! Ceci dit meme si ce n'est pas tres orthodoxe , cela marche plutot bien ^^. Mon image fait tout de meme 15000*9000 (120Mo) ^^ Je vais donc dans un premier temps essayer vos deux propositions , et si cela ne marche pas , je n'aurai qu'a revoir la totalité de mon code (sniiiiiiiiiifff etant donné que les 3/4 des nombreuses fonctions de mon prog dependent de ce systeme de deplacement,imagebox ds picturebox) Allez je retourne bosser et encore merci pour vos propositions A SUIVRE .....



Cette discussion est classé dans : couleur, image, grande, pixel, picturebox


Répondre à ce message

Sujets en rapport avec ce message

Image dans un picturebox [ par Hakushi ] Je suis en train de faire un projet pour afficher des images dans un picturebox mais quand l'image est plus grande que le form, je n'ai encore trouvé Chargement couleur pixel d'image dans tableau [ par batrox ] Bonjour,Mon problème est le suivant :J'ouvre une fenètre html dans une form. j'aimerais composer un tableau contenant les couleur de chaque pixel de l Changer une couleur dans une image [ par colon ] Je voudrais changer la couleur du contenu d'une forme irrégulière (un héxagone par exemple) par une autre couleur sans avoir à balayer mon image pixel Comment récuperer la couleur d'une pixel d'un pictureBox dans .Net [ par neoleo ] Salut à touscomment faire pour lire la couleur d'une pixel bien précise en .Net En vb6 on pouvais faire Couleur = MyPictureBox.Point(x,y) PIXEL, quelle est ta couleur? [ par 3dflix ] bonjour,je souhaiterai connaitre la couleur (rvb, hexa ou autre) d'un pixel d'une image sans ke celle ci soit affichée a l'écran. tout ce que g trouvé pixels [ par CORBnet ] bonjourje cherche un code qui dit que :si le pixel de coordonné X et Y du picturebox 1 est de la même couleur que celui de coordonnée X et Y du pictur [.net 2003] [ par gayelle ] Bonjour!!!Je suis au bord de la depression...Je doit récuperer la couleur de tout les pixels d'une image.J'ai decouvert la superbe fonction GetPixel(x Problème sur le traitement de l'image : besoin d'un peu d'aide ... [ par copyrightx ] Voilà j'ai une image dans un picturebox et une fonction api nommée "TransparentBlt". Cette fonction permet de copier une image avec une couleur transp afficher grande image picturebox [ par ipama7 ] bonjour,Je souhaite afficher dans un picturebox une image de 6000*6000 que je construis à l'aide d'une succession de rectanglesEn passant par un bitma Localiser un pixel coloré dans une image [ par cymoud ] Bonjour,j'ai besoin de chercher la position d'un ou plusieurs pixels dans une image en indiquant une couleur</


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

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

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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é.