Retour

Source : Depliagecubeanim.mp

Animation flash


Depliagecubeanim.mp
input geometriesyr16;
color A,B,C,D,E,F,G,H;
A=(0,0,0);
B=(1,0,0);
C=(1,1,0);
D=(0,1,0);
E=(0,1,1);
F=(0,0,1);
G=(1,0,1);
H=(1,1,1);
vues=10;
for k=0 upto vues:
  figureespace(-4u,-4.15u,4u,3.85u);
  trace feuillet withcolor blanc;
  Initialisation(5,40,50,250);
  %Initialisation(5,360*k/vues,50,500);
  color J,K;
  J=(1+sind(90*k/vues),0,cosd(90*k/vues));%J est le transformation de G dans BGHC
  K-C=J-B;%K est la transformation de H dans BGHC
  color L,M;
  L=(1,-sind(90*k/vues),cosd(90*k/vues));%transformation de G dans BAFG
  M-A=L-B;%transformation de F dans BAFG
  color N,O;
  N=(1,1+sind(90*k/vues),cosd(90*k/vues));%transformation de H dans CHED
  O-D=N-C;%transformation de E dans CHED
  color P,Q;
  P=(-sind(90*k/vues),1,cosd(90*k/vues));%transformation de E dans ADEF
  Q-A=P-D;%transformation de F dans ADEF
  color Rg,Rh;
  Rg-Q=(-Normal(A,Q,D)/Module(Normal(A,Q,D)))*Module(B-A);
  Rh-P=Rg-Q;
  color RG,RH;
  RG-Q=(redpart(Rg-Q)*cosd(90*k/vues)-bluepart(Rg-Q)*sind(90*k/vues),0,bluepart(Rg-Q)*cosd(90*k/vues)+redpart(Rg-Q)*sind(90*k/vues));
  RH-P=RG-Q;
  %le dépliage
  remplis polygone(A,B,C,D) withcolor bleu;
  remplis polygone(B,L,M,A) withcolor jaune;%face gauche
  trace polygone(B,L,M,A);
  remplis polygone(D,P,Q,A) withcolor orange;%face du fond
  trace polygone(D,P,Q,A);
  remplis polygone(B,J,K,C) withcolor violet;%face devant
  trace polygone(B,J,K,C);
  remplis polygone(C,N,O,D) withcolor ciel;%face droite
  trace polygone(C,N,O,D);
  remplis polygone(Q,RG,RH,P) withcolor rose;
  trace polygone(Q,RG,RH,P);
  finespace;
endfor;
end