Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Compatibilité avec ABasic | |
| | |
Auteur | Message |
---|
lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Compatibilité avec ABasic Lun 13 Fév 2012 - 15:12 | |
| En surfant un peu sur le net, j'ai trouvé une example de code écrit dans ABasic. En moins d' 1 minute j'avais 'traduit' le code pour utiliser dans panoramic. Voici le code d'origine: - Code:
-
'spiro defnum x1 x2 y1 y2 xc yc xa ya an1 an2 an3 defnum st cr cg cb e da ti1 ti2 ti3 pi i
WIN 0 0 800 700 # "Spiro" Maincolor 0 0 0 Frontcolor 180 180 250 '--------------------------------- ti1=0.666 ti2=0.999 ti3=0.3315 pi=3.14593 '============================== x1=0 y1=0 x2=0 y2=0 xc=400 yc=360 xa=370.0 ya=370.0 an1=0.0 an2=pi/3 an3=0.0 st=0.1 cr=32 cg=32 cb=96 e=5000 da=.9999 Nosleep 1
x1=COS(an1)*xa*COS(an3)+xc y1=SIN(an2)*ya*SIN(an3)+yc for i = 1 to e x2=COS(an1)*xa*COS(an3)+xc y2=SIN(an2)*ya*SIN(an3)+yc Line x1 y1 x2 y2 RGB cr cg cb an1=an1+st*ti1 an2=an2+st*ti2 an3=an3+st*ti3 xa=xa*da ya=ya*da x1=x2 y1=y2 next i
Voici le code en Panoramic: - Code:
-
dim x1, x2, y1, y2, xc, yc, xa, ya, an1, an2, an3 dim st, cr, cg, cb, e, da, ti1, ti2, ti3, pi, i width 0, 800: height 0, 700: caption 0, "Spiro" 2d_pen_color 80, 80, 150 ti1=0.666 ti2=0.999 ti3=0.3315 pi=3.14593 x1=0 y1=0 x2=0 y2=0 xc=400 yc=360 xa=370.0 ya=370.0 an1=0.0 an2=pi/3 an3=0.0 st=0.1 cr=32 cg=32 cb=96 e=5000 da=.9999
x1=COS(an1)*xa*COS(an3)+xc y1=SIN(an2)*ya*SIN(an3)+yc
for i = 1 to e x2=COS(an1)*xa*COS(an3)+xc y2=SIN(an2)*ya*SIN(an3)+yc 2d_Line x1, y1, x2, y2 an1=an1+st*ti1 an2=an2+st*ti2 an3=an3+st*ti3 xa=xa*da ya=ya*da x1=x2 y1=y2 next i end S'il y avait beaucoup de codes sources de AurelBasic, il serait peut-être intéressant d'écrire une application qui interpret des codes de AurelBasic (par exemple) pour les traduire et exécuter en Panoramic a la fois. Quoique AurelBasic a encore qqs trucs que Panoramic n'as pas, comme accès a internet. | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 15:46 | |
| Je sens que ça te tente de faire un programme de traduction. En plus on peut partir de l'analyseur de code existant (comme celui de Nardo par exemple) pour la mise en forme automatique du code comme base | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:08 | |
| | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:17 | |
| Très joli en effet, mais on peut faire plus court et avoir une infinité de figures différentes: (Ça s'arrête à 121!) pas + de 2 minutes d'éxécution! - Code:
-
dim a,b,c,r c=0 while c<121 print c 2d_poly_from 200,200 for r=60 to 4800 step c a=200+r/20*cos(r):b=200+r/20*sin(r) 2d_poly_to a,b next r rem 2d_poly_to 200,200 wait 800 c=c+1 cls end_while | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:22 | |
| Ha oui ! quand tu dis une infinité..... Il faut ctrl+alt+sup sinon çà ne finit pas Edit: Je retire, çà finit | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:31 | |
| Pas mal ! et j'ai mis wait 200 pour aller plus vite et ne pas m'impatienter comme Jean Claude ! | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:37 | |
| Allez ! un peu de couleur et un stop - Code:
-
dim a,b,b2,c,r,r2,v: label fin c=0 on_close 0,fin while c<121 print c 2d_poly_from 200,200 for r=60 to 4800 step c a=200+r/20*cos(r):b=200+r/20*sin(r) r2=rnd(255):v=rnd(255):b2=rnd(255) 2d_pen_color r2,v,b2 2d_poly_to a,b next r 2d_poly_to 200,200 wait 800 c=c+1 cls end_while fin: terminate: ' accès violation
| |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:39 | |
| L'idée n'était pas d'optimiser, mais de montrer la quasi "réusabilité" des sources pour les traduire en Panoramic. Après, on peut optimiser, c'est autre chose | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:41 | |
| On s'amuse | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 16:42 | |
| | |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: Compatibilité avec ABasic Lun 13 Fév 2012 - 18:51 | |
| J'adore ces effets graphiques!! Je vais experimenter aussi! | |
| | | sergeauze
Nombre de messages : 391 Age : 72 Localisation : Hautes Alpes France Date d'inscription : 09/01/2010
| Sujet: re :Compatibilité avec ABasic Lun 13 Fév 2012 - 22:57 | |
| Salut pour ceux qui aiment les effets graphiques Ce code parametrable à souhait ,fruit de la collaboration de membres du forum - Code:
-
dim x0,y0,r,Px,Py,j%,n%,Pi,a,a0,a1,h,w picture 1 width 1,1500 height 1,1000 Pi = 4*ATN(1) w=1 ' coordonnées du centre x0=750 Y0=500 width 0,1500 height 0,1000 rem rayon r=500
rem nombre de côtés:' du polygone n%=80 a1 =( 2*Pi/n%)/w: ' angle de rotation de chaque côté
' angle de début a0=1 2d_target_is 1 for h = 1 to 120 Px = r * Cos(a0) + x0 Py = r/w * Sin(a0) + y0 2D_poly_from px,py a = a0 For j% = 0 To n% a = a + a1 Px = r*Cos(a) + x0 Py = r/w*Sin(a) + y0 2D_poly_to Px, Py if key_down_code = 27 then terminate Next j% wait 100 cls a0 = a0 + 1 w=w+0.1 :' inclimaison next h
C'est une bonne base | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Mar 14 Fév 2012 - 0:42 | |
| Tiens, une variante de ton code, colorisée - Code:
-
dim Px,Py,j%,h, a, a0
picture 1 : width 1,1200 : height 1,690
dim w : w=1
' Définition de Pi Dim Pi : Pi = 4*ATN(1)
width 0,1220 : height 0,730 ' coordonnées du centre dim x0,y0 : x0=600 : Y0=340
' rayon dim r : r=340
' nombre de côtés du polygone dim n% : n%=75 dim a1 : a1 =( 2*Pi/n%)/w: ' angle de rotation de chaque côté
' angle de début
2d_target_is 1 for h = 1 to 120 a = 1 2D_PEN_COLOR 255 - 3*a,3*a, 3*a Px = r * Cos(a) + x0 : Py = r/w * Sin(a) + y0 2D_poly_from px,py For j% = 0 To n% a = a +1 : 2D_PEN_COLOR 255 - 3*a,3*a, 3*a Px = r*Cos(a) + x0 : Py = r/w*Sin(a) + y0 2D_poly_to Px, Py if key_down_code = 27 then terminate Next j% wait 50 ' cls w=w+0.1 :' inclimaison next h w=1 for h = 1 to 120 a = 1 2D_PEN_COLOR 255 - 3*a,3*a, 3*a Px = r * Cos(a) + y0 : Py = r/w * Sin(a) + x0 2D_poly_from py,px For j% = 0 To n% a = a +1 : 2D_PEN_COLOR 255 - 3*a,3*a, 3*a Px = r*Cos(a) + y0 : Py = r/w*Sin(a) + x0 2D_poly_to Py, Px if key_down_code = 27 then terminate Next j% wait 50 ' cls w=w+0.1 :' inclimaison next h
| |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: Compatibilité avec ABasic Mar 14 Fév 2012 - 9:02 | |
| J'adore! | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Mer 15 Fév 2012 - 2:20 | |
| Tiens, je me suis un peu amusé avec le source d'hier encore, en partant sur le principe de bignono ... - Code:
-
label fin, passe dim maxtaille% : maxtaille%=500 dim i%, c1,c2,c3,s1,s2,s3, inc1, inc2, inc3, pas% picture 1 : width 1,maxtaille% : height 1,maxtaille% : 2D_target_is 1 width 0, maxtaille%+20 : height 0,maxtaille%+45
c1=0 : c2=180 : c3=253 :s1=0 : s2 =0: s3=0 inc1 = 2 : inc2 = 2 : inc3 = 5
for pas% = 1 to 24 if pas% = 19 or pas%=22 then goto passe : ' Le 19 et le 22 sont moches 2d_poly_from maxtaille%/2,maxtaille%/2 caption 0, pas% for i%=0 to maxtaille% step pas% if s1=0 if c1 < (256 - inc1) then c1 = c1+inc1: else: s1=1 : c1=255 else if c1 > (inc1 - 1) then c1 = c1-inc1: else: s1=0 : c1 = 0 end_if
if s3=0 if c3 < (256 - inc3) then c3 = c3+inc3: else: s3=1 : c3=255 else if c3 > (inc3 - 1) then c3 = c3-inc3: else: s3=0 : c3 = 0 end_if
2D_pen_Color c1,c2,c3 2d_poly_to maxtaille%/2-i%*cos(i%), maxtaille%/2 -i%*sin(i%) if key_down_code = 27 then goto fin next i% wait 1000 passe: cls next pas% caption 0, "c'est fini"
fin: terminate
Dernière édition par Jicehel le Mer 15 Fév 2012 - 7:55, édité 1 fois | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Compatibilité avec ABasic Mer 15 Fév 2012 - 5:58 | |
| Une petite erreur à la ligne 11, tu as oublié de répéter pas% après or. if pas% = 19 or pas%=22 then goto passe : ' Le 19 et le 22 sont moches A+ | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Mer 15 Fév 2012 - 7:56 | |
| Gloups, merci, j'ai corrigé dans le source ... | |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: Compatibilité avec ABasic Jeu 16 Fév 2012 - 11:11 | |
| Suite a la discussion sur le rotation d'un angle, voila un autre petit jeu: - Code:
-
dim x0,y0,xb,yb,xc,yc,xd,yd,lg,ha,a,pi pi = 4*atn(1) picture 1: full_space 1 x0= 300: y0= 220 lg = 200: ha = 100 2d_target_is 1 rem 2D_rectangle x0,y0,x0+lg,y0+ha: ' rectangle initial ' rotation de a radians autour du point x0,y0 for a=0 to 6.28 step 6*3.14/360 wait 20 2d_pen_color (255-a*255/6.28),0, (a*255/6.28) xb = x0 + lg*COS(a): yb = y0 - lg*SIN(a) xd = x0 + ha*SIN(a): yd = y0 + ha*COS(a) xc = xd + lg*COS(a): yc = yd - lg*SIN(a) 2D_LINE x0,y0,xb,yb: 2d_poly_to xc,yc: 2d_poly_to xd,yd: 2d_poly_to x0,y0 next a
| |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 0:53 | |
| Je m'éclate en ce moment avec vos petits codes qui me rappelle mes tout début, du coup, je me suis un peu amusé avec ton code depuis quelques minutes et ça donne ça: - Code:
-
' Modif du code de Lodchjo basé sur le code de JL35 .... :)
dim xb,yb,xc,yc,xd,yd,a dim marge : marge = 30 dim lg,ha : lg = 200: ha = 100 dim x0,y0 : x0= marge + lg: y0= marge + lg dim pi : pi = 4*atn(1)
width 0, 2*lg + 2*marge + 20 : height 0, 2*lg+2*marge + 40 picture 1: full_space 1 2d_target_is 1 ' rotation de a radians autour du point x0,y0 for a=0 to 2*pi step 6*pi/360 wait 20 if a < pi 2d_pen_color (255-a*255/pi),0, (a*255/pi) else 2d_pen_color ((a-pi)*255/pi),0, (255-(a-pi)*255/pi) end_if xb = x0 + lg*COS(a): yb = y0 - lg*SIN(a) xd = x0 + ha*SIN(a): yd = y0 + ha*COS(a) xc = xd + lg*COS(a): yc = yd - lg*SIN(a) 2D_Line x0,y0,xb,yb: 2d_poly_to xc,yc: 2d_poly_to xd,yd: 2d_poly_to x0,y0 2D_Circle x0,y0, lg/2 next a
Dernière édition par Jicehel le Ven 17 Fév 2012 - 13:19, édité 2 fois | |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 11:09 | |
| Hôô, c'est joli!!! On est quand même pas que des programmeurs, mais aussi des artistes!! (juste un petit rectif: 'ma' code est basé sur une code de JL35 ) | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 13:18 | |
| Woui, je modfie par modif du code de lodchjo basé sur le code de JL35 !! ^^ | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 14:00 | |
| ça me donne envie de modifier le code de jicehel basé sur le code de lodchjo lui-même inspiré du code de jl35... comme ça la boucle sera bouclée ! | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 16:08 | |
| Tant qu'a faire du fil tendus... A mon tour... - Code:
-
' Modif du code de Jicehel basé sur le code de Lodchjo basé sur le code de JL35 .... :)
dim lg,ha : lg = 300: ha = 200 dim x0,y0 dim x1,y1,x
width 0, 2*lg + 20 : height 0, 4*ha+ 40 picture 1: full_space 1 2d_target_is 1 dim pas:pas=140 for x=-2 to 2 step 0.05 wait 20 x0=x:x1=-1*(x) y0=abs(x)+sqr(4-power(x,2)) y1=abs(x)-sqr(4-power(x,2)) 2D_Line lg-(x0*pas),2*ha-(y0*pas),lg-(x1*pas),2*ha-(y1*pas)
next x | |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 16:31 | |
| - Citation :
- Modif du code de Jicehel basé sur le code de Lodchjo basé sur le code de JL35 ....
LOL!! En rouge et t'as un coeur magnifique!!! C'est excellent celui-ci, bravo!! Lode | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Compatibilité avec ABasic Ven 17 Fév 2012 - 17:05 | |
| Bon, il faut que je mette aussi mon grain de sel dans cette histoire là! J'ai légèrement modifié le code de Nardo, mais alors très légèrement. Bon, vous me direz que la saint Valentin c'était il y a 3 jours! Mais vaut mieux tard que jamais! - Code:
-
' Modif du code de Nardo basé sur le code de Jicehel basé sur le code de Lodchjo basé sur le code de JL35 .... :)
dim lg,ha : lg = 300: ha = 200 dim x0,y0 dim x1,y1,x
width 0, 2*lg + 20 : height 0, 4*ha+ 40 picture 1: full_space 1 2d_target_is 1 dim pas:pas=140 2d_pen_color 255,0,0 for x=-2 to 2 step 0.01 wait 20 x0=x:x1=-1*(x) y0=abs(x)+sqr(4-power(x,2)) y1=abs(x)-sqr(4-power(x,2)) 2D_Line lg-cos(lg)-(x0*pas),2*ha-(y0*pas),lg-sin(lg)+(x1*pas),2*ha-(y1*pas)
next x | |
| | | Contenu sponsorisé
| Sujet: Re: Compatibilité avec ABasic | |
| |
| | | | Compatibilité avec ABasic | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |