Artista
Quesiti originali: https://studio.code.org/s/artist/
Quesiti originali: https://studio.code.org/s/artist/
Quesiti originali: http://studio.code.org/s/20-hour
Quesiti originali: http://studio.code.org/s/20-hour
Quesiti originali: http://studio.code.org/s/20-hour
Disegna dei tratti consecutivi con colore e spessore casuale
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
GraphicsWindow.Height=GraphicsWindow.Width Turtle.Speed=10 SPAZIO =25 SPAZIO2=2*spazio xm=GraphicsWindow.Width -SPAZIO2 ym=GraphicsWindow.Height-SPAZIO2 While "true" x=Math.GetRandomNumber(xm)+SPAZIO y=Math.GetRandomNumber(ym)+SPAZIO GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() GraphicsWindow.PenWidth=Math.GetRandomNumber(10) Turtle.MoveTo(x,y) Program.Delay(500) EndWhile |
Disegna dei tratti staccati
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
... While "true" x1=Math.GetRandomNumber(xm)+SPAZIO y1=Math.GetRandomNumber(ym)+SPAZIO x2=Math.GetRandomNumber(xm)+SPAZIO y2=Math.GetRandomNumber(ym)+SPAZIO Turtle.PenUp() Turtle.MoveTo(x1,y1) GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() GraphicsWindow.PenWidth=Math.GetRandomNumber(10) Turtle.PenDown() Turtle.MoveTo(x2,y2) Program.Delay(500) EndWhile |
Per disegnare triangoli sono necessari 3 punti 6 coordinate
1 2 3 4 5 6 7 8 9 10 11 12 |
... x1=Math.GetRandomNumber(xm)+SPAZIO y1=Math.GetRandomNumber(ym)+SPAZIO x2=Math.GetRandomNumber(xm)+SPAZIO y2=Math.GetRandomNumber(ym)+SPAZIO x3=Math.GetRandomNumber(xm)+SPAZIO y3=Math.GetRandomNumber(ym)+SPAZIO ... Turtle.MoveTo(x2,y2) Turtle.MoveTo(x3,y3) Turtle.MoveTo(x1,y1) ... |
Disegna il triangolo a partire dal centro di un lato Continua con 2, 3, 4, …
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Turtle.Speed=10 QUANTI=5 ANGOLO=360/QUANTI DIM=200 DIM2=DIM/2 Turtle.TurnLeft() For triangolo=1 To QUANTI Turtle.Move(DIM2) Turtle.Turn(120) Turtle.Move(DIM) Turtle.Turn(120) Turtle.Move(DIM) Turtle.Turn(120) Turtle.Move(DIM2) Turtle.Turn(ANGOLO) EndFor |
Poligono regolare con 5 lati di lunghezza 150
1 2 3 4 |
For lato=1 To 5 Turtle.Move(150) Turtle.Turn(72) EndFor |
Continua…
1 2 3 4 5 6 7 8 9 10 11 12 |
GraphicsWindow.Height=GraphicsWindow.Width Turtle.Y=GraphicsWindow.Height/2 Turtle.Speed=10 QUANTI=15 ANGOLO=360/QUANTI For pentagono=1 To QUANTI For lato=1 To 5 Turtle.Move(150) Turtle.Turn(72) EndFor Turtle.Turn(ANGOLO) EndFor |
Colori casuali: #RRGGBB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
GraphicsWindow.Height=GraphicsWindow.Width GraphicsWindow.PenWidth=25 Turtle.Speed=10 Turtle.Y=GraphicsWindow.Height/2 NUMERO=100 distanza=250 For i=1 to NUMERO GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() Turtle.PenDown() Turtle.Move(distanza) Turtle.PenUp() Turtle.Move(-distanza) distanza=distanza-2 Turtle.Turn(90+Math.GetRandomNumber(90)) EndFor |
Colori casuali, semitrasparenti: #99RRGGBB
1 2 |
c=GraphicsWindow.GetRandomColor() GraphicsWindow.PenColor="#99"+Text.GetSubText(c,2,6) |
Il colore va dal blue (0,0,255) al magenta (255,0,255)
1 2 |
red=Math.GetRandomNumber(255) GraphicsWindow.PenColor=GraphicsWindow.GetColorFromRGB(red,0,255) |
Un colore a piacere, semitrasparente
1 |
GraphicsWindow.PenColor="#330000FF" |
…
Tre settori con i colori fondamentali
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
DIM =600 DISTANZA=0.4*DIM NUMERO=360 angolo=360/NUMERO SETTORI =3 NUMSETTORE=NUMERO/SETTORI GraphicsWindow.Width =DIM GraphicsWindow.Height=DIM Turtle.X =DIM/2 Turtle.Y =DIM/2 Turtle.Speed=10 COLORI[1]="red" COLORI[2]="green" COLORI[3]="blue" For settore=1 To SETTORI GraphicsWindow.PenColor=COLORI[settore] For i=1 to NUMSETTORE Turtle.PenDown() Turtle.Move(DISTANZA) Turtle.PenUp() Turtle.Move(-DISTANZA) Turtle.Turn(angolo) EndFor EndFor |
Dodici settori con colori casuali
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
DIM =600 DISTANZA=0.4*DIM NUMERO=360 angolo=360/NUMERO SETTORI =12 NUMSETTORE=NUMERO/SETTORI GraphicsWindow.Width =DIM GraphicsWindow.Height=DIM Turtle.X =DIM/2 Turtle.Y =DIM/2 Turtle.Speed=10 For settore=1 To SETTORI GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() For i=1 to NUMSETTORE Turtle.PenDown() Turtle.Move(DISTANZA) Turtle.PenUp() Turtle.Move(-DISTANZA) Turtle.Turn(angolo) EndFor EndFor |
Traccia metà del raggio
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 |
DIM =600 DISTANZA =0.4*DIM DISTANZA1=0.2*DIM DISTANZA2=0.2*DIM NUMERO=360 angolo=360/NUMERO SETTORI =12 NUMSETTORE=NUMERO/SETTORI GraphicsWindow.Width =DIM GraphicsWindow.Height=DIM Turtle.X =DIM/2 Turtle.Y =DIM/2 Turtle.Speed=10 For settore=1 To SETTORI GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() For i=1 to NUMSETTORE Turtle.PenUp() Turtle.Move(DISTANZA1) Turtle.PenDown() Turtle.Move(DISTANZA2) Turtle.PenUp() Turtle.Move(-DISTANZA) Turtle.Turn(angolo) EndFor EndFor |
Prova a scegliere le varie DISTANZE… Leggi tutto »Ombrelli
Un ventaglio
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
numero =30 lunghezza=250 angolo =180/numero '----------------------------------------------------------- Turtle.Speed=10 Turtle.X =GraphicsWindow.Width/2 Turtle.Y =GraphicsWindow.Height-30 Turtle.Angle=-90 VENTAGLIO() '----------------------------------------------------------- Sub VENTAGLIO For i=1 To numero+1 GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() GraphicsWindow.PenWidth=10+Math.GetRandomNumber(10) Turtle.PenDown() Turtle.Move(lunghezza) Turtle.PenUp() Turtle.Move(-lunghezza) Turtle.Turn(angolo) EndFor EndSub |
Due ventagli Quattro ventagli
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 31 32 33 34 35 36 |
GraphicsWindow.Height=GraphicsWindow.Width numero =30 lunghezza=200 angolo =180/numero '----------------------------------------------------------- Turtle.Speed=10 Turtle.X =30 Turtle.Y =GraphicsWindow.Height/2 VENTAGLIO() '----------------------------------------------------------- Turtle.X =GraphicsWindow.Width/2 Turtle.Y =30 Turtle.Angle=90 VENTAGLIO() '----------------------------------------------------------- Turtle.X =GraphicsWindow.Width-30 Turtle.Y =GraphicsWindow.Height/2 Turtle.Angle=180 VENTAGLIO() '----------------------------------------------------------- Turtle.X =GraphicsWindow.Width/2 Turtle.Y =GraphicsWindow.Height-30 Turtle.Angle=-90 VENTAGLIO() '----------------------------------------------------------- Sub VENTAGLIO For i=1 To numero+1 GraphicsWindow.PenColor=GraphicsWindow.GetRandomColor() GraphicsWindow.PenWidth=10+Math.GetRandomNumber(10) Turtle.PenDown() Turtle.Move(lunghezza) Turtle.PenUp() Turtle.Move(-lunghezza) Turtle.Turn(angolo) EndFor EndSub |
Con sovrapposizioni e trasparenza del colore
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 31 32 33 34 35 36 37 |
GraphicsWindow.Height=GraphicsWindow.Width GraphicsWindow.PenWidth=25 numero =30 lunghezza=250 angolo =180/numero '----------------------------------------------------------- Turtle.Speed=10 Turtle.X=30 Turtle.Y=GraphicsWindow.Height/2 VENTAGLIO() '----------------------------------------------------------- Turtle.X=GraphicsWindow.Width/2 Turtle.Y=30 Turtle.Angle=90 VENTAGLIO() '----------------------------------------------------------- Turtle.X=GraphicsWindow.Width-30 Turtle.Y=GraphicsWindow.Height/2 Turtle.Angle=180 VENTAGLIO() '----------------------------------------------------------- Turtle.X=GraphicsWindow.Width/2 Turtle.Y=GraphicsWindow.Height-30 Turtle.Angle=-90 VENTAGLIO() '----------------------------------------------------------- Sub VENTAGLIO For i=1 To numero+1 c=GraphicsWindow.GetRandomColor() GraphicsWindow.PenColor="#99"+Text.GetSubText(c,2,6) Turtle.PenDown() Turtle.Move(lunghezza) Turtle.PenUp() Turtle.Move(-lunghezza) Turtle.Turn(angolo) EndFor EndSub |