back to math cats love MicroWorlds
MicroWorlds index
Draw Dots Overview
Go to the draw dots project!
Get the MicroWorlds Web Player
so you can use the project
screenshot of the project
(inactive buttons)


To use this project, you need the free MicroWorlds Web Player, but you do not need to know anything about MicroWorlds.

You can use this project to create dots of many colors under four different conditions:

* "Make.dots" places dots of random sizes and colors all over the screen. If you slow down the speed, you can watch the numbers change in the textboxes for the x- and y-coordinates.
* "Make.rainbow" also places dots all over the screen, but the color range depends on the screen position.
* "Follow.dots" places dots wherever the mouse moves.
* "Follow.rainbow" also follows the cursor position of the mouse, and the color range of the dots depends on their screen position.

The Mac version of the project draws squares instead of dots!

The idea for making randomly-colored dots in random positions using coordinates came from Monika Tomcsanyiova at
http://www.edi.fmph.uniba.sk/tomcsanyiova/English/OnSchool/3third/Art/LogoArt.htm

If you own MicroWorlds and would like the create the project yourself from scratch, here are the procedures:

procedures for DRAW DOTS

Please refer to the screenshot to see the buttons, slider, textboxes, and turtle needed.

* * * * * * * * * *

to make.dots
text1, hidetext
setx -198 + random 396
sety -148 + random 296
setx_value xcor
sety_value ycor
repeat waittime [st wait 1 ht wait 1]
setpensize 1 + random 100
setc random 140
pd fd 0
pu
make.dots
end

to make.rainbow
text1, hidetext
setx -198 + random 396
sety -148 + random 296
setx_value xcor
sety_value ycor
setpensize 1 + random 100
sort.colors
repeat waittime [st wait 1 ht wait 1]
pd fd 0
pu
make.rainbow
end

to sort.colors
if and xcor > 0 xcor < 66 [setc 51 + random 19]
if and xcor > 65 xcor < 134 [setc 71 + random 39]
if xcor > 133 [setc 111 + random 19]
if and xcor < 1 xcor > -67 [setc 41 + random 8]
if and xcor < -66 xcor > -134 [setc 21 + random 8]
if xcor < -133 [setc 11 + random 8]
end

to follow.dots
text1, hidetext
pu setpos mousepos
setx_value xcor
sety_value ycor
setpensize 1 + random 100
setc random 140
pd fd 0
pu
follow.dots
end

to follow.rainbow
text1, hidetext
wait 10
start.following
end

to start.following
if xcor < -195 [stopall]
pu setpos mousepos
setx_value xcor
sety_value ycor
setpensize 1 + random 100
sort.colors
pd fd 0
pu
start.following
end

to clearall
clean
x_value, ct
y_value, ct
end

to startup
clearall
text1, showtext
end

* * * * * * * *

This is Monika T.'s original procedure, written for MSWLogo:

to draw.blue.dots
let "k readkey
if :k <= 0 [pu setpos mouse setpc ( list 0 0 130 + random 120 ) setpw 8 + random 50 pd dot]
draw.blue.dots
end

© copyright 2000 -   Wendy Petti of Math Cats.   All Rights Reserved.