tclinit { global t set t 0 toplevel .slfwin.slider scale .slfwin.slider.scale -from 0 -to 1 -resolution 0.01 -tickint 0.25 -length 400 -orient horizontal -variable t pack .slfwin.slider.scale -side top -fill x proc Spiral { x y b } { global t #The b argument tells us if this is the x or y coordinate #0 means x, 1 means y set nx [expr $x - 0.5] set ny [expr $y - 0.5] set c [expr cos(6.28*$t)] set s [expr sin(6.28*$t)] if {$b==0} { set r [expr ($nx * $c - $ny * $s)] } else { set r [expr ($nx * $s + $ny * $c)] } return [expr $r + 0.5] } } point pFILE1 ( {Spiral 0.475 0.608 0} {Spiral 0.475 0.608 1} 0.000 ) endpoint point pFILE2 ( {Spiral 0.382 0.485 0} {Spiral 0.382 0.485 1} 0.000 ) endpoint point pFILE3 ( {Spiral 0.565 0.490 0} {Spiral 0.565 0.490 1} 0.000 ) endpoint face fFILE1 ( pFILE1 pFILE2 pFILE3 ) endface object oFILE0 ( fFILE1 ) solid SLF_HOLLOW shading SLF_WIRE endobject camera cam projection SLF_PARALLEL frustum ( -0.5 -0.5 -2 ) ( 0.5 0.5 -0.01 ) endcamera group gCam instance cam id iCam translate ( 0.5 0.5 1 ) endinstance endgroup window win endwindow viewport vp win endviewport render vp gCam.iCam.cam oFILE0 endrender