Forum de Programmation en langage PANORAMIC
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Mots-clés

Derniers sujets
»  Capture d’écran de Windows
Ven 17 Nov - 0:27 par Admin

»  Courbes de Bézier cubiques
Mer 8 Nov - 2:28 par Admin

» Harmonographe
Mer 8 Nov - 2:22 par Admin

»  Simuler l’appui d'une touche ou combinaison de touches
Sam 16 Sep - 13:58 par Admin

» Régalez-vous !
Sam 29 Juil - 11:42 par Admin

» Les bienfaits du rire
Ven 7 Juil - 0:04 par Admin

» Derrière chaque beau parleur se cache un magnifique menteur
Ven 7 Juil - 0:01 par Admin

» Carré magique d’ordre 3 à 99 et plus si affinité !
Mer 5 Juil - 3:21 par Admin

» Dessine-moi une étoile
Mar 4 Juil - 17:32 par Admin

Novembre 2017
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
27282930   

Calendrier Calendrier


Harmonographe

Voir le sujet précédent Voir le sujet suivant Aller en bas

Harmonographe

Message par Admin le Mer 8 Nov - 2:22

Code:
rem ============================================================================
rem                        Harmonographe
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,p,xc,yc,z, i, j
    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 : 2d_pen_width 2
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 par Papydall       <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 ============================================================================

_________________
Invité, merci d'être passé par ici.
avatar
Admin
Admin

Messages : 71
Date d'inscription : 08/09/2015
Age : 67
Localisation : MOKNINE (Tunisie)

Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum