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++Builder Discussion :

modifier la position d'un segment de 5° à gauche et 5 ° à droite


Sujet :

C++Builder

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut modifier la position d'un segment de 5° à gauche et 5 ° à droite
    Bonjour tout le monde, je debute avec Builder C++ et j'aimerai modifier la position d'un segment de 5° à gauche lorsqu'on appuie sur la touche `K` ou `k` du clavier et 5° à gauche lorsqu'on appuie sur la touche `L` ou `l`.
    voici ce que j'ai fais pour dessiner le segment, mais comment modifier sa position? Merci d'avance...

    //---------------------------------------------------------------------------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    void __fastcall TFormGuerrier::PanelGrapheClick(TObject *Sender)
    {
            const int segmentLongueur = ImageGraphe->Height/10;
            int segmentDebutX  = ImageGraphe->Width/2;
            int segmentDebutY  = ImageGraphe->Height/1.04;
            int segmentFinX  = segmentDebutX;
            int segmentFinY = segmentDebutY - segmentLongueur;
     
            ImageGraphe->Canvas->Pen->Color = clRed;
            ImageGraphe->Canvas->Pen->Width = 5;
     
            ImageGraphe->Canvas->MoveTo(segmentDebutX, segmentDebutY);
            ImageGraphe->Canvas->LineTo(segmentFinX, segmentFinY);
    }
    //---------------------------------------------------------------------------

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Si j'ai bien compris il s'agit d'une rotation sur lui-même ?

    A plus !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut
    oui il 's'agit d'une rotation...

  4. #4
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par défaut
    Salut, peut-être que ce site peut t'aider: http://fr.wikipedia.org/wiki/Cercle_...om%C3%A9trique ou celui-ci: http://fr.wikipedia.org/wiki/Identit...om.C3.A9trique

    N'oublie pas: lorsque tu mets du code sur le forum. C'est plus facile à lire.

  5. #5
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par défaut
    Oublie mon message sur la balise code Je n'avais pas vue que sa avait été modifié.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut
    pas de pb, sinon que tes liens ne m'avancent pas trop...

  7. #7
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par défaut
    Si ton point de départ ne change jamais et que le point final se déplace sur l'équivalent d'un cercle de rayon constant segmentLongueur. Si on prend en considération que l'on se trouve sur un plan cartésien alors:

    x = r * cos(φ)
    y = r * sin(φ)


    dans ton cas
    r = segmentLongueur
    φ = 5° ou -5° (ou peut être 95° ou 85° je ne suis pas certain)
    x = segmentFinX
    y = segmentFinY

    Pour plus de renseignement va voir:
    http://en.wikipedia.org/wiki/Complex_number

    J'espère avoir bien compris ta question.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut
    bien sûr que c'est ce que j'aimerai faire, mais comment associer à ça les touches du clavier?

  9. #9
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    bonjour,
    en utilsant l'évenement onKeyPress et en faisant un tri des touches du clavier ex
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key)
    {
      Key= _toupper(Key);; // conversion en majuscule
     
     
      switch (Key)
      {
        case : 'K' // appel de ta fonction // pe RotateLeft();   // appel de ta fonction // pe RotateLeft()
        break;
        case : 'L' // appel de ta fonction // pe RotateRight();
        break;
      }
     
    }
    cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut
    merci, je commence à comprendre

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut Autre question...
    merci à vous, j'ai reussi à modifier la position de mon segment, j'ai une autre question, j'aimerai que lorsque je demarre Builder, qu'il m'affiche directement ma fenêtre de dessin avec mon segment et que je ne sois pas obliger de cliquer. je ne sais pas avec quel evenement cela se fait. merci pour votre reponse.

  12. #12
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    bonjour
    tu peux utiliser soit l'évenenement onCreate ou onShow de ta FORM
    cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut
    ça a marché, merci une fois de plus...
    bonne soirée

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

Discussions similaires

  1. modifier la position d'un controle dans un userform
    Par JYL74 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/02/2008, 10h57
  2. Comment modifier la position d'une Form avec des RadioButton ?
    Par bionicleman dans le forum Composants VCL
    Réponses: 1
    Dernier message: 18/12/2007, 17h19
  3. Réponses: 2
    Dernier message: 06/02/2006, 23h15
  4. Modifier la position d'un popupMenu
    Par petitcoucou31 dans le forum Composants VCL
    Réponses: 6
    Dernier message: 24/11/2005, 17h23
  5. Modifier la position d'un champs formulaire
    Par gg14bis dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/09/2005, 08h57

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