Forum de Programmation en langage PANORAMIC


Rejoignez le forum, c’est rapide et facile

Forum de Programmation en langage PANORAMIC
Forum de Programmation en langage PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Derniers sujets
» Bonne année 2024
Courbes polaires EmptyLun 1 Jan - 0:25 par Papydall-Admin

» A ceux qui célèbre Noël, bonnes fêtes
Courbes polaires EmptyDim 24 Déc - 10:49 par Papydall-Admin

» Joyeux Noël et Bonne Année
Courbes polaires EmptyVen 8 Déc - 1:34 par Papydall-Admin

» Planets of the Solar System : Tilts and Spins
Courbes polaires EmptyLun 20 Mar - 15:43 par Papydall-Admin

» Bonne Année 2023
Courbes polaires EmptySam 31 Déc - 1:39 par Papydall-Admin

» Fractals - Mandelbrot
Courbes polaires EmptyVen 21 Aoû - 22:51 par Papydall-Admin

» Convertisseur Décimal ---> Binaire, Octal, Hexadécimal, ...
Courbes polaires EmptyMer 21 Nov - 1:08 par Papydall-Admin

» Balises {USER...}
Courbes polaires EmptyLun 19 Nov - 22:12 par Papydall-Admin

» Useful Dog
Courbes polaires EmptyVen 6 Avr - 14:25 par Papydall-Admin

Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     

Calendrier Calendrier

Le Deal du moment : -40%
Tefal Ingenio Emotion – Batterie de cuisine 10 ...
Voir le deal
59.99 €

Courbes polaires

Aller en bas

Courbes polaires Empty Courbes polaires

Message par Papydall-Admin Jeu 13 Oct - 4:25

Code:

rem ============================================================================
rem                      Courbes polaires
rem                        Par Papydall
rem ============================================================================
Init()
 Trefle_Habenicht(5,150)    : pause 2000
 Rosace(300)                : pause 2000
 Coeur_Raphael_Laporte(200) : pause 2000
 conchoide(50,8)            : pause 2000
 Tounesol(50,6)             : pause 2000
 Canabis(100)               : pause 2000
 Scarabee(100)              : pause 2000
 cls :  caption 10,"... That's all for now folks ..." :  pause 2000 : terminate
end
rem ============================================================================
SUB Init()
    dim x,y,xc,yc,t,p,rho              : '                 Variables globales
    full_space 0 : color 0,0,0,0          : '             Plein écran, fond noir
    xc = width(0)/2 : yc = height(0)/2-25 : '   Coordonnées du centre de l'écran
    p = pi/180  : ' Le step de l'angle en radian (équivalent 1°)
    alpha 10 : font_bold 10 : font_size 10,24 : font_color 10,255,0,0
END_SUB
rem ============================================================================
' Colorisation des feuilles
SUB Color_Feuilles(n,r)
    for t = 2*pi/n to 2*pi+p step 2*pi/n
        x = xc + r/2 * cos(t) : y = yc +r/2 * sin(t)
        2d_flood x,y,0,255,0
    next t
END_SUB
rem ============================================================================
' Trèfle de Habenicht :
' Equation polaire : rho = 1+cos(n*t)+ sin(n*t)*sin(n*t)
' Le paramètre n représente le nombre de feuilles du trèfle
' le paramètre r représente le rayon du cercle dans lequel est inclus le tracé
SUB Trefle_Habenicht(n,r)
    caption 10,"Trèfle de Habenicht"
' Calcul de l'origine du tracé
    rho  = 1+cos(n*t)+ sin(n*t) * sin(n*t)
    x = xc + rho * r * cos(t) : y = yc + rho * r * sin(t)
    2d_pen_color 0,255,0 : 2d_poly_from x,y
' Tracé de la courbe
    for t = p to 2*pi step p
        rho  = 1+cos(n*t)+ sin(n*t) * sin(n*t)
        x = xc + rho * r * cos(t) : y = yc + rho * r * sin(t)
        2d_poly_to x,y
    next t
' Colorisation des feuilles
   Color_Feuilles(n,r)
' Tracé du centre du trèfle
   2d_pen_color 0,0,0 : 2d_circle xc,yc,10: 2d_flood xc,yc,255,255,255
END_SUB
rem ============================================================================
' Rosace à 8 feuilles
' Equation polaire :  rho = r*cos(4*t)
' Le paramètre r représente le rayon du cercle dans lequel est inclus le tracé
SUB Rosace(r)
    caption 10,"Rosace à 8 feuilles"
    cls
    rho = r*cos(4*t)
    x = xc + rho*cos(t) : y = yc + rho*sin(t)
    2d_pen_color 0,255,0 : 2d_poly_from  xc+r,yc

    for t = p to  2*pi step p
        rho = r*cos(4*t)
        x = xc + rho*cos(t) : y = yc + rho*sin(t)
        2d_poly_to x,y
    next t
    Color_Feuilles(8,r)
    2d_pen_color 0,0,0 : 2d_circle xc,yc,10: 2d_flood xc,yc,255,255,255
END_SUB
rem ============================================================================
' Coeur de Raphaël Laporte :
' Equation paramétrique
' x = power(sin(t),3)
' y = cos(t) + power(cos(t),4)
SUB Coeur_Raphael_Laporte(r)
    dim_local i,j
    caption 10," Coeur de Raphaël Laporte"
    cls
    x = power(sin(t),3) : y = cos(t) + power(cos(t),4)
    2d_pen_color 255,0,0 : 2d_poly_from xc+r*x,yc+r*y
    for j = 1 to 5
        for i = 2 to 1 step -0.5
            cls
            for t = p to 2*pi step p
                x = power(sin(t),3) : y = cos(t) + power(cos(t),4)
                2d_poly_to xc+i*r*x,yc+r*y
            next t
            2d_flood xc,yc+5,255,0,0 : pause 300
         next i
    next j
END_SUB
rem ============================================================================
' conchoïdes de Rosace :
' Equation polaire : rho = r*(1+e*cos(n*t))
' avec e > 1 donnent d'assez crédibles fleurs.
' n : nombre de feuilles
SUB conchoide(r,n)
    dim_local e
    caption 10,"conchoïdes de Rosace"
    2d_pen_color 0,255,0
    for e = 0.1 to 5 step 0.1
        cls
        rho = r*(1+e*cos(n*t))
        x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_from  x,y
        for t = 0 to  2*pi step p
            rho = r*(1+e*cos(n*t))
            x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_to x,y
        next t : pause 500

     next e
END_SUB
rem ============================================================================
' Une variante :
' rho = r*(1+e*abs(cos(5*t))) avec e < 1 et le cercle de rayon r
SUB Tounesol(r,n)
    dim_local e
    caption 10,"Le tournesol"
    2d_pen_color 0,255,0
    for e = 0.0 to 5 step 0.5
        cls
        rho = r*(2+e*abs(cos(n*t)))
        x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_from  x,y
        for t = 0 to  2*pi step p
            rho = r*(2+e*abs(cos(n*t)))
            x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_to x,y
            
        next t
         2d_flood xc,yc,255,255,0 : 2d_circle xc,yc,r
         2d_flood xc,yc,255,255,255 : pause 1000
     next e
END_SUB
rem ============================================================================
' La feuille de canabis
' rho = (1+sin(t))*(1+0.9*cos(8*t))*(1+0.1*cos(24*t))
SUB Canabis(r)
    cls : 2d_pen_color 0,255,0 : caption 10,"La feuille de canabis"
        rho = r*(1+sin(t))*(1+0.9*cos(8*t))*(1+0.1*cos(24*t))
        x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_from  x,y
        for t = p to  2*pi step p
            rho = r*(1+sin(t))*(1+0.9*cos(8*t))*(1+0.1*cos(24*t))
            x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_to x,y
        next t : pause 500
END_SUB
rem ============================================================================
' La courbe du scarabée
' rho = (5*a/3)*cos(2*t)-a*cos(t)

SUB Scarabee(r)
    cls : 2d_pen_color 0,255,0 : caption 10,"La courbe du scarabée"
        rho =r* (10/3)*cos(2*t)-2*cos(t)
        x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_from  x,y
        for t = 0 to  2*pi step p
            rho = r*(10/3)*cos(2*t)-2*cos(t)
            x = xc + rho*cos(t) : y = yc + rho*sin(t) : 2d_poly_to x,y
        next t : pause 500
END_SUB
rem ============================================================================
Papydall-Admin
Papydall-Admin
Admin

Messages : 93
Réputation : 0
Date d'inscription : 08/09/2015
Age : 73
Localisation : MOKNINE (Tunisie)

https://papydall-panoramic.forumarabia.com

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

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