FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» KGF.dll - demandes ou suggestions de modifications ou ajouts
par Klaus Hier à 23:55

» KGF_dll - nouvelles versions
par pascal10000 Hier à 17:27

» Mah-Jong européen new-look
par Minibug Mar 12 Déc 2017 - 22:31

» track_bar circulaire
par Klaus Mar 12 Déc 2017 - 13:54

» API Windows
par Klaus Mar 12 Déc 2017 - 3:21

» Cartes de voeux, menus, etc.
par JL35 Lun 11 Déc 2017 - 17:48

» a l'aide klaus
par Minibug Lun 11 Déc 2017 - 11:42

» bug SYNEDIT_TARGET_IS_OBJECT
par Jack Lun 11 Déc 2017 - 0:16

» Jukebox : Serge Reggiani
par papydall Sam 9 Déc 2017 - 5:58

» Ecouter la radio fm sur votre pc
par pascal10000 Sam 9 Déc 2017 - 3:42

» anomalie
par Klaus Sam 9 Déc 2017 - 3:21

» hommage
par Jicehel Ven 8 Déc 2017 - 11:29

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Ven 8 Déc 2017 - 10:43

» carte son
par Klaus Ven 8 Déc 2017 - 2:37

» mise a jour calculatrice
par joeeee2017 Mer 6 Déc 2017 - 22:19

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier

Partagez | 
 

 On ressort les petites courbes des placards

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : Précédent  1, 2
AuteurMessage
Jicehel

avatar

Nombre de messages : 5863
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: On ressort les petites courbes des placards   Sam 2 Mai 2015 - 18:49

Hum facile, c'est par ce que tu dois avoir une bonne résolution d'écran et que l'indice doit dépasser les limites. Tu pourrais adapter le facteur pour l'écran mais comme je n'ai pas envie de m'embéter, je le fais avec une taille fixe pour la largeur de l'ecran (je ne pense pas qu'il y ait de problème pour la valeur en y. Toutefois si tu as un super écran, il suffit de faire pareil pour y et de remplacer les scrren_y par 1024)

Le programme donne ça:
Code:

rem ============================================================================
rem                        Harmonographe_2
rem                        Par  Papydall
rem ============================================================================

Harmonographe()
end
rem ============================================================================
SUB Init()
    dim A1,A2,A3,A4 : ' Si A2 et A4 sont nuls, on obtient des figures de Lissajous
    dim D1,D2,D3,D4  : ' Paramètres d'amortissement
    ' L'introduction d'un amortissement fait  converger la courbe vers le point central.
    dim F1,F2,F3,F4
    dim phi1,phi2,phi3,phi4
    dim x,y,t,pi,p,xc,yc,z, i, j
    pi = acos(-1) : p = pi/180
    width 0,1024 : height 0,screen_y
    xc = width(0)/2 : yc = screen_y/2 -50 : z = yc/4
    color 0,0,0,0
END_SUB
rem ============================================================================
SUB Composante_X()
    A1 = 2.00 : A2 = 2.00 : ' de 0.0 à 4.0
    F1 = 5 - j/2 :  F2 = j / 2 : ' de 0.0 à 5.0
    Phi1 = 0*p : Phi2 = 180*p : ' de 0 à 360°
    D1 = 0.01 : D2 = 0.00123  : ' de 0.0 à 1.0
END_SUB
rem ============================================================================
SUB Composante_Y()
    A3 = abs (5.5 - j) : A4 = j/4 : ' de 0.0 à 4.0
    F3 = 1.50 : F4 = 2.50 : ' de 0.0 à 5.0
    Phi3 = 90*p : Phi4 = 90*p  : ' de 0 à 360°
    D3 = 0.0123 : D4 = 0.00 : ' de 0.0 à 1.0
