Droop Example Code


(define (flower droop)
 (separator

  ; stem
  (color 0 .6 0)
  (define i 0)
  (while (< i 10)
   (separator
    (rotate -90 x-axis)
    (cylinder 'radius .1)
    )
   (translate 0 1 0)
   (rotate (* droop 15) z-axis)
   (scale .9 1 .9)
   (set! i (+ 1 i))
   )

  ; center
  (scale 1.75 1 1.75)
  (color 1 1 0)
  (sphere 'thetamax 180)
  (translate 0 -.25 0)

  ; flower
  (color 1 0 0)
  (define i 0)
  (while (< i 12)
   (rotate 30 y-axis)

   ; petal
   (separator
    (rotate (* droop -90) x-axis)
    (translate 0 0 .75)
    (scale 1 1 2)
    (translate 0 0 1)
    (rotate 30 0 0 1)
    (sphere 'thetamax 120)
    )
   (set! i (+ i 1))
   )

  )
 )

(define (make-flower)
  (model "a-flower" (droop-avar)
    (flower (droop-avar))
    )
  )


Return
mrl