FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
tableau - Simuler un tableau à 3 dimensions Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
tableau - Simuler un tableau à 3 dimensions Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
tableau - Simuler un tableau à 3 dimensions Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
tableau - Simuler un tableau à 3 dimensions Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
tableau - Simuler un tableau à 3 dimensions Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
tableau - Simuler un tableau à 3 dimensions Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
tableau - Simuler un tableau à 3 dimensions Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
tableau - Simuler un tableau à 3 dimensions Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
tableau - Simuler un tableau à 3 dimensions Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
tableau - Simuler un tableau à 3 dimensions Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
tableau - Simuler un tableau à 3 dimensions Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
tableau - Simuler un tableau à 3 dimensions Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
tableau - Simuler un tableau à 3 dimensions Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
tableau - Simuler un tableau à 3 dimensions Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
tableau - Simuler un tableau à 3 dimensions Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -28%
-28% Machine à café avec broyeur ...
Voir le deal
229.99 €

 

 Simuler un tableau à 3 dimensions

Aller en bas 
+4
Yannick
Jean Claude
Minibug
papydall
8 participants
AuteurMessage
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 1:42

PANORAMIC ne supporte nativement que les tableaux à deux dimensions.
Voici comment on peut simuler un tableau à trois dimensions.

Spoiler:

Mais est-ce bien utile cette astuce ?
Probablement NON !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 7:24

Bonjour papydall,

Bin oui, fallait juste y penser !!!!

Bravo, excellente idée.

bounce bounce bounce 
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 9:40

Astucieux effectivement.
L'utilité je ne la voit pas au premier abord mais je garde çà sous le coude, on ne sait jamais.

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: re   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 12:55

Bravo Papydall !

Je ne sais pas encore à quoi cela pourra servir
mais je suis sûr que nos esprits tordus vont y trouver une utilité...Laughing 
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 13:16

Tu devrais juste ajouter une astuce pour la declaration du tableau pour que les indices soient automatiques
pour le tableau(x,y,z) => déclaration du tableau(x,((y+1)*(z+1))-1)
Revenir en haut Aller en bas
Mumu




Nombre de messages : 176
Localisation : 45
Date d'inscription : 20/12/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 14:03

L'idée est tout bonnement Géniale !!!

Edit: Et pourquoi ne pas envisager des tableaux à n dimensions... ?
Revenir en haut Aller en bas
bignono

bignono


Nombre de messages : 1127
Age : 67
Localisation : Val de Marne
Date d'inscription : 13/11/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 19:17

Bonsoir Papydall Smile 
C'est génial ton truc! Idea 
Revenir en haut Aller en bas
mindstorm

mindstorm


Nombre de messages : 685
Age : 55
Localisation : charente
Date d'inscription : 13/02/2013

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 21:25

papydall est de retour
je vois un usage pour l'imprimante 3D
mais je ne suis pas sur de savoir l'utiliser
cyclops 
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: re   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 22:39

Moi aussi je vois bien çà en 3D...

...Imaginons une scene 3D avec chaque pixel dans un tableau 3D...study 
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyDim 13 Oct 2013 - 23:31

Ça permet par exemple d'extrapoler pour des calculs matriciels.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: re   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 3:12

Et la couleur qui a trois variables en RGB...Very Happy

Je dirai même que cela (le tableau 3D) mérite un petit article explicatif a publié sur le mag.
C'est une chose qui n' existe pas en natif et que tu crées avec Panoramic, cela peut être
utile de le mettre sur le mag pour le retrouver plus facilement. 
C' est même digne de la rubrique des tutoriels...
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 7:23

Bonjour tout le monde et merci pour vos interventions.

Vous avez tous des bonnes idées pour utiliser des tableaux à 3 dimensions.
Comme je suis actuellement en panne (heu, en panne d’idées s’entend !), je vous propose un code pour mieux illustrer comment on peut utiliser ces tableaux tridimensionnels simulés.
Le programme en lui-même n’a que peu  d’intérêt, mais il montre comment déclarer ce type de tableaux, et la manière de l’utiliser.
Vous trouverez certainement des bonnes applications utilisant des tableaux à 3 dimensions ! Alors ne vous en privez pas.

Code:
rem ============================================================================
'  Simulation et utilisation d'un tableau à 3 dimensions
rem ============================================================================

dim n1, n2 ,n3, x, y, z : n1 = 10 : n2 = 20 : n3 = 5
dim tableau(n1,n2*n3) : ' simuler un tableau à 3 dimensions n1,n2,n3
dim get_tableau : ' variable dans laquelle on récupère la valeur du tableau(x,y,z)
dim rand : ' variable qui contiendra un entier aléatoire entre mini et maxi
color 0,0,0,0 : display : caption 0,"<CLICK> pour arrêter"
' Initialiser le tableau tridimensionnel par des entiers aléatoires
for x = 1 to n1
   for y = 1 to n2
       for z = 1 to n3
           rand(10,150) : ' entier aléatoire entre 10 et 150
           set_tableau(x,y,z,rand) : ' affecter la valeur rand au tableau(x,y,z)
       next z
   next y
next x
rem ===========================================================================
' Recupérer le contenu du tableau tridimensionnel pour tracer des cercles dont
' les coordonnées de leur centre ainsi que leur rayon en dépendent.
for x = 1 to n1
    for y = 1 to n2
        for z = 1 to n3
            get_tableau(x,y,z) : 2d_pen_width 1 + get_tableau/100
            2d_pen_color rnd(255),rnd(255),rnd(255)
            2d_circle 300+get_tableau,200+get_tableau,get_tableau/4
            2d_circle 300+get_tableau,200-get_tableau,get_tableau/4
            2d_circle 300-get_tableau,200-get_tableau,get_tableau/4
            2d_circle 300-get_tableau,200+get_tableau,get_tableau/4
            2d_circle 300,200+get_tableau,get_tableau/4
            2d_circle 300,200-get_tableau,get_tableau/4
            2d_circle 300+get_tableau,200,get_tableau/4
            2d_circle 300-get_tableau,200,get_tableau/4
         if scancode <> 0 then terminate
        next z
    next y
next x
caption 0, " terminé"
end
rem ============================================================================
' Affectation du tableau
' Sub permetant de mettre la valeur V dans Tableau(x,y,z)
sub Set_Tableau(x,y,z,v)
   Tableau(x, y + z * (n3-1)) = v
end_sub
rem ============================================================================
' Lecture du tableau
' Sub renvoyant la valeur de Tableau(x,y,z) dans la variable Get_Tableau
SUB Get_Tableau(x,y,z)
   Get_Tableau = Tableau(x, y + z *(n3-1))
end_sub
rem ===========================================================================

' Fournir un entier aléatoire entre mini et maxi bornes comprises
SUB Rand(mini,maxi)
   rand = int(rnd(maxi-mini+1))+mini
END_SUB
rem ============================================================================


Dernière édition par papydall le Lun 14 Oct 2013 - 14:09, édité 1 fois (Raison : Correction de l'erreur signalée par Jicehel)
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 8:23

Je pense qu'il y avait un petit problème dans les formules, je n'ai pas trop le temps de vérifier (je dois me préparer pour le boulot) mais j'ai modifié un peu le prog.

Code:
rem ============================================================================
'  Simulation et utilisation d'un tableau à 3 dimensions
rem ============================================================================

dim n1, n2 ,n3, x, y, z : n1 = 10 : n2 = 20 : n3 = 5
dim tableau(n1,n2*n3) : ' simuler un tableau à 3 dimensions n1,n2,n3
dim get_tableau : ' variable dans laquelle on récupère la valeur du tableau(x,y,z)
dim rand : ' variable qui contiendra un entier aléatoire entre mini et maxi
color 0,0,0,0 : display : caption 0,"<CLICK> pour arrêter"
' Initialiser le tableau tridimensionnel par des entiers aléatoires
for x = 1 to n1
  for y = 1 to n2
      for z = 1 to n3
          rand(10,150) : ' entier aléatoire entre 10 et 150
          set_tableau(x,y,z,rand) : ' affecter la valeur rand au tableau(x,y,z)
      next z
  next y
next x
rem ===========================================================================
' Recupérer le contenu du tableau tridimensionnel pour tracer des cercles dont
' les coordonnées de leur centre ainsi que leur rayon en dépendent.
for x = 1 to n1
    for y = 1 to n2
        for z = 1 to n3
            get_tableau(x,y,z) : 2d_pen_width 1 + get_tableau/100
            2d_pen_color rnd(255),rnd(255),rnd(255)
            2d_circle 300+get_tableau,200+get_tableau,get_tableau/4
            2d_circle 300+get_tableau,200-get_tableau,get_tableau/4
            2d_circle 300-get_tableau,200-get_tableau,get_tableau/4
            2d_circle 300-get_tableau,200+get_tableau,get_tableau/4
            2d_circle 300,200+get_tableau,get_tableau/4
            2d_circle 300,200-get_tableau,get_tableau/4
            2d_circle 300+get_tableau,200,get_tableau/4
            2d_circle 300-get_tableau,200,get_tableau/4
            wait 20
        if scancode <> 0 then terminate
        next z
    next y
next x
caption 0, " terminé"
end
rem ============================================================================
' Affectation du tableau
' Sub permetant de mettre la valeur V dans Tableau(x,y,z)
sub Set_Tableau(x,y,z,v)
  Tableau(x, y + (z-1) * n2) = v
end_sub
rem ============================================================================
' Lecture du tableau
' Sub renvoyant la valeur de Tableau(x,y,z) dans la variable Get_Tableau
SUB Get_Tableau(x,y,z)
  Get_Tableau = Tableau(x, y + (z-1) * n2)
end_sub
rem ===========================================================================

' Fournir un entier aléatoire entre mini et maxi bornes comprises
SUB Rand(mini,maxi)
  rand = int(rnd(maxi-mini+1))+mini
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 11:57

Bonjour Jicehel
A quel endroit, penses-tu voir quelque chose qui cloche dans les formules ?
Personnellement, je n’en voie pas, mais qui sait ?

NB : pour le WAIT 20, je l’avais dans mon code, mais je l’ai supprimé par inattention avant de poster ! Embarassed 
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 13:03

Sauf erreur de logique de ma part, car j'ai regardé très vite ce matin avant de partir, tu avais écrit:

' =========================================================
' Affectation du tableau
' Sub permetant de mettre la valeur V dans Tableau(x,y,z)

sub Set_Tableau(x,y,z,v)
Tableau(x, y + z * (n3-1)) = v
end_sub


=> Tu écris la valeur en x, y+z*(n3-1) soit pour x = 1 , y=2, z=3 en (1,2+3*(5-1)) soit en (1,14)

'==========================================================
' Lecture du tableau
' Sub renvoyant la valeur de Tableau(x,y,z) dans la variable Get_Tableau
SUB Get_Tableau(x,y,z)
Get_Tableau = Tableau(x, y + z * 10)
end_sub

=> Pour les mêmes valeurs, tu lis le tableau en (1,2+3*10) soit (1,32)

-----

De plus, je pense que c'est mieux d'utiliser la même formule pour la compréhension et la mise à jour (je trouve très bien l'usage de n3 à la place de la valeur fixe 10 qui dépend en réalité de la taille du tableau, comme dans ton cas où tu as réglé la valeur à 5)

Mais bon, c'est comme ça que je l'ai lu rapidement ce matin, peut-être que j'ai manqué quelque chose...
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 14:22

Merci Jicehel d’avoir remarqué l’erreur due au copier/coller.
Il fallait écrire, dans les 2 SUBs Set_tableau() et Get_Tableau() , les mêmes paramètres, à savoir (x, y + z *(n3 – 1)).

J’ai corrigé ci-haut.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 14:32

En plus du coup, tes proc. sont plus facilement adaptable, puisque tu utilise 3 variables pour déclarer ton tableau. On pourrait même avoir une procédure d'initialisation qui fixe les variables pour le programme à partir d'un appel.
Le seul problème de cette méthode est que l'on doit adapter n3 à la valeur du tableau utilisé si on a plusieurs tableaux.

Sinon histoire de chipoter car je suis un chipoteur, la formule fonctionne tout à fait, mais personnellement, j'aurais trouvé plus logique (la logique étant quelque chose de propre à chacun ...) d'écrire: (x, y *(n2 – 1) + z )

Toutefois, on est d'accord que cela ne change rien au fonctionnement du programme...
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 15:09

Eh bien, je suis ravi d’apprendre une autre qualité de toi : chipoteur ! tableau - Simuler un tableau à 3 dimensions Text65

Ta logique est … logique,    tableau - Simuler un tableau à 3 dimensions Text1232
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions EmptyLun 14 Oct 2013 - 15:37

Very Happy Je suis content. Merci Papydall Wink
Revenir en haut Aller en bas
Contenu sponsorisé





tableau - Simuler un tableau à 3 dimensions Empty
MessageSujet: Re: Simuler un tableau à 3 dimensions   tableau - Simuler un tableau à 3 dimensions Empty

Revenir en haut Aller en bas
 
Simuler un tableau à 3 dimensions
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Tableau à 3 dimensions
» Adresses dans un tableau à 2 dimensions
» Simuler une entrée clavier
» Simuler le passage de paramètre en Panoramic
» Simuler un ON_MOVE sur d'autres FORM que le 0

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Les inutilitaires-
Sauter vers: