PS9: fiberoptic drawing tools    
     
movie 1: crooked fan
 

// the fiberoptic drawing tools
// were a response to problem
// set 9 challenging us to effectively
// use a larger canvas size of 200X200
// pixels interactively.


// crooked fan
// a fiberoptics drawing tool

// to draw lit fibers, just move mouse
// to draw unlit fibers, mousedown and move
// to see something strange, mousedown
// outside of paper area in the left margin,
// bottom corner.

load dbngraphics.dbn
antialias 100
set bck 80
set for 5

paper bck

set h0 <mouse 1>
set v0 <mouse 2>
repeat r 5 5
{
}
Forever
{
   set h1 (<mouse 1>+(<mouse 3>+<mouse 1>))
   set v1 (<mouse 2>+(<mouse 3>+<mouse 2>))

   // fiberoptic light
   pen 100

   line h1 v1 (h1-1) (v1)

   // fiberoptic cable
   pen (for+50)

   line h0 v0 h1 v1
   circle (<mouse 3>+h1) (<mouse 3>+v1) (<mouse 3>/h1) (<mouse 3>/h1)
}