illuBox : illusion optique sur une boîte

les centres de la face avant et du couvercle de cette boîte sont strictement de la même couleur !
utiliser 'util gam1' en bas de page ...
    → sélectionner le script "illuBox" ..
    • (ce bouton bleu ci-après)
    • ou : en bas, bouton « lister » ; puis, sélectionner "illuBox" → bouton « util gam1 »
      → bouton « code Applette »
ou bien : copier coller dans une des applettes gam1 =>
    voir/créer du gam1 » ) ou (« paint/compare =>HTML » )

Editer script ‘illuBox’
_-_-_-_-_-_ illuBox _-_-_ (normal DIRECT 360X360 ) _-_-_-_-_-_

_-_-_-_-_-_  illuBox _-_-_ (compact DIRECT)  _-_-_-_-_-_
$V0: type=decimal(0)	#
$V0: type=decimal(0)	#
$V0: type=decimal(0)	#
$V0: type=decimal(0)	#
R0o: cc=90,90,180§ cf=20,20,40§ %grad2=-3;90§ gradCyc§ p1=0;0§ dM=%W100;%H100	!

$V1: type=nombre(0,0,56)	#
CMD: !=>	!
  $V1:_contours	type=COL_C(gris-clair)	#
  $V2:_hautHerbe	type=nombre(50,35,90,@)	#
  $V3:_courbe	type=nombre(20,-33,33,@)	#
  $V4:_posHerbe	type=nombre(240,270,400,@)	#
  P1:p=$V3;$V2	VU_N	#
  P2:p=$V4;$V2*0.3+270+P1.x	VU_N	#
  G1:cc=$V1	cf=60,220,180,0.87,Ss	pts=e-18!_P2.x;P2.y!	_7;1|	e20!_P1.x+10;P1.y*-1|	&#
CMD: !<=GRP2:_herbe ,copie=evolutive	#

GRP6: Clone(GRP2), $V2.v=@,	$V4.v=@,	G1.vu=$V3+/T2.vu,	#
GRP7: Clone(GRP2), $V2.v=@,	$V3.v=@,	#

CMD5020: #-> ?=(OUI)	#
CMD5030: #  GRP2[$V1]: $V2.v=@	#
CMD5040: #  $V1.Plus(1) #
CMD5050: #<- ?=($V1<22)	#
CMD5060: @ GRP2[0_]	!

P0bid: p=1;2	%setK=234	VU_N	!
P0o: p=%W15;%H45	VU_N	!
P0on: p=%k12;%k10	VU_N	!

A1001: p=40;%H95	bo=10;51	va=50	#
A1002: p=%W40;%H95	bo=10;200	va=120	#

$V001: type=decimal((A1001.va*0.01))	#
$V002: type=decimal((A1002.va*0.01))	#
P01: p=($V001.sin()*P0on.y);($V001.cos()*P0on.y)	VU_N	#
P02: p=P0on.x;%k9	VU_N	!
P03: p=($V002.sin()*P02.x);($V002.cos()*P02.x)	VU_N	#

CMD: !=>	!
  P0:p=..P0o.x;..P0o.y	VU_N	!
  $V1: type=nombre(8,0,9)	#
  $V2: type=nombre(4,0,9)	#
  P1:p=..P01.x;..P01.y	VU_N	#
  P3:p=..P03.x;..P03.y	VU_N	#

  $V5: type=nombre(100,40,255,@)	#
  $V3: type=nombre(250,120,255,@)	#
  $V4: type=nombre(180,0,255,@)	#
  P4: p=$V5;$V3	VU_N	#
  P5: p=$V4;1.0	VU_N	#

P9:p=P0.x+P3.x*$V1+P1.x*$V2;P0.y+P3.y*$V1-P1.y*$V2	VU_N	#
  G1: cc=blanc	cf=P4.x,P4.y,P5.x,P5.y,Ss	pts=_P9.x;P9.y!	_P1.x;(0-P1.y)|	_P3.x;P3.y|	_(0-P1.x);P1.y|	&#
CMD: !<=GRP1:_top ,copie=evolutive	#

$V3: type=nombre(0,0,9)	#
$V4: type=nombre(0,0,9)	#
$V5: type=nombre(0,0,25)	#
CMD0a00: #-> ?=(OUI)	#
CMD0a022: #-> ?=(OUI)	#
CMD0a023: #  $V5.v=(($V3*5)+$V4)	#
CMD0a024: #  GRP1[$V5]: $V1.v=..$V3,	$V2.v=..$V4,	#
CMD0a026: #  $V4.Plus(1)	#
CMD0a027: #<- ?=($V4<5)	#
CMD0a028: #  $V4.v=0;	#
CMD0a04: #  $V3.Plus(1)	#
CMD0a06: #<- ?=($V3<5)	#
CMD0a09: @ GRP1[0_]	!

CMD: !=>	!
  P0:p=..P0o.x;..P0o.y	VU_N	!
  P2:p=..P02.x;..P02.y	VU_N	!
  $V1: type=nombre(9,0,9)	#
  $V2: type=nombre(4,0,9)	#
  P3:p=..P03.x;..P03.y	VU_N	#
  $V4b: type=nombre(9,5,12,@)	#
  $V6b: type=nombre(10,3,20,@)	#
  $V8b: type=nombre(7,2,30,@)	#
  P4: p=($V4b);($V6b)	VU_N	#
  P5: p=($V8b);1	VU_N	#
  P9:p=P0.x+P3.x*$V1;P0.y+P3.y*$V1+P2.y*$V2	VU_N	#
  G1: cc=gris-sombre	cf=P4.x,P4.y,P5.x,P5.y,Ss	pts=_P9.x;P9.y!	_P3.x;P3.y|	_0;P2.y|	_(0-P3.x);(0-P3.y)|	&#
CMD: !<=GRP4:_front ,copie=evolutive	#

CMD0b00a: #  $V3.v=0	#
CMD0b00b: #  $V4.v=0	#
CMD0b00c: #  $V5.v=0	#
CMD0b01: #-> ?=(OUI)	#
CMD0b022: #-> ?=(OUI)	#
CMD0b023: #  $V5.v=(($V3*5)+$V4)	#
CMD0b024: #  GRP4[$V5]: $V1.v=..$V3,	$V2.v=..$V4,	#
CMD0b026: #  $V4.Plus(1)	#
CMD0b027: #<- ?=($V4<5)	#
CMD0b028: #  $V4.v=0	#
CMD0b04: #  $V3.Plus(1)	#
CMD0b06: #<- ?=($V3<5)	#
CMD0b09: @ GRP4[0_] !

CMD: !=>	!
  P0:p=..P0o.x;..P0o.y	VU_N	!
  P1:p=..P01.x;..P01.y	VU_N	!
  P2:p=..P02.x;..P02.y	VU_N	!
  $V4: type=nombre(50,15,100,@)	#
  $V5: type=nombre(30,15,100,@)	#
  $V1: type=nombre(9,0,9)	#
  $V2: type=nombre(9,0,9)	#
  P3:p=..P03.x;..P03.y	VU_N	#
  P9:p=P0.x+P1.x*$V1+P3.x*5;P0.y+P2.y*$V2+P3.y*5-P1.y*$V1	VU_N	#
  G1: cc=gris	cf=99,$V5,$V4,0.5,Ss	pts=_P9.x;P9.y!	_P1.x;(0-P1.y)|	_0;P2.y|	_(0-P1.x);(P1.y)|	&#
  G1top: cc=gris	vu=1	pts=_P0.x+P3.x*5+P1.x*5;P0.y+P3.y*5-P1.y*5!	_(0-(P3.x*5));(0-(P3.y*5))|	_(0-(P1.x*5));P1.y*5|	#
CMD: !<=GRP5:_droite ,copie=evolutive	#

CMD0c00a: #  $V3.v=0	#
CMD0c00b: #  $V4.v=0	#
CMD0c00c: #  $V5.v=0	#
CMD0c01: #-> ?=(OUI)	#
CMD0c022: #-> ?=(OUI)	#
CMD0c023: #  $V5.v=(($V3*5)+$V4)	#
CMD0c024: #  GRP5[$V5]: $V1.v=..$V3,	$V2.v=..$V4,	#
CMD0c026: #  $V4.Plus(1)	#
CMD0c027: #<- ?=($V4<5)	#
CMD0c028: #  $V4.v=0;	#
CMD0c04: #  $V3.Plus(1)	#
CMD0c06: #<- ?=($V3<5)	#
CMD0c09: @ GRP5[0_]	!

GRP1T22: Clone(GRP1) ,$V1.v=2, 	$V2.v=2, 	P4.x=227, 	P4.y=71, 	P5.x=18, 	#
GRP1T20: Clone(GRP1) ,$V1.v=2,$V2.v=0,P4.x=255 ,P4.y=255,P5.x=255, 	#
GRP1T21: Clone(GRP1) ,$V1.v=2,$V2.v=1,P4.x=44 ,P4.y=39,P5.x=255,P5.y=0.0, 	#
GRP1T40: Clone(GRP1) ,$V1.v=4,$V2.v=0,P4.x=250 ,P4.y=252,P5.x=15, 	#
GRP1T11: Clone(GRP1) ,$V1.v=1,$V2.v=1,P4.x=255 ,P4.y=15,P5.x=15,P5.y=1 	#
GRP1T13: Clone(GRP1) ,$V1.v=1,$V2.v=3,P4.x=13 ,P4.y=253,P5.x=15, 	#
GRP1T23: Clone(GRP1) ,$V1.v=2,$V2.v=3,P4.x=252 ,P4.y=16,P5.x=15,P5.y=1 	#
GRP1T32: Clone(GRP1) ,$V1.v=3,$V2.v=2,P4.x=255 ,P4.y=253,P5.x=15,P5.y=1	,	#
GRP1T33: Clone(GRP1) ,$V1.v=3,$V2.v=3,P4.x=13 ,P4.y=16,P5.x=252,P5.y=1, 	#

GRP4T22: Clone(GRP4) ,$V1.v=2,$V2.v=2,P4.x=227 ,P4.y=71,P5.x=18, 	#
GRP4T11: Clone(GRP4) ,$V1.v=1,$V2.v=1,P4.x=38 ,P4.y=5,P5.x=5,P5.y=1, 	#
GRP4T20: Clone(GRP4) ,$V1.v=2,$V2.v=0,P4.x=5 ,P4.y=35,P5.x=5,P5.y=1, 	#
GRP4T21: Clone(GRP4) ,$V1.v=2,$V2.v=1,P4.x=5 ,P4.y=35,P5.x=36,P5.y=1, 	#
GRP4T33: Clone(GRP4) ,$V1.v=3,$V2.v=3,P4.x=38 ,P4.y=38,P5.x=5,P5.y=1, 	#

T1tt: p=%W85;%H30	cc=cyan	cf=bleu	d=14	t=top alea   	!
B1tt32: frm=T1tt	CLICK=gm1.faireP(GRP1T11.P5.y=0,GRP1T23.P5.y=0,GRP1T32.P5.y=0,GRP1T33.P5.y=0,ERR[STATUT])	!

T4tt: p=%W85;%H37	cc=cyan	cf=bleu	d=14	t=front alea   	!
B1tt32: frm=T4tt	CLICK=gm1.faireP(GRP4T11.P5.y=0,GRP4T20.P5.y=0,GRP4T21.P5.y=0,GRP4T33.P5.y=0,ERR[STATUT])	!

P7C1: p=-400;P0o.y	%setK=300	VU_N	!
P7cache2:p=P0o.x+P01.x*5+P03.x*2;P0o.y+P03.y*2-P01.y*5	VU_N	#
G7cache1: cc=gris-sombre	VU_O	cf=gris-sombre	pts=_P7C1!	_(P01.x*5);(0-(P01.y*5))|	_P03.x*2;P03.y*2|	_(0-(P01.x*5));(P01.y*5)|	_0;(P02.y*5)|	_(0-(P03.x*2));(0-(P03.y*2))|	&#

P7C2: p=P7C1.x+P01.x*5+P03.x*2;P7cache2.y	%setK=300	VU_O	#
G7cache2: cc=gris-sombre	cf=gris-sombre	pts=_P7C2!	_(0-(P01.x*2);(P01.y*2)|	_P03.x;P03.y|	_(0-P01.x);P01.y|	_(0-P03.x);(0-P03.y)|	_(0-P01.x*2);P01.y*2|	_0;P02.y*2|	_P03.x;P03.y|	_0;P02.y|	_(0-P03.x);(0-P03.y)|	_0;P02.y*2|	_P03.x*3;P03.y*3|	_P01.x*5;(0-P01.y*5)|	_0;(0-P02.y*5)|	&#

T7cacher1:p=%W85;30	cc=blanc	cf=bleu	d=15	t= hide	!
T7voir1:p=%W85;60	cc=blanc	cf=bleu	d=15	t= show	!
B7c1: frm=T7cacher1	CLICK=gm1.faireP(P7C2.x=P7cache2.x,P7C1.x=P0o.x,ERR[STATUT])	!
B7s1: frm=T7voir1	CLICK=gm1.faireP(P7C2.x=-200,P7C1.x=-200,ERR[STATUT])	!


_-_-_-_-_-_-_-_-_-_-_
Nota Bene - pour 'développeurs gam1' :
piège à éviter =
  • la définition des fins de lignes des scipts gam1 n'est pas tout à fait finalisée : ATTENTION à ne pas laisser de caractères blanc ou tabulation (invisibles !) après le caractère de fin de ligne voulu ( à priori '!' ou '#' )
    ( le script risque de mal être compacté pour la version en ligne ! )
  • ATTENTION à l'ordre de définition des pièces recalculées lors des interactivités/animations : voir principes de redéfinitions des pièces : - dans le groupe principal - dans les sous-groupes ... (TODO : désolé ... :-! )
  • . . .

    Aucune note. Soyez le premier à attribuer une note !

    utilitaire de bas de page pour gam1 version :       OK ? pour votre
    script par page URL cookie
    _-_-_-_-_-_ _-_-_-_-_-_

    _-_-_-_-_-_-_-_-_-_-_
            ( × )

    ( en : cette page autre )
    label =
    Editer le script du label


    Créer un site gratuit avec e-monsite - Signaler un contenu illicite sur ce site

    ×