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

Programmation multimédia/Jeux Python Discussion :

Cadrillage avec Pygame


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Cadrillage avec Pygame
    Bonjour,
    En train de faire des tests avec pygame, je me confronte à un petit soucis. En effet, je chercher à effectuer un quadrillage en créant des surface de 30*30. Cependant j'en est que 3 d'afficher . Voyez plus tôt :

    (la fenêtre est de tailler 340*340)
    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
     
    cell_x = 10
    cell_y = 10
     
    column = 0
    row = 0
     
    while column < 3:
    	while row < 3:
    		print("Creation case au positions x:" + str(cell_x) + " y: " + str(cell_y))
    		background.blit(cell, (cell_x, cell_y))
    		cell_y += 100+10
    		row += 1
    		cell_x += 100+10
    		column += 1

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    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 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Ajoutez un print ('row=%d, column=%d' % (row, column)) et essayez de comprendre comment imbriquer ces 2 boucles.

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

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    d'accord, je vais voir ça. ça dois sûrement être la logique que je ne comprends pas.

    edit: C'est bien la logique que je ne comprends pas car j'ai les trois cases qui sont disposer comme ça :
    1 - row=0 column=0
    2 - row=1 column=1
    3 - row=2 column=2


  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    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 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Deux boucles imbriquées se construisent ainsi dans à peu près tous les langages:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    >>> i = 0
    >>> while i < 3:
    ...    j = 0
    ...    while j < 3:
    ...       print i, j, '*',
    ...       j += 1
    ...    print
    ...    i += 1
    ...
    0 0 * 0 1 * 0 2 *
    1 0 * 1 1 * 1 2 *
    2 0 * 2 1 * 2 2 *
    >>>
    Gérer l'initialisation, le test et l'incrémentation des variables de contrôle de boucle (i, j) est répétitif et çà fait 3 x 2 instructions liées qu'il ne faut pas oublier et placer dans le bon block. Python vient avec for ... in range(...) qui permet de simplifier tout çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    >>> for i in range(3):
    ...     for j in range(3):
    ...         print i, j, '*',
    ...     print
    ...
    0 0 * 0 1 * 0 2 *
    1 0 * 1 1 * 1 2 *
    2 0 * 2 1 * 2 2 *
    >>>
    Est-il raisonnable de s'aventurer à ouvrir la boîte pygame sans maîtriser ces bases là?
    A mon sens, non... mais vous faites un peu ce que vous voulez...

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

Discussions similaires

  1. créer un .exe avec pygame
    Par stefff285 dans le forum Déploiement/Installation
    Réponses: 2
    Dernier message: 19/08/2010, 23h30
  2. Problème avec Pygame
    Par zappa37 dans le forum Programmation multimédia/Jeux
    Réponses: 2
    Dernier message: 28/05/2009, 00h03
  3. portabilité du code avec pygame
    Par stefff285 dans le forum Programmation multimédia/Jeux
    Réponses: 0
    Dernier message: 05/04/2009, 19h33
  4. Rafraichissement de l'image avec pygame + opengl
    Par bourriquet_42 dans le forum OpenGL
    Réponses: 1
    Dernier message: 23/03/2009, 18h22

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