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

Ajout de tableau à la fin d'un tableau


Sujet :

C

  1. #21
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 87
    Par défaut
    Je vais répondre dans l'ordre:

    return container[row][col]->getData();

    renvoie bien une tuile sous la forme d'un uint8*

    tu vas chercher ce qui est d'abord en (0,0), puis en (0,1), puis en (0,2), etc etc..

    C'est bien ça que tu veux ??
    Oui exactement.



    Les calculs qui te paraissent louche sont bons. Je soustrait ftx - dtx ce qui me donne le nombre de tuile en x, pareil pour fty-dtx = nbTuile en Y.

    Par contre je suis d'accord que ton calcul est plus élégant et plus rapide (faut que je remplace).

    Je crois que je vais rester avec ma solution lente qui parcours tous les pixels, au moins ca marche bien.

  2. #22
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par TobyKaos Voir le message
    Je vais répondre dans l'ordre:

    return container[row][col]->getData();

    renvoie bien une tuile sous la forme d'un uint8*
    OK mais ça me parait toujours louche....

    container[row][col] est la tuile démarrant à (row,col) c'est bien ça ?

    Dans ce cas

    container[row][col+1] est la tuile démarrant à (row,col+1) et non
    (row,col+largeur_tuile]....

  3. #23
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 87
    Par défaut
    container[row][col] contient la tuile row col.

    On se déplace tuile par tuile pour récupérer les données mais dans le buffer allData on se déplace de la taille d'une tuile (offset*dataSize) car on lui ajoute une tuile entière à chaque fois.

  4. #24
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    bon j'abandonne...

    row,col est un PIXEL , une position, pas une tuile...

    A moins que tes coordonnées ne soient les positions des tuiles (ce qui n'a pas l'air d'être le cas vu les calculs de ftx et dtx par exemple), lorsque tu incrémentes de 1 row ou col, tu ressors sans doute une tuile, mais pas LA TUILE SUIVANTE. Tu sors juste un rectangle positionné UN PIXEL plus loin que la précédente.

    Mais bon.

    Là j'abandonne..

    Ou tu ne t'exprimes pas clairement, ou je ne comprend rien à ton code, ou c'est ton code qui est faux...

  5. #25
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 87
    Par défaut
    en tout cas je te remercie souviron34. Tu auras cherché et oui surement qu'il y a quelques chose qui ne va pas dans mon code.

    dtx = tuile de départ en x
    ftx = tuile de fin en x
    dty = tuile de départ en Y
    fty = tuile de fin en Y

    je parcours tuile par tuile et non pixel par pixel. getData(row,col) me renvoie bien une tuile entière c'est à dire un buffer de la taille largeurTuile*hauteurTuile*nbCouleurParPixel. buffer est un uint8*

  6. #26
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    oui ça on est d'accord..

    Ce que je veux dire c'est que , si ta disposition est celle-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    -------------------------------------
    |   1   |    2    |    3    |    4  |
    -------------------------------------
    ton algo (en tous cas ce que tu nous en montres) ne ressort pas "tuile 1" puis "tuile 2", mais "tuile_1" puis "tuile_1" décalée de 1 pixel à droite.. c'est à dire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ---------
    |   1   |
    ---------
    puis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    -----------
    ||   2   ||
    -----------

Discussions similaires

  1. ajouter à la fin d'un tableau de cellules
    Par syki.mail dans le forum MATLAB
    Réponses: 3
    Dernier message: 26/01/2014, 10h15
  2. ajouter un élément à la fin d'un tableau [[],[],[]]
    Par wise_mind dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/06/2009, 16h01
  3. Réponses: 13
    Dernier message: 01/02/2006, 12h00
  4. Réponses: 4
    Dernier message: 27/10/2005, 10h09
  5. Ajout de ligne à la volée dans un tableau
    Par Folken Laëneck dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/08/2005, 11h41

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