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

Python Discussion :

Déplacement d'un objet graphique avec une variable


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Un intéressé
    Inscrit en
    Octobre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Un intéressé

    Informations forums :
    Inscription : Octobre 2017
    Messages : 3
    Par défaut Déplacement d'un objet graphique avec une variable
    Bonsoir,

    alors voilà je cherche à déplacer mickey (oreilles+tête) sur une zone graphique en changeant uniquement la variable p.

    J'ai commencé et réussis à faire apparaitre mickey mais je sèche concernant l'attribution de la variable et le reste.

    Voila ce qui met demandé: Nom : Capture.PNG
Affichages : 1688
Taille : 23,1 Ko

    voilà mon code:
    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
    16
    17
    18
    19
    20
    21
    22
    from Graphics.fenetres import*
    from Graphics.couleurs import*
     
    f=Fenetre()
    f.title("Mickey") #On change le nom de la fenêtre
    zg=f.graphique(largeur=500,hauteur=500,couleur=noir)
     
    def mickey(p,rouge):
        global zg
    p=Point(250,250)
    zg.draw_fill_circle(p,50,rouge)
     
    def oreilles(p1,p2,rouge):
        global zg
     
    p1 = Point(p.x-50,p.y-50)
    zg.draw_fill_circle(p1,25,rouge)
     
    p2 = Point(p.x+50,p.y-50)
    zg.draw_fill_circle(p2,25,rouge)
     
    f.mainloop()
    et voila l’exécution : Nom : Capture1.PNG
Affichages : 1365
Taille : 31,8 Ko

    je cherche à ce que l'utilisateur rentre les coordonnées de p afin que le mickey se déplace et dans un deuxième temps que le programme dessine plusieurs mickey comme dit dans la consigne .

    Merci d'avance .

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 717
    Par défaut
    Salut,

    Déplacer un objet graphique dépend de la bibliothèque graphique utilisée...
    Et Graphics n'est pas une bibliothèque standard.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 29
    Par défaut
    Quand tu dit que tu veux que l’utilisateur entre une valeur dans p tu veux dire que : p=val_user ?

    Car si c'est cela tu ne pourras pas faire ce que tu veux. p est une structure de variable (ou un objet de variable),or si tu fait p=valeur, ca revient à dire p::constructeur_de_p=valeur, or le constructeur de p n'est pas la donnée en x , y ou autre variable appartenant à p, c'est une fonction de création de ton objet, pas une variable.

    Ce que tu peut faire, c'est : créer une variable coef, et l'injecter dans p.x, p.y
    Cela donnerait :

    coef=val_user
    p.x=coef+p.x
    p.y=coef+p.y

    après, rien ne t'oblige à utiliser coef hors de p, tu peut aussi mettre coef dans p, ce qui donne p.coef=val_user, la suite tu la connait.

    En espérant que cela te soit utile

  4. #4
    Candidat au Club
    Homme Profil pro
    Un intéressé
    Inscrit en
    Octobre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Un intéressé

    Informations forums :
    Inscription : Octobre 2017
    Messages : 3
    Par défaut I know
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Déplacer un objet graphique dépend de la bibliothèque graphique utilisée...
    Et Graphics n'est pas une bibliothèque standard.

    - W
    Je le sais bien, le prof nous a donné la bibliothèque mais nous a dit qu'il en reparlera.
    Je cherche a ce que l’utilisateur tape les coordonnées du point p et que toutes la "structure" (oreilles+tête) bouge et qu'après il retape d'autres coordonnées afin de "redessiner" un autre mickey.
    J'ai réussi à "lier" le p de la tête avec les p des oreilles , c'est a dire que quand je modifie les coordonnées de p dans le code le mickey bouge .

    J’espère que vous avez compris .

  5. #5
    Candidat au Club
    Homme Profil pro
    Un intéressé
    Inscrit en
    Octobre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Un intéressé

    Informations forums :
    Inscription : Octobre 2017
    Messages : 3
    Par défaut Ouille
    Citation Envoyé par raph_prog Voir le message
    Quand tu dit que tu veux que l’utilisateur entre une valeur dans p tu veux dire que : p=val_user ?

    Car si c'est cela tu ne pourras pas faire ce que tu veux. p est une structure de variable (ou un objet de variable),or si tu fait p=valeur, ca revient à dire p::constructeur_de_p=valeur, or le constructeur de p n'est pas la donnée en x , y ou autre variable appartenant à p, c'est une fonction de création de ton objet, pas une variable.

    Ce que tu peut faire, c'est : créer une variable coef, et l'injecter dans p.x, p.y
    Cela donnerait :

    coef=val_user
    p.x=coef+p.x
    p.y=coef+p.y

    après, rien ne t'oblige à utiliser coef hors de p, tu peut aussi mettre coef dans p, ce qui donne p.coef=val_user, la suite tu la connait.

    En espérant que cela te soit utile
    Je ne suis pas sûre de bien te comprendre, nous venons tous juste de commencer la programmation au lycée et je dois t'avouer que je ne comprends pas ce que tu as dis.

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 29
    Par défaut
    Je vais te faire rapidement un cours de langage objet:

    Pour faire simple, une structure/classe est un outils pour pouvoir s’affranchir des variable classique (int, char, float...), et (pour la classe surtout) de créer des fonction propre à une action.
    Comme on comprend mieux par des exemple, en voici un avec la classe String (chaîne de caractère):
    'String' est une classe, 'chaine' est l'objet de cette classe, c'est à dire sont image. en Python on pourrait la déclarerai comme ça (Mais pas besoin python le fait à ta place) "String chaine".
    Cela ne te rappelle rien ? Si tu mets "int val" par exemple, 'int' c'est le type de variable, et 'val' c'est la variable. bon bas pour un objet c'est pareil, sauf que tu peut appeler des variables et des fonctions !!!
    Donc quand tu écrit "chaine.lengh" ,tu demande la longueur de ta chaîne de caractère depuis la classe 'String', associer à ton objet 'chaine'.
    Quand tu écrit "chaine.split(argument)", tu appelle la fonction 'split' depuis la classe 'String', associer à ton objet 'chaine'.
    Enfin cas particulier de 'string' (et d'autre classe), quand tu écrit chaine="phrase", le constructeur (la fonction qui créer la classe 'String') te revoie la chaine de caractère soit :"phrase" (mais ce n'es pas une généralité).

    Revoyons cela avec un exemple concret :

    String chaine="test" #si tu fait un print(chaine) il te répond 'test'
    print(chaine.lengh) # tu obtient non pas 'test', mais 4 (la longueur de ta chaîne)
    print(chaine.split('e')) # tu obtient non pas 'test', mais 't' et 'st' (pour info split découpe la chaîne de caractère, dans cet exemple)

    Voilà, si tu à compris la logique tu peut te balader dans la doc de ta bibliothèque et jouer avec les objets

    Je tien juste à précisé que si tu utilise la fonction string ne copie pas ce qui est noté ici, les syntaxe sont à titre d'exemple pour la compréhension.

    Si tu veux te documenté sur la programmation objet, il y à un super topic sur ce site

Discussions similaires

  1. [AC-2013] Affectation d'un objet Outlook avec une variable (Set)
    Par JBL1952 dans le forum Access
    Réponses: 2
    Dernier message: 25/01/2016, 18h49
  2. Problème avec une variable de type objet
    Par mrocks dans le forum C#
    Réponses: 7
    Dernier message: 09/05/2009, 22h27
  3. nommer un objet avec une variable
    Par fatcat dans le forum C++
    Réponses: 4
    Dernier message: 11/12/2005, 16h16
  4. Comparaison d'un registre 8 bits avec une variable 32 bits
    Par tupperware dans le forum x86 32-bits / 64-bits
    Réponses: 3
    Dernier message: 15/10/2002, 10h25
  5. Désigner une variable avec une variable?
    Par littleman dans le forum Paradox
    Réponses: 4
    Dernier message: 12/08/2002, 11h21

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