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

MFC Discussion :

Dessiner une forme quelconque.


Sujet :

MFC

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 14
    Points : 10
    Points
    10
    Par défaut Dessiner une forme quelconque.
    Bonjour à tous,

    Je me tourne une fois de plus vers vous, car je me pose des questions sur le dessin dans une view.

    J'aimerais dessiner avec une brosse (CBrush) dans des formes non-conventionnelles, par exemple une "part de camembert" (une portion de disque).

    Malheureusement je ne trouve pas beaucoup d'explications sur le dessin. J'ai lu quelque chose sur le path and clip, où le principe serait de dessiner le contour de la zone à dessiner (dans mon cas, arc de cercle + 2 traits ), puis de remplir la zone limitée. Seulement j'aimerais avoir plus de précision.

    Merci beaucoup pour votre aide.

  2. #2
    Membre éprouvé
    Avatar de Gabrielly
    Inscrit en
    Juin 2004
    Messages
    722
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 722
    Points : 1 128
    Points
    1 128
    Par défaut
    Tu pourrais implementer un objet courbe et tu dessines à main levée.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    En fait je voudrais programmer le dessin, pour faire apparaitre la forme où bon me semble. Et la taille de la part de camembert doit varier en fonction de paramètres.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Bien, je suis parvenu à mes fins, aussi je post ma démarche, peut-être cela sera utile à quelqu'un.

    Pour dessiner une forme quelconque, j'ai dessiné le contour de celle-ci, puis j'ai transformé ce contour en une région.
    Le contour (path, en anglais), doit être dessiné entre l'appel à deux fonctions du dc: BeginPath() et EndPath().

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    hDC->BeginPath();
    //Dessin du contour, ici un cercle pour l'exemple
    hDC->Ellipse(0,0,x,y);
    hDC->EndPath();
    Ensuite, pour transformer le contour en région, il faut avoir déclarer une région avec la classe CRgn, et utiliser la méthode createFromPath(CDC *) de cette région.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Crgn rgn;
    hdc->beginPath();
    //Dessin du contour
    hdc->endPath();
    rgn.createFromPath(hdc);
    Enfin, pour l'afficher, j'utilise la fonction FillRgn du DC, avec une brush.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PPT-2010] Insertion image dans une forme quelconque (PP 2010)
    Par jemalu dans le forum Powerpoint
    Réponses: 5
    Dernier message: 03/07/2013, 23h39
  2. Dessiner une forme à partir de cercles
    Par CyBeRoN dans le forum Traitement d'images
    Réponses: 1
    Dernier message: 05/06/2013, 13h49
  3. [XL-2003] Dessiner une forme et l'animer:erreur 1004
    Par Donville dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/03/2013, 09h47
  4. Centre de gravité d'une forme quelconque
    Par kalimira dans le forum Mathématiques
    Réponses: 4
    Dernier message: 16/04/2012, 15h04
  5. [Débutant] Modéliser une forme quelconque en 3D
    Par thtghgh dans le forum MATLAB
    Réponses: 1
    Dernier message: 14/02/2011, 22h10

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