LOGO-L> Re: TO 3D or not 3D?

5 years ago folks would of said the same about students do

today in logo or the computer in general.

If you believe 2D graphics is easy in Logo.

I claim MSWLogo's 3D is *relatively* just as easy for 3D.

But to say 3D can be done "better" is to say 2D can be done "better" as well.

2D Logo helps teach 2D Geometry.

3D Logo helps teach 3D Geometry EXACTLY the same way 2D does.

Use MSPaint for your 2D Drawing it's easier, but the student is not going to learn much.

Use a 3D package for your 3D Drawing it's easier, but the student is not going to learn much.

A 3D package will either do more for them and perhaps learn less, or do less

for them and be more complex. The level of 3D Logo is at the same relative level

as 2D Logo is. There is a certain level of knowlege one needs to do 2D Logo and there

is a certain amount of knowlege they will gain from it, 3D Logo is no different.

I think it's at the same perfect level 2D Logo is (where it's powerful, easy and

you can learn a lot from it).

Just as you can work anywhere along the scale of 2D Graphics complexity,

you can choose to work anywhere along the scale of 3D Graphics complexity.

And they overlap quite nicely. Almost everything you do in 2D applies in 3D.

Here are some examples from the lower end of the scale.

If if you don't have it loaded and running don't bother reading further.

Because the feedback you get (as you run it) is important. Just as it is

in 2D. If I gave someone 2D Logo code totally unfamiliar with Logo they

would say "how can a young child figure this stuff out".

I'm not stating what the right age is for 3D nor would I for 2D.

to all

turnon3d

messagebox [] [ok] cs square

messagebox [] [ok] cs rectangle

messagebox [] [ok] cs stairs

messagebox [] [ok] cs polysquares

messagebox [] [ok] cs polysquares2

messagebox [] [ok] cs spinsquares

messagebox [] [ok] cs flipsquares

messagebox [] [ok] cs polycube

messagebox [] [ok] cs cube

messagebox [] [ok] cs gridsquares

messagebox [] [ok] cs gridcubes

messagebox [] [ok] cs cubeofcubes

end

to square

repeat 4 [fd 100 rt 90]

end

to rectangle

repeat 2 [fd 50 rt 90 fd 200 rt 90]

end

to stairs

repeat 100 ~

[

rectangle

fd 50 down 90

rectangle

fd 50 up 90

]

end

to polysquares

repeat 72 [square fd 100 rt 5]

end

to polysquares2

repeat 72 [square fd 100 down 5]

end

to spinsquares

repeat 72 [square rr 5]

end

to flipsquares

repeat 72 [square down 5]

end

to gridsquares

for [x 1 500 100] ~

[

for [y 1 500 100] ~

[

pu setxy :x :y pd

square

]

]

end

to cube

repeat 4 [square fd 100 down 90]

end

to polycube

repeat 72 [cube fd 100 down 5]

end

to gridcubes

for [x 1 500 100] ~

[

for [y 1 500 100] ~

[

pu setxy :x :y pd

cube

]

]

end

to cubeofcubes

for [x 1 500 100] ~

[

for [y 1 500 100] ~

[

for [z 1 500 100] ~

[

pu setxyz :x :y :z pd

cube

]

]

]

end

to turnon3d

; This can be a library procedure

perspective

setturtle -1

setxyz 1000 1000 1000

setturtle 0

end

--

===============================================================

George Mills

http://www.*-*-*.com/

The www page contains some very powerful educational software.

Our single most important investment is our kids.

---------------------------------------------------------------