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
» bouton dans autre form que 0
Les programmes de papydall - Page 2 Emptypar leclode Aujourd'hui à 13:59

» KGF_dll - nouvelles versions
Les programmes de papydall - Page 2 Emptypar Klaus Aujourd'hui à 11:41

» Gestion d'un système client-serveur.
Les programmes de papydall - Page 2 Emptypar Klaus Aujourd'hui à 10:23

» PANORAMIC V 1
Les programmes de papydall - Page 2 Emptypar papydall Sam 4 Mai 2024 - 3:43

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Les programmes de papydall - Page 2 Emptypar Froggy One Jeu 2 Mai 2024 - 11:16

» @Jack
Les programmes de papydall - Page 2 Emptypar Jack Mar 30 Avr 2024 - 20:40

» trop de fichiers en cours
Les programmes de papydall - Page 2 Emptypar papydall Lun 29 Avr 2024 - 23:39

» Une calculatrice en une ligne de programme
Les programmes de papydall - Page 2 Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Les programmes de papydall - Page 2 Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
Les programmes de papydall - Page 2 Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
Les programmes de papydall - Page 2 Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Les programmes de papydall - Page 2 Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Dessine-moi une galaxie
Les programmes de papydall - Page 2 Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Les programmes de papydall - Page 2 Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Les programmes de papydall - Page 2 Emptypar papydall Dim 21 Avr 2024 - 23:30

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le deal à ne pas rater :
Cartes Pokémon 151 : où trouver le coffret Collection Alakazam-ex ?
Voir le deal

 

 Les programmes de papydall

Aller en bas 
+6
Froggy One
Ouf_ca_passe
JL35
Minibug
papydall
jean_debord
10 participants
Aller à la page : Précédent  1, 2, 3, 4, 5, 6, 7, 8  Suivant
AuteurMessage
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyVen 6 Déc 2019 - 4:44

+ 1

Code:

rem =================================================================
dim x,y,xc,yc,d,i
mode 3, "Ah ! LES BELLES BOUCLES ! ... <ESCAPE pour sortir",1000,800
origin 500,400
  
repeat
    cls
    randomize timer
    D = 1.20123456789 + rnd() : i = 0 : x = 0 : y = 0
    repeat
       i = i + 1.25 : X = X + sin(D * I^D): Y = Y + COS(D * I^D)
       pen rgb( i mod 255,int(rnd()*255),i mod 255)
       plot x,y : plot -x,-y : plot x,-y : plot -x,y
       if (i mod 100) = 0 then sleep 1  : ' Pour ralentir un peu le tracé
    until i > 180000
    sleep 2000
until inkey$() = "ESCAPE"
end
rem ====================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyVen 6 Déc 2019 - 4:58

++ 1

Code:

rem =================================================================
dim x,y,q

mode 3,"EQUATIONS CARTESIENNES",1000,800 : origin 500,400
FOR x = -9.4 TO 0 step .01
    FOR y = -6.8 TO 6.8 STEP .001
        q = x*x + y*y - x*y
     '   q = x*x + y*y*y
     '   q = x*x*x + y*y*y
     '   q = x*x*x + y*y
     '   q = x*x*x*x + y*y
     '   q = x*x*x*x + y*y*y
     '   q = x + y*y*y
     '   q = x*x*x - y*y*y + x*y
        if (q - 4*int(q/4)) < 1 then pen rgb(255,255,0) else pen rgb(255,0,0)
        plot 50*x,-50*y : plot -50*x,-50*y        
    NEXT y
NEXT x
pen rgb(255,255,255)
' locate 1,2 :
print "Une touche pour sortir ..." , -300,390
while inkey() = "" : wend
rem ========================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyVen 6 Déc 2019 - 20:29

Bravo papydall ! Ces graphismes sont vraiment très réussis !

Voici une variante du programme des boucles avec la colorisation HSV :

Code:

' =================================================================
const RadToDeg = 180 / PI
dim a, x,y,xc,yc,d
dim i%, r%, g%, b%
mode 3, "Ah ! LES BELLES BOUCLES ! ... <ESCAPE pour sortir",1000,800
origin 500,400
  
repeat
    cls
    randomize timer
    D = 1.20123456789 + rnd() : i = 0 : x = 0 : y = 0
    repeat
       i = i + 1.25 : X = X + sin(D * I^D): Y = Y + COS(D * I^D)
       a = atan2(y,x) * RadToDeg + 180
       HSVtoRGB a, 1, 1, r, g, b
       pen RGB(r, g, b)
       plot x,y : plot -x,-y : plot x,-y : plot -x,y
       if (i mod 100) = 0 then sleep 1  : ' Pour ralentir un peu le trace
    until i > 180000
    sleep 2000
until inkey$() = "ESCAPE"
end
' ====================================================================
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyVen 6 Déc 2019 - 22:36

Merci Jean.

Effectivement, avec la colorisation HSV c’est beaucoup mieux.
Je l’adopterai (et l’adapterai) dans mes futures codes.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 9 Déc 2019 - 7:27

Effet Plasma


Code:

rem =================================================================
rem                    Plasma Screen
rem =================================================================
const w = 256
const h = 256

dim a,b,c,d,x,y,time_, value
dim s1,s2,s3,s4

mode 3,"Plasma Screen", w,h

def dist(a,b,c,d) = Sqr(((a - c) * (a - c) + (b - d) * (b - d)))

Plasma

end
rem =================================================================
SUB Plasma()
    while inkey$ = ""
        time_=  time_ + .99   : ' Augmenter / diminuer cette valeur pour accélérer / ralentir l'effet plasma
        for x = 0 to w-1
            for y = 0 to h-1
                s1 = Sin(dist(x + time_, y, 128, 128) / 8 )
                s2 = Sin(dist(x, y, 64, 64) / 8 )
                s3 = Sin(dist(x, y + time_ / 7, 192, 64) / 7 )
                s4 = Sin(dist(x, y, 192, 100) / 8 ) + 4
                value = s1 + s2 + s3 + s4
                c = int(value * 32)
                pen rgb(c, c * 2, 255 - c)
                plot x,y
            next y
        next x
    wend
END_SUB
rem =================================================================


Edit :
Le forum a tronqué les lignes de code contenant 8 ) qu'il considère comme caractère smiley Cool !!! ... et pourtant ces lignes sont entre les balises code qui, normalement doivent être préservées comme telles.
C'est corrigé.


Dernière édition par papydall le Lun 9 Déc 2019 - 13:58, édité 4 fois
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 9 Déc 2019 - 9:10

Merci papydall Smile

Toutefois le code semble corrompu : dans les calculs de s1 à s4 on a des barres de fraction superflues et des parenthèses manquantes.

J'ai essayé de rétablir comme ceci :

Code:

s1 = Sin(dist(x + time_, y, 128, 128))  
s2 = Sin(dist(x, y, 64, 64))
s3 = Sin(dist(x, y + time_ / 7, 192, 64) / 7)
s4 = Sin(dist(x, y, 192, 100) + 4)

Est-ce correct ?
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 9 Déc 2019 - 13:48

Bonjour / bonsoir Jean
Effectivement le forum m’a, une fois de plus, tronqué les lignes de code contenant 8 ) .
Il considère que c’est un caractère smiley !!! Cool
J’ai corrigé ci-dessus, en ajoutant un caractère espace avant de fermer la parenthèse.

Voici ce que ça donne:

et l'animation en plus !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 9 Déc 2019 - 15:52

Merci. Effectivement c'est mieux comme cela.

J'ai déjà eu ce problème avec les smileys.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Minibug

Minibug


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 9 Déc 2019 - 18:02

Encore une petite pépite ! Laughing

Génial cette animation. cheers

Bravo à tous les 2...
Jean pour FB Croco et Papydall pour ton code ! geek

Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 9 Déc 2019 - 21:43

Merci Minibug.

Code:

rem ============================================================================
rem         IMPLEMENTATION DES COMMANDES TURTLE DU TYPE LOGO
rem ============================================================================
rem  LES COMMANDES SUIVANTES SONT DISPONIBLES
rem
rem  FPOS(xp,yp)  :  Place la tortue en (xp,yp), le cap n est pas modifié
rem  ORIGINE()    :  Remet la tortue à l origine, cap vers le Nord
rem  FCAP(angle0) :  Oriente la tortue dans une direction (en degrés)
rem  AVANCE(d)    :  Avance de d pixels en dessinant
rem  RECULE(d)    :  Recule de d pixels en dessinant
rem  GAUCHE(a)    :  Tourne à gauche de a degrés
rem  DROITE(a)    :  Tourne à droite de a degrés
rem ============================================================================
rem &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
rem ============================================================================
rem DEMO
const Deg2Rad = pi/180  
dim x,y,x0,y0,angle  : ' variables utilisées dans les commandes de la "tortue"
dim l, g, c, d, a, v, k, s, n : ' variables utilisées pour le tracé de l'arbre