END_SUB
rem ============================================================================
SUB Harmonographe()
    dim_local t
    caption 0,"Harmonographe_2 par Papydall"
    Init()
    for j = 1 to 8
        cls
        Composante_X() :  Composante_y()
        x = A1*exp(0-D1*t)*sin(F1*t+Phi1) + A2*exp(0-D2*t)*sin(F2*t+Phi2)
        y = A3*exp(0-D3*t)*sin(F3*t+Phi3) + A4*exp(0-D4*t)*sin(F4*t+Phi4)
        t = Pi * -1
        for i = 0 to 15000
          t = t + p
          x = A1*exp(0-D1*t)*sin(F1*t+Phi1) + A2*exp(0-D2*t)*sin(F2*t+Phi2)
          y = A3*exp(0-D3*t)*sin(F3*t+Phi3) + A4*exp(0-D4*t)*sin(F4*t+Phi4)
          2d_pen_color 250 - i*1/100,255 - abs((x*z+xc)-512)*0.5,abs((y*z+yc)-screen_y/2)*0.5
          if i = 0 : 2d_poly_from xc+z*x,yc+z*y:else:2d_poly_to xc+z*x,yc+z*y:end_if
      next i
      wait 3000
    next j
    caption 0,"Terminé"
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

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

MessageSujet: Re: On ressort les petites courbes des placards   Sam 2 Mai 2015 - 19:17

Merci Jicehel.

Et pour les impatients comme moi, voici le même code légèrement retouché : Quand on en a assez, il suffit de cliquer n’importe où pour arrêter.

Code:

rem ============================================================================
rem                        Harmonographe_2
rem                        Par  Papydall
rem ============================================================================

Harmonographe()
end
rem ============================================================================
SUB Init()
    dim A1,A2,A3,A4 : ' Si A2 et A4 sont nuls, on obtient des figures de Lissajous
    dim D1,D2,D3,D4  : ' Paramètres d'amortissement
    ' L'introduction d'un amortissement fait  converger la courbe vers le point central.
    dim F1,F2,F3,F4
    dim phi1,phi2,phi3,phi4
    dim x,y,t,pi,p,xc,yc,z, i, j
    pi = acos(-1) : p = pi/180
    width 0,1024 : height 0,screen_y
    xc = width(0)/2 : yc = screen_y/2 -50 : z = yc/4
    color 0,0,0,0
END_SUB
rem ============================================================================
SUB Composante_X()
    A1 = 2.00 : A2 = 2.00 : ' de 0.0 à 4.0
    F1 = 5 - j/2 :  F2 = j / 2 : ' de 0.0 à 5.0
    Phi1 = 0*p : Phi2 = 180*p : ' de 0 à 360°
    D1 = 0.01 : D2 = 0.00123  : ' de 0.0 à 1.0
END_SUB
rem ============================================================================
SUB Composante_Y()
    A3 = abs (5.5 - j) : A4 = j/4 : ' de 0.0 à 4.0
    F3 = 1.50 : F4 = 2.50 : ' de 0.0 à 5.0
    Phi3 = 90*p : Phi4 = 90*p  : ' de 0 à 360°
    D3 = 0.0123 : D4 = 0.00 : ' de 0.0 à 1.0
END_SUB
rem ============================================================================
SUB Harmonographe()
    dim_local t
    caption 0,"Harmonographe_2 par Papydall & Jicehel         <CLICK> pour arrêter"
    Init()
    for j = 1 to 8
        cls
        Composante_X() :  Composante_y()
        x = A1*exp(0-D1*t)*sin(F1*t+Phi1) + A2*exp(0-D2*t)*sin(F2*t+Phi2)
        y = A3*exp(0-D3*t)*sin(F3*t+Phi3) + A4*exp(0-D4*t)*sin(F4*t+Phi4)
        t = Pi * -1
        for i = 0 to 15000
          t = t + p
          x = A1*exp(0-D1*t)*sin(F1*t+Phi1) + A2*exp(0-D2*t)*sin(F2*t+Phi2)
          y = A3*exp(0-D3*t)*sin(F3*t+Phi3) + A4*exp(0-D4*t)*sin(F4*t+Phi4)
          2d_pen_color 250 - i*1/100,255 - abs((x*z+xc)-512)*0.5,abs((y*z+yc)-screen_y/2)*0.5
          if i = 0 : 2d_poly_from xc+z*x,yc+z*y:else:2d_poly_to xc+z*x,yc+z*y:end_if
          if scancode <> 0 then terminate
      next i
      wait 3000
    next j
    caption 0,"Terminé"
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Jicehel

avatar

Nombre de messages : 5863
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: On ressort les petites courbes des placards   Sam 2 Mai 2015 - 20:01

OK Papydall, mais j'ai sans doute un problème de clavier ou un truc du genre, du coup le programme se terminait directement. Du coup j'ai rajouté une sécurité de départ et le clic fait passer à la courbe suivante (violent que tu es !!) si tu es pressé de quitter, il te reste la touche <esc>
Code:
rem ============================================================================
rem                        Harmonographe_2
rem                        Par  Papydall
rem ============================================================================

Harmonographe()
end
rem ============================================================================
SUB Init()
    dim A1,A2,A3,A4 : ' Si A2 et A4 sont nuls, on obtient des figures de Lissajous
    dim D1,D2,D3,D4  : ' Paramètres d'amortissement
    ' L'introduction d'un amortissement fait  converger la courbe vers le point central.
    dim F1,F2,F3,F4
    dim phi1,phi2,phi3,phi4
    dim x,y,t,pi,p,xc,yc,z, i, j
    pi = acos(-1) : p = pi/180
    width 0,1024 : height 0,screen_y
    xc = width(0)/2 : yc = screen_y/2 -50 : z = yc/4
    color 0,0,0,0
END_SUB
rem ============================================================================
SUB Composante_X()
    A1 = 2.00 : A2 = 2.00 : ' de 0.0 à 4.0
    F1 = 5 - j/2 :  F2 = j / 2 : ' de 0.0 à 5.0
    Phi1 = 0*p : Phi2 = 180*p : ' de 0 à 360°
    D1 = 0.01 : D2 = 0.00123  : ' de 0.0 à 1.0
END_SUB
rem ============================================================================
SUB Composante_Y()
    A3 = abs (5.5 - j) : A4 = j/4 : ' de 0.0 à 4.0
    F3 = 1.50 : F4 = 2.50 : ' de 0.0 à 5.0
    Phi3 = 90*p : Phi4 = 90*p  : ' de 0 à 360°
    D3 = 0.0123 : D4 = 0.00 : ' de 0.0 à 1.0
END_SUB
rem ============================================================================
SUB Harmonographe()
    dim_local t
    caption 0,"Harmonographe_2 par Papydall & Jicehel      <CLICK> pour passer à la courbe suivante ou <ESC> pour quitter"
    while scancode<>0
        pause 50
    end_while
    Init()
    for j = 1 to 8
        cls
        Composante_X() :  Composante_y()
        x = A1*exp(0-D1*t)*sin(F1*t+Phi1) + A2*exp(0-D2*t)*sin(F2*t+Phi2)
        y = A3*exp(0-D3*t)*sin(F3*t+Phi3) + A4*exp(0-D4*t)*sin(F4*t+Phi4)
        t = Pi * -1
        for i = 0 to 15000
          t = t + p
          x = A1*exp(0-D1*t)*sin(F1*t+Phi1) + A2*exp(0-D2*t)*sin(F2*t+Phi2)
          y = A3*exp(0-D3*t)*sin(F3*t+Phi3) + A4*exp(0-D4*t)*sin(F4*t+Phi4)
          2d_pen_color 250 - i*1/100,255 - abs((x*z+xc)-512)*0.5,abs((y*z+yc)-screen_y/2)*0.5
          if i = 0 : 2d_poly_from xc+z*x,yc+z*y:else:2d_poly_to xc+z*x,yc+z*y:end_if
          if scancode <> 0 then exit_for
      next i
      if scancode = 27 then terminate
      wait 3000
    next j
    caption 0,"Terminé"
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

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

MessageSujet: Re: On ressort les petites courbes des placards   Sam 2 Mai 2015 - 20:12

Une petite énigme pour toi Jicehel
Dans une tête T1 (qui est la mienne) il y a n1 idées.
Dans une tête T2 (qui est la tienne) il y a n2 idées.

Quel sera le nombre n d’idées, si on ajoute T1 à T2 ?
La réponse n’est pas n1 + n2  No
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Jicehel

avatar

Nombre de messages : 5863
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: On ressort les petites courbes des placards   Sam 2 Mai 2015 - 23:30

je dirais plutôt n1*n2 Smile
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: On ressort les petites courbes des placards   

Revenir en haut Aller en bas
 
On ressort les petites courbes des placards
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 2 sur 2Aller à la page : Précédent  1, 2
 Sujets similaires
-
» On ressort les petites courbes des placards
» [Résolu] Images avec des petites images lien ??
» fenêtre AS qui ressort
» Mon GPS préfère les petites routes
» C4D Creer un ressort

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: