Forum de Programmation en langage PANORAMIC
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Mots-clés

Derniers sujets
»  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

»  Equation paramétrique de la super-ellipse
Mar 4 Juil - 17:29 par Admin

»  Exécution des fichiers CPL
Sam 1 Juil - 14:01 par Admin

» Un papa à la page.
Ven 30 Juin - 15:01 par Admin

Octobre 2017
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     

Calendrier Calendrier


Courbes polaires

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

Courbes polaires

Message par Admin le 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 ============================================================================

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

Messages : 68
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

- Sujets similaires

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