Français   Animations.
Un cube qui tourne. La nouvelle position en 3 coodonnées xyz est déterminé à l'aide de la position initiale. x désigne la composant horizontale, y la verticale et z la profondeur. Ici, z est également utilisé pour fixer la grosseur des cercles. (plus grands pour donner l'impression de proximités, plus petits pour indiquer un éloignement).
# Commande principale: demarrer
pour new
# Initialise les couleurs pour l'écran, le crayon de la tortue
init ftd [400 400] cachetortue
fcfg noir fcc vert levecrayon animation
fin

pour initialise
donne "anglex 0
donne "angley 0
donne "anglez 0
donne "m compte :color
fin

pour draw
tantque [vrai] [
donne "n 1
donne "anglex :anglex+5
donne "angley :angley+7
donne "anglez :anglez+3
repete :m [
donne "xd item :n :shapex
donne "yd item :n :shapey
donne "zd item :n :shapez
donne "zx :xd*(cos :anglez) - :yd*(sin :anglez) - :xd
donne "zy :xd*(sin :anglez) + :yd*(cos :anglez) - :yd
donne "yx (:xd+:zx)*(cos :angley) - :zd*(sin :angley) - (:xd+:zx)
donne "yz (:xd+:zx)*(sin :angley) + :zd*(cos :angley) - :zd
donne "xy (:yd+:zy)*(cos :anglex) - (:zd+:yz)*(sin :anglex) - (:yd+:zy)
donne "xz (:yd+:zy)*(sin :anglex) + (:zd+:yz)*(cos :anglex) - (:zd+:yz)
donne "z :zd + (:xz+:yz)
donne "x (:xd + (:yx+:zx))*((:z+300)/295)
donne "y (:yd + (:zy+:xy))*((:z+300)/295)
fpos liste :x :y
fcc item :n :color cercle 4+(:z+200)/50 donne "n :n+1]
rf nettoie attends 15]
fin

pour 3dshape
# cube
donne "shapex [80 -80 -80 80 80 -80 -80 80]
donne "shapey [80 80 -80 -80 -80 -80 80 80]
donne "shapez [80 80 80 80 -80 -80 -80 -80]
donne "color [1 1 2 2 3 3 6 6]
fin

pour demarrer
new 3dshape initialise draw
fin


On peut également essayer d'autres solides, vous pouvez en inventer d'autres!

To 3DShape
# tetraèdre
Make "ShapeX [0 -80 80 0]
Make "ShapeY [-65 -65 -65 65]
Make "ShapeZ [80 -50 -50 0]
Make "Color [1 2 3 6]
End

To 3DShape
# diamand
Make "ShapeX [80 -80 -80 80 0 0]
Make "ShapeY [0 0 0 0 113 -113]
Make "ShapeZ [80 80 -80 -80 0 0]
Make "Color [2 6 2 6 1 1]
End
Tester ce programme maintenant

Procédure à exécuter:
demarrer