mode 3,"L'arbre fractal ",800,600 : origin 400,300

x0 = 0 : y0 = 0 : origine

rem ============================================================================================
' Essayez avec d'autres valeurs pour des nouveaux arbres

 l = 70  : ' longueur du tronc              (44,   45,   14,   38,   61,  65,   55,   70,   etc..)
 g = 0.63 : ' coefficient gauche             (0.63, 0.62, 1.11, 0.84, 0.5, 0.75, 0.55, 0.73, etc..)
 c = 0.84 : ' coefficient centre             (0.84, 0.9,  1,    0.87, 0.7, 0.5,  0.72, 0.63, etc..)
 d = 0.7  : ' coefficient droite             (0.7,  0.68, 1.14, 0.76, 0.6, 0.68, 0.55, 0.68, etc..)
 a = 34   : ' angle                          (34,   32,   25,   13,   120, 45,   90,   52,   etc..)
 v = -2   : ' variation de l'angle           (-2,   -2,   3,    -4,   0,   0,    0,    3,    etc..)
 k = 20   : ' courbure                       (20,   15,   15,   5,    0,   0,    0,    15,   etc..)
 s = 1 : ' même sens = 0 ou sens alterné = 1 (1,    0,    1,    1,    0,   0,    0,    1,    etc..)
 n = 8   : ' niveau de ramification          (,8    8,    8,    8,    8,   9,    8,    8,    etc..)
rem ============================================================================================

fpos(0,-150)    : Arbre(l,a,n)
fpos(-200,100)  : Arbre(35,a,n)
fpos(-350,200)  : Arbre(20,30,8)
fpos(350,200)   : Arbre(15,25,8)
fpos(250,-250)  : Arbre(60,15,8)
fpos(170,0)     : arbre(65,13,8)
fpos(-300,0)    : arbre(44,10,5)
fpos(-220,-250) : arbre(50,45,9)
v = 3 : k = 15  : g = 0.9 : fpos(-50,200)       : arbre(25,50,7)
g = 0.4 : d = 0.4 : v = 0 : k = 0 : fpos(350,0) : arbre(30,30,8)

rem ============================================================================
pen rgb(255,255,0)
locate 15,35 : print "Une touche pour sortir ..."
while inkey() = "" : wend
end
rem ============================================================================
SUB Arbre(l,a,n)
    pen RGB(100,220, 80)
    if n > 0 then
       if n > 4 then
              droite(90)  
           gauche(90)
       end_if
        avance(l) : gauche(a)
       arbre(l*g, a-v, n-1)
       if (s = 0) or (n mod 2 = 1) then
          droite(a+k)
       else
          droite(a-k)
       end_if
       arbre(l*c, a-v, n-1)
       if (s = 0) or (n mod 2 = 1) then
          droite(a-k)
       else
          droite(a+k)
       end_if
       arbre(l*d,a-v, n-1)
       gauche(a)
        recule(l)
    end_if

END_SUB
rem ============================================================================
rem &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
rem ============================================================================
'         *************  Commandes du type LOGO    *********************
rem ============================================================================
rem &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
rem ============================================================================
' Place la tortue en (xp,yp), le cap n'est pas modifié
SUB fpos(xp,yp)
    x = xp
    y = yp
END_SUB
rem ============================================================================
'  Remet la tortue à l'origine, cap vers le Nord
'  Les angles sont en degrés et sont comptés dans le sens horaire
'  0° (ou 360) correspond à la direction  NORD
' 90°  ---------------------------------- EST
' 180° ---------------------------------- SUD
' 270° ---------------------------------- OUEST
SUB Origine()
    fpos(x0,y0)
    fcap(90)
END_SUB
rem ============================================================================
' Oriente la tortue dans une direction (en degrés)
' Les angles sont comptés dans le sens horaire (l'axe horizontal correspond à 0°)
SUB fcap(angle0)
    angle = angle0  
END_SUB
rem ============================================================================
' Avance de d pixels en dessinant
SUB avance(d)
    dim x2,y2
    x2 = x + d * cos(angle*Deg2Rad)
    y2 = y + d * sin(angle*Deg2Rad)
    plot x,y : draw x2,y2
    x = x2 : y = y2
END_SUB
rem ============================================================================
' Récule de d pixels en dessinant
SUB recule(d)
    avance(-d)
END_SUB
rem ============================================================================
' Tourne à gauche de a degrés
SUB gauche(a)
    angle = angle - a
END_SUB
rem ============================================================================
' Tourne à droite de a degrés
SUB droite(a)
    angle = angle + a
END_SUB
rem ============================================================================
'        *************  Fin Commandes LOGO    *********************          
rem ============================================================================


Spoiler:
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMar 10 Déc 2019 - 8:59

Merci papydall Smile

Après le crocodile, la tortue !

On reste dans les reptiles ...

Dans un autre ordre d'idées, voici un exemple de ce qu'on pourra obtenir avec les futures commandes graphiques FLTK :

Les programmes de papydall - Page 2 Boites10

C'est la même instruction qui trace tous les motifs. Il suffit de lui passer le numéro du motif en paramètre.

Pour plus de clarté, les numéros peuvent être remplacés par des mnémoniques, p. ex . 1 = FL_FLAT_BOX, 2 = FL_UP_BOX etc. (voir FBPano pour la liste).
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMar 10 Déc 2019 - 10:56

Deux autres exemples :

1) Un cercle pointillé avec des extrémités arrondies :

Les programmes de papydall - Page 2 Cercle10

2) Trois rectangles montrant les 3 types de jonctions entre les segments :

Les programmes de papydall - Page 2 Rectan10
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMar 10 Déc 2019 - 14:25

Merci Jean pour toutes ces précisions.
Unfortunately, there are not many people interested in reptiles !
Personnellement, je vais "osciller" entre le crocodile et la tortue entre deux vues PANORAMIquesC
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMer 11 Déc 2019 - 9:33

Bonjour Papydall,

Voici ce que donne l'arbre fractal avec les fonctions FLTK en faisant varier l'épaisseur des lignes.

Est-ce bien ce que tu voulais ?

Les programmes de papydall - Page 2 Arbre10
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMer 11 Déc 2019 - 11:43

Bonjour Jean.
Oui, c’est ça.

L’idéal serait comme
ceci:

Voici le code en Free basic qui génère cette belle forêt.

Code:

#define SCRX 1280
#define SCRY 1024

CONST MaxTrees   AS INTEGER = 20
CONST Iterations AS INTEGER = 800000

Screenres SCRX, SCRY, 32,,1

Dim as double A, B, C, D, E, F, x, y, ox, oy, col
Dim shared as double DTree(1 to 6, 1 to 6)
Dim as integer r, i, hx, hy, p, cnt
hx = SCRX/2
hy = SCRY - 10

dim as double RX, RY

DTree(1,1) =  0.0500: DTree(1,2) =  0.6000: DTree(1,3) =  0.0000: DTree(1,4) =  0.0000: DTree(1,5) =  0.0000: DTree(1,6) =  0.0000
DTree(2,1) =  0.0500: DTree(2,2) = -0.5000: DTree(2,3) =  0.0000: DTree(2,4) =  0.0000: DTree(2,5) =  0.0000: DTree(2,6) =  1.0000
DTree(3,1) =  0.6000: DTree(3,2) =  0.5000: DTree(3,3) =  0.6980: DTree(3,4) =  0.6980: DTree(3,5) =  0.0000: DTree(3,6) =  0.6000
DTree(4,1) =  0.5000: DTree(4,2) =  0.4500: DTree(4,3) =  0.3490: DTree(4,4) =  0.3492: DTree(4,5) =  0.0000: DTree(4,6) =  1.1000
DTree(5,1) =  0.5000: DTree(5,2) =  0.5500: DTree(5,3) = -0.5240: DTree(5,4) = -0.5240: DTree(5,5) =  0.0000: DTree(5,6) =  1.0000
DTree(6,1) =  0.6500: DTree(6,2) =  0.4000: DTree(6,3) = -0.6980: DTree(6,4) = -0.6980: DTree(6,5) =  0.0000: DTree(6,6) =  0.7000

Randomize Timer

#define SplitR(col1) ((col1 Shr 16) and &HFF)
#define SplitG(col1) ((col1 Shr  And &HFF)
#define SplitB(col1) (col1 And &HFF)
#define RGBF(RR,GG,BB) (((RR)Shl 16) Or ((GG)Shl  Or (BB))
#macro SATURATE()
    If r > 255 Then
        r = 255
    elseif r < 0 then
        r = 0
    Endif
    If g > 255 Then
        g = 255
    elseif g < 0 then
        g = 0
    Endif
    If b > 255 Then
        b = 255
    elseif b < 0 Then
        b = 0
    endif
#endmacro

Function AdditiveMix(colr1 As Integer, rr As Integer, gg As Integer, bb As Integer) As Integer
    Dim As Integer r,g,b
    r = (SplitR(colr1) + rr)
    g = (SplitG(colr1) + gg)
    b = (SplitB(colr1) + bb)
    SATURATE()
    Return RGBF(r,g,b)
End Function

Type TreeType
    as double  ox, oy, mul, px, py, Sets(1 to 6, 1 to 6)
    as integer r,g,b, exist
End Type

reDim shared as TreeType Trees(1 to MaxTrees)

Sub AddTree(x as double, y as double, m as double, r as integer, g as integer, b as integer, offs as double)
    Dim as integer i, xs, ys
    For i = 1 to MaxTrees
        If Trees(i).exist = 0 Then
            Trees(i).exist = 1
            Trees(i).px   = x
            Trees(i).py   = y
            Trees(i).mul  = m
            For ys = 1 to 6
                For xs = 1 to 6
                    Trees(i).Sets(xs,ys) = DTree(xs,ys)+((rnd * offs)-offs/2)
                Next xs
            Next ys
            Trees(i).r = r
            Trees(i).g = g
            Trees(i).b = b
            Exit For
        Endif
    Next i
End Sub

DO
If cnt = 6 Then
    cls
    cnt = 0
Endif
Redim as TreeType Trees(1 to MaxTrees)

For i = 1 to int(rnd * 3)
    AddTree rnd * SCRX, 500+ rnd * (SCRY-500), rnd * 300+100, 16+int(rnd * 16), 16+int(rnd * 16), 16, 0.05
Next i


For i = 1 to Iterations
    For p = 1 to MaxTrees
        If Trees(p).exist = 1 Then
            With Trees(p)
                r = int(rnd * 6) + 1
                A = .Sets(r,1): B = .Sets(r,2): C = .Sets(r,3)
                D = .Sets(r,4): E = .Sets(r,5): F = .Sets(r,6)
                x = (A*COS(C)*.ox)-(B*SIN(D)*.oy)+E
                y = (A*SIN(C)*.ox)+(B*COS(D)*.oy)+F
                .ox = x
                .oy = y
                RX = .px-x*.mul
                RY = .py-y*.mul
                Pset (RX, RY), AdditiveMix(Point(RX,RY), .r,.g,.b)
                If multikey(&h01) Then end
            End With
        Endif
    Next p
Next i

cnt += 1
LOOP
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Les programmes de papydall - Page 2 Empty
MessageSujet: Vous nous gâtez   Les programmes de papydall - Page 2 EmptyMer 11 Déc 2019 - 15:29

Merci de mettre vos savoirs (incommensurables) à disposition de Panoramic, FBpano/croco/logo.


C'est Noël avant l'heure !
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMer 11 Déc 2019 - 20:56

Le forum (fort homme ?) a encore frappé ! Dans le programme FreeBASIC il manque des 8 dans :

Code:

#define SplitG(col1) ((col1 Shr 8 ) And &HFF)
#define RGBF(RR,GG,BB) (((RR)Shl 16) Or ((GG)Shl 8 ) Or (BB))

(NB. Dans FBCroco, ce sont les fonctions RGBA_G et RGB)
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyJeu 12 Déc 2019 - 0:22

Voici la partie du code en question
Code:

#define SplitR(col1) ((col1 Shr 16) and &HFF)
#define SplitG(col1) ((col1 Shr 8 ) And &HFF)
#define SplitB(col1) (col1 And &HFF)
#define RGBF(RR,GG,BB) (((RR)Shl 16) Or ((GG)Shl 8 ) Or (BB))
#macro SATURATE()


Le Forum fort homme doit normalement préserver comme tel tout ce qui se trouve  entre les balises code.
Personnellement, je veille à ajouter un caractère espace avant de fermer la parenthèse pour faire dire
au forum de respecter mon code, mais il m’arrive souvent de relâcher ma vigilance.


@Ouf_ça_passe

Dis jeune homme, tu te fais rare sur le forum ces derniers temps, Ouf ca passe ou ca passe plus!
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Les programmes de papydall - Page 2 Empty
MessageSujet: Respects   Les programmes de papydall - Page 2 EmptyJeu 12 Déc 2019 - 9:53

Bonjour Papydall,

Tu m’étonneras toujours.

Je suis là, tout le temps, à vous suivre tou(te)s mais en mode veille ?. Sleep

J’attends que l’un d’entre vous se lance dans ce que j’appelle le maquettage.
C’est-à-dire en « mode création » la possibilité de déposer un objet graphique à l’intérieur d’un FORM et de le déplacer avec la souris-main et de le redimensionner avec la souris-flèche.

Mais peut-être que le Générateur de Programme PANORAMIC de Minibug fait déjà ça.

Une fois que le FORM a pris forme à l’écran, YAPUKA lancer la génération automatique du code du GUI (l’an neuf. Elle était facile celle-là) comme vous l’appelez.

Après, reste à programmer, bien sûr.

PS. Petite chanson :
« 
Qui a eu cette idée folle un jour d’inventer l’école ? (bis)
- C’est ce sacré Papydall(e)
Sacré Papydall

Participes passés,
leçons de français,
de mathématiques,
de PANORAMIC.

Que de (bis)
travail (bis)

Sacré, Sacré, Sacré, Sacré, Sacré Papydall

(air connu)
« 
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyVen 13 Déc 2019 - 9:03

Ouf_ca_passe a écrit:

C’est-à-dire en « mode création » la possibilité de déposer un objet graphique à l’intérieur d’un FORM et de le déplacer avec la souris-main et de le redimensionner avec la souris-flèche.

Regarde dans FBPano le programme exemple FLTK\ex85
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Les programmes de papydall - Page 2 Empty
MessageSujet: Développement langages   Les programmes de papydall - Page 2 EmptyVen 13 Déc 2019 - 9:57

Merci Jean

Je vais voir ça mais je t'avouerais que j'ai du mal à te suivre entre FBPano, FBcroco et FBlogo.
C'est beaucoup pour moi.

Continues-tu à développer FBPano ?

Cordialement
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyVen 13 Déc 2019 - 10:26

Ouf_ca_passe a écrit:

Continues-tu à développer FBPano ?      

Non. Toutes les fonctionnalités de FBPano seront progressivement ajoutées à FBCroco. L'ajout des fonctions graphiques FLTK n'est qu'un début. Les widgets seront ajoutés par la suite, avec une syntaxe un peu différente (et, je l'espère, un peu plus simple !)

A terme, il n'y aura qu'un seul programme (FBCroco)

Et il n'y a pas de FBlogo. C'est juste un exemple de papydall.

Les exemples de FBPano restent valables pour montrer ce qu'il est possible de faire avec FLTK.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyLun 16 Déc 2019 - 11:06

papydall a écrit:

Voici le code en Free basic qui génère cette belle forêt.

Je suis en train de l'adapter pour FBCroco.

D'où vient ce programme ? Du forum FreeBasic je suppose ?

Il me semble reconnaître le style de "dodicat", et notamment sa tendance à abuser des macros  Evil or Very Mad

Le forum FB fourmille d'exemples qui mériteraient d'être adaptés !
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMar 17 Déc 2019 - 15:28

jean_debord a écrit:
D'où vient ce programme ? Du forum FreeBasic je suppose ?

En toute franchise je n’en sais  rien !
Je l’ai dans le dossier exemples de FreeBasic et qui date du 09/11/2015
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 EmptyMer 18 Déc 2019 - 8:48

Je ne trouve rien dans mon installation de FreeBasic.

Quel est le nom du programme ?
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Contenu sponsorisé





Les programmes de papydall - Page 2 Empty
MessageSujet: Re: Les programmes de papydall   Les programmes de papydall - Page 2 Empty

Revenir en haut Aller en bas
 
Les programmes de papydall
Revenir en haut 
Page 2 sur 8Aller à la page : Précédent  1, 2, 3, 4, 5, 6, 7, 8  Suivant
 Sujets similaires
-
» Bienvenue à PRO Positif Plus !
» Lister les polices disponibles sur votre ordinateur
» Welcome Papydall
» Les articles de Papydall
» @ Papydall, (Joke)

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Expériences autour de PANORAMIC :: Crocodile Basic-
Sauter vers: