Échelle glissant le long d'un mur
Échelle au sol
a = 0
pas = 0.05
echelle(a)
function echelle(z){
effaceEcran()
couleur = noir
trait = 1
traceAxes3d()
couleur = gris
segment([7,0,z],[7,0,0])
segment([7,0,0],[7,ord(z),0])
segment([3,0,z],[3,0,0])
segment([3,0,0],[3,ord(z),0])
couleur = bleu
trait = 2
segment([7,0,z],[7,ord(z),0])
segment([3,0,z],[3,ord(z),0])
for(var i=1;i < 6;i++){
segment([7,ord(z)*i/6,-z*i/6+z],[3,ord(z)*i/6,-z*i/6+z])
}
couleur = rouge
trait = 1
point([5,ord(z)/2,z/2])
if( a > 10 || a < 0){ pas = -pas }
a = a + pas
}
function ord(z){
return Math.sqrt(100-z*z);
}
Échelle contre le mur
a = 10
pas = 0.05
echelle(a)
function echelle(z){
effaceEcran()
couleur = noir
trait = 1
traceAxes3d()
couleur = gris
segment([7,0,z],[7,0,0])
segment([7,0,0],[7,ord(z),0])
segment([3,0,z],[3,0,0])
segment([3,0,0],[3,ord(z),0])
couleur = bleu
trait = 2
segment([7,0,z],[7,ord(z),0])
segment([3,0,z],[3,ord(z),0])
for(var i=1;i < 6;i++){
segment([7,ord(z)*i/6,-z*i/6+z],[3,ord(z)*i/6,-z*i/6+z])
}
couleur = rouge
trait = 1
point([5,ord(z)/2,z/2])
if( a > 10 || a < 0){ pas = -pas }
a = a + pas
}
function ord(z){
return Math.sqrt(100-z*z);
}
Échelle entre sol et mur
a = 5
pas = 0.05
echelle(a)
function echelle(z){
effaceEcran()
couleur = noir
trait = 1
traceAxes3d()
couleur = gris
segment([7,0,z],[7,0,0])
segment([7,0,0],[7,ord(z),0])
segment([3,0,z],[3,0,0])
segment([3,0,0],[3,ord(z),0])
couleur = bleu
trait = 2
segment([7,0,z],[7,ord(z),0])
segment([3,0,z],[3,ord(z),0])
for(var i=1;i < 6;i++){
segment([7,ord(z)*i/6,-z*i/6+z],[3,ord(z)*i/6,-z*i/6+z])
}
couleur = rouge
trait = 1
point([5,ord(z)/2,z/2])
if( a > 10 || a < 0){ pas = -pas }
a = a + pas
}
function ord(z){
return Math.sqrt(100-z*z);
}
Échelle en mouvement
a = 0
pas = 0.05
setInterval(function (){echelle(a)},50)
function echelle(z){
effaceEcran()
couleur = noir
trait = 1
traceAxes3d()
couleur = gris
segment([7,0,z],[7,0,0])
segment([7,0,0],[7,ord(z),0])
segment([3,0,z],[3,0,0])
segment([3,0,0],[3,ord(z),0])
couleur = bleu
trait = 2
segment([7,0,z],[7,ord(z),0])
segment([3,0,z],[3,ord(z),0])
for(var i=1;i < 6;i++){
segment([7,ord(z)*i/6,-z*i/6+z],[3,ord(z)*i/6,-z*i/6+z])
}
couleur = rouge
trait = 1
point([5,ord(z)/2,z/2])
if( a > 10 || a < 0){ pas = -pas }
a = a + pas
}
function ord(z){
return Math.sqrt(100-z*z);
}
function arcCercle1(){
T = []
for(var i = 0; i < %PI/2; i = i+0.1){
T.push([5,5*cos(i),5*sin(i)])
}
couleur = noir
chaine(T)
}
Échelle en mouvement et lieu géométrique du centre de l'échelle
a = 0
pas = 0.05
setInterval(function (){echelle(a)},50)
function echelle(z){
effaceEcran()
couleur = noir
trait = 1
traceAxes3d()
couleur = gris
segment([7,0,z],[7,0,0])
segment([7,0,0],[7,ord(z),0])
segment([3,0,z],[3,0,0])
segment([3,0,0],[3,ord(z),0])
couleur = bleu
trait = 2
segment([7,0,z],[7,ord(z),0])
segment([3,0,z],[3,ord(z),0])
for(var i=1;i < 6;i++){
segment([7,ord(z)*i/6,-z*i/6+z],[3,ord(z)*i/6,-z*i/6+z])
}
arcCercle2()
couleur = rouge
trait = 1
point([5,ord(z)/2,z/2])
if( a > 10 || a < 0){ pas = -pas }
a = a + pas
}
function ord(z){
return Math.sqrt(100-z*z);
}
function arcCercle2(){
T = []
for(var i = 0; i < %PI/2; i = i+0.1){
T.push([5,5*cos(i),5*sin(i)])
}
couleur = noir
chaine(T)
}