IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++/CLI Discussion :

Comment gérer et travailler avec plusieurs images en mémoire.


Sujet :

C++/CLI

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Par défaut Comment gérer et travailler avec plusieurs images en mémoire.
    Salut à vous tous,

    Quelqu'un aurait-il déjà gérer plusieurs fichiers graphiques de taille identique en mémoire et de "travailler" sur ces fichiers "juxstaposés pixel à pixel" de telle sorte qu'ils n'en font qu'un et enfin d'afficher à l'écran une partie du résultat obtenu après y avoir travaillé?

    Le fichier en annexe montre ce que je voudrais pouvoir faire.

    J'utilise VC++ 2005 Express.
    Merci d'avance à ceux qui voudront bien me répondre.
    Images attachées Images attachées  

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 59
    Par défaut
    bonjour,

    Je pense que tu devrais d'abord chercher la fonction qui te permet à partir de 2 images, de les associer pour n'en former qu'une image cible.

    Ce point de départ te permettra ensuite lorsque tu déplaceras la fenetre de ne gérer que des positions de points (fenetre et images) sans forcéement toutes les réunir en mémoires. Puis par récurssivité de les associer 2 par 2 lorsque la fenetre se trouve par exemple à cheval sur 4 images au plus.

    En espérant te donner des idées.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Par défaut Comment gérer et travailler avec plusieurs images en mémoire.
    Bonsoir helico2,

    Tu as compris le problème. Je suis en VC++2005 Express et je ne suis pas certain de disposer des librairies qui me permettent de créer cette fonction.

    Il me semble avoir lu que dans les MFC que la classe "CImage" donnerait des possibilités que ne donne pas VC++2005 Express ou est-ce que je me trompe ?

    Quel langage utilises-tu ?

    Merci de ta réponse.

    Ah, j'oubliais; tes exemples du "Clic souris" m'ont fait remarquer les différences entre "PointToClient et PointToScreen". Débutant en VC++ 2005 Express, je ne comprend encore que très peu le "jargon" du C++, mais cela viendra. Merci encore.


  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 59
    Par défaut
    Bonjour,
    Ma 1ère idée est surement réalisable, mais sans utiliser CImage, il reste un moyen trés simple pour obtenir l'affichage de plusieurs images en mosaique dans une fenetre d'affichage.

    2ème idée:
    1-créer une fenetre de visualisation sur une Form: exemple avec un Panel
    2-insérer dedans les images en les plaçant en mosaiques dans l'IDE: plusieurs PictureBox bord à bord insérer à l'intérieur du Panel
    3-suivant l'évènement voulue (déplacement de souris ou autre ...), modifier les coordonnées Origine de chaque PictureBox: ->Left et ->Top
    Cette modification de position sera immédiatement retranscrite en visu dans le Panel.

    Remarques la 2ème dée:
    1-cette méthode reste très simple, mais à l'inconvénient de rendre l'affichage saccadé par bloc rectangulaire, comme les images de téléviseur numérique lorsque le faisceau de réception est perturbé. On aperçoit les bords entre chaque images.

    autre idée:
    Je reste toutefois convaincu qu'il reste une meilleure méthode pouvant être utilisé avec une Class CImage pour faire le clipping (découpage). Il suffit de créer peut-être un CDC (device context) pour copier toutes les images à partir de CImage en les placant bord à bord dans le CDC. Puis de sauver une image cible en définissant une zone rectangulaire dans le CDC et de le recopier sur un control visible, tel un Panel ou un pictureBox.

    Les effets de bors auront forcéement disparus lors du déplacement.


    ->Commence par programmer la 2ème idée, puis modifie là pour essayer l'autre idée.

    Je suis sur que d'autre connectés auront encore des idées, peut-être plus pertinentes pour réaliser la concaténation de plusieurs images en une...

    Une question a mon tour: que signifie [Délestage] car je ne suis pas un habituer des forum ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Par défaut Comment gérer et travailler avec plusieurs images en mémoire.
    Salut Helico2,

    Merci de tes idées, je vais y réfléchir mais le problème est que tout d'abord je suis débutant en C++, pas en programation j'ai quelques années derière moi, mais j'utilise WinDEv 11 (cours pour le graphique) pour le développement de la banque de donnée qui est dans ce domaine un "must" à mon avis et qui est plus "user friendly" de ce que j'ai réalisé jusqu'à aujourd'hui.

    Je suis également débutant sur le forum. Je crois que pour mes premiers messages je ne les ai peut-être pas déposés sur le bon forum et j'ai voulu les déplacer. Voilà pourquoi j'ai cliqué sur délestage croyant les supprimer.

    Je ne sais donc pas non plus qu'entraîne "Délestage".

    Bien à toi et à bientôt.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Par défaut Comment gérer et travailler avec plusieurs images en mémoire.
    Bonjour Hélico2,

    Après avoir réfléchis à tes solutions je serais tenté d'utiliser la 3ème (essais de la 1ère en cours pas tout à fait concluant mais je persiste encore pour le moment).

    Si je choisi d'utiliser la classe CImage est-elle en "standard" dans la version Express de VC++ ? Comment puis-je le vérifier ? Si elle fait partie de MFC je ne suis pas certain de pouvoir l'utiliser ou dois-je la créer de toute pièce ?

    Question : Est-il possible d'acquérir séparément les MFC et sont-elles installables sur VC++ 2005 Express ou uniquement sur une version VC++ "Full" ?

    Merci de ta réponse.

Discussions similaires

  1. Comment faire pour travailler avec ce genre d'image
    Par lahcenlahcen dans le forum VB.NET
    Réponses: 4
    Dernier message: 15/05/2012, 15h42
  2. Réponses: 7
    Dernier message: 19/07/2007, 14h14
  3. Réponses: 1
    Dernier message: 06/03/2007, 20h29
  4. Comment comparer un texte avec plusieurs apostrophes
    Par electrosat03 dans le forum Access
    Réponses: 2
    Dernier message: 13/02/2006, 12h46
  5. Réponses: 5
    Dernier message: 29/10/2004, 16h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo