;;
;; DO NOT EDIT THIS FILE
;; this file is automatically generated from euslisp+euslib version 
;;
;;
(defclass room602-tray1-object
  :super cascaded-link
  :slots (sensors
         handle0 handle1 handle2 handle3 handle4 handle5
         ))
(defmethod room602-tray1-object
  (:init
   (&rest args &key (name "room602-tray1") (pos (float-vector 0 0 0)) (rot (unit-matrix 3)) &allow-other-keys)
   (let (c bc
         blink0
                 )
     (send-super* :init :name name args)

     ;; definition of link

     ;; definition of :room602-tray1-bodyset2
     (setq bc (list
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 200.0 150.0 15.0) (float-vector -200.0 150.0 15.0) (float-vector -200.0 -150.0 15.0) (float-vector 200.0 -150.0 15.0)))
         (instance face :init :vertices (list (float-vector -200.0 150.0 5.0) (float-vector 200.0 150.0 5.0) (float-vector 200.0 -150.0 5.0) (float-vector -200.0 -150.0 5.0)))
         (instance face :init :vertices (list (float-vector 200.0 150.0 15.0) (float-vector 200.0 150.0 5.0) (float-vector -200.0 150.0 5.0) (float-vector -200.0 150.0 15.0)))
         (instance face :init :vertices (list (float-vector 200.0 -150.0 15.0) (float-vector 200.0 -150.0 5.0) (float-vector 200.0 150.0 5.0) (float-vector 200.0 150.0 15.0)))
         (instance face :init :vertices (list (float-vector -200.0 -150.0 15.0) (float-vector -200.0 -150.0 5.0) (float-vector 200.0 -150.0 5.0) (float-vector 200.0 -150.0 15.0)))
         (instance face :init :vertices (list (float-vector -200.0 150.0 15.0) (float-vector -200.0 150.0 5.0) (float-vector -200.0 -150.0 5.0) (float-vector -200.0 -150.0 15.0)))
       ))
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 200.0 155.0 37.5) (float-vector -200.0 155.0 37.5) (float-vector -200.0 145.0 37.5) (float-vector 200.0 145.0 37.5)))
         (instance face :init :vertices (list (float-vector -200.0 155.0 7.5) (float-vector 200.0 155.0 7.5) (float-vector 200.0 145.0 7.5) (float-vector -200.0 145.0 7.5)))
         (instance face :init :vertices (list (float-vector 200.0 155.0 37.5) (float-vector 200.0 155.0 7.5) (float-vector -200.0 155.0 7.5) (float-vector -200.0 155.0 37.5)))
         (instance face :init :vertices (list (float-vector 200.0 145.0 37.5) (float-vector 200.0 145.0 7.5) (float-vector 200.0 155.0 7.5) (float-vector 200.0 155.0 37.5)))
         (instance face :init :vertices (list (float-vector -200.0 145.0 37.5) (float-vector -200.0 145.0 7.5) (float-vector 200.0 145.0 7.5) (float-vector 200.0 145.0 37.5)))
         (instance face :init :vertices (list (float-vector -200.0 155.0 37.5) (float-vector -200.0 155.0 7.5) (float-vector -200.0 145.0 7.5) (float-vector -200.0 145.0 37.5)))
       ))
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 200.0 -145.0 37.5) (float-vector -200.0 -145.0 37.5) (float-vector -200.0 -155.0 37.5) (float-vector 200.0 -155.0 37.5)))
         (instance face :init :vertices (list (float-vector -200.0 -145.0 7.5) (float-vector 200.0 -145.0 7.5) (float-vector 200.0 -155.0 7.5) (float-vector -200.0 -155.0 7.5)))
         (instance face :init :vertices (list (float-vector 200.0 -145.0 37.5) (float-vector 200.0 -145.0 7.5) (float-vector -200.0 -145.0 7.5) (float-vector -200.0 -145.0 37.5)))
         (instance face :init :vertices (list (float-vector 200.0 -155.0 37.5) (float-vector 200.0 -155.0 7.5) (float-vector 200.0 -145.0 7.5) (float-vector 200.0 -145.0 37.5)))
         (instance face :init :vertices (list (float-vector -200.0 -155.0 37.5) (float-vector -200.0 -155.0 7.5) (float-vector 200.0 -155.0 7.5) (float-vector 200.0 -155.0 37.5)))
         (instance face :init :vertices (list (float-vector -200.0 -145.0 37.5) (float-vector -200.0 -145.0 7.5) (float-vector -200.0 -155.0 7.5) (float-vector -200.0 -155.0 37.5)))
       ))
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 195.302 150.0 9.2101) (float-vector 195.302 -150.0 9.2101) (float-vector 214.113 -150.0 60.8932) (float-vector 214.113 150.0 60.8932))
                              :holes (list
         (instance hole :init :vertices (list (float-vector 208.127 50.0 44.4486) (float-vector 208.127 -50.0 44.4486) (float-vector 201.287 -50.0 25.6547) (float-vector 201.287 50.0 25.6547)))
))
         (instance face :init :vertices (list (float-vector 204.698 -150.0 5.7899) (float-vector 223.51 -150.0 57.473) (float-vector 214.113 -150.0 60.8932) (float-vector 195.302 -150.0 9.2101)))
         (instance face :init :vertices (list (float-vector 204.698 150.0 5.7899) (float-vector 223.51 150.0 57.473) (float-vector 223.51 -150.0 57.473) (float-vector 204.698 -150.0 5.7899))
                              :holes (list
         (instance hole :init :vertices (list (float-vector 210.684 -50.0 22.2345) (float-vector 217.524 -50.0 41.0284) (float-vector 217.524 50.0 41.0284) (float-vector 210.684 50.0 22.2345)))
))
         (instance face :init :vertices (list (float-vector 214.113 150.0 60.8932) (float-vector 214.113 -150.0 60.8932) (float-vector 223.51 -150.0 57.473) (float-vector 223.51 150.0 57.473)))
         (instance face :init :vertices (list (float-vector 204.698 150.0 5.7899) (float-vector 204.698 -150.0 5.7899) (float-vector 195.302 -150.0 9.2101) (float-vector 195.302 150.0 9.2101)))
         (instance face :init :vertices (list (float-vector 195.302 150.0 9.2101) (float-vector 214.113 150.0 60.8932) (float-vector 223.51 150.0 57.473) (float-vector 204.698 150.0 5.7899)))
         (instance face :init :vertices (list (float-vector 201.287 -50.0 25.6547) (float-vector 208.127 -50.0 44.4486) (float-vector 217.524 -50.0 41.0284) (float-vector 210.684 -50.0 22.2345)))
         (instance face :init :vertices (list (float-vector 217.524 50.0 41.0284) (float-vector 217.524 -50.0 41.0284) (float-vector 208.127 -50.0 44.4486) (float-vector 208.127 50.0 44.4486)))
         (instance face :init :vertices (list (float-vector 210.684 50.0 22.2345) (float-vector 217.524 50.0 41.0284) (float-vector 208.127 50.0 44.4486) (float-vector 201.287 50.0 25.6547)))
         (instance face :init :vertices (list (float-vector 201.287 50.0 25.6547) (float-vector 201.287 -50.0 25.6547) (float-vector 210.684 -50.0 22.2345) (float-vector 210.684 50.0 22.2345)))
       ))
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector -204.698 150.0 5.2899) (float-vector -204.698 -150.0 5.2899) (float-vector -223.51 -150.0 56.973) (float-vector -223.51 150.0 56.973))
                              :holes (list
         (instance hole :init :vertices (list (float-vector -217.524 50.0 40.5284) (float-vector -217.524 -50.0 40.5284) (float-vector -210.684 -50.0 21.7345) (float-vector -210.684 50.0 21.7345)))
))
         (instance face :init :vertices (list (float-vector -195.302 -150.0 8.7101) (float-vector -214.113 -150.0 60.3932) (float-vector -223.51 -150.0 56.973) (float-vector -204.698 -150.0 5.2899)))
         (instance face :init :vertices (list (float-vector -195.302 150.0 8.7101) (float-vector -214.113 150.0 60.3932) (float-vector -214.113 -150.0 60.3932) (float-vector -195.302 -150.0 8.7101))
                              :holes (list
         (instance hole :init :vertices (list (float-vector -201.287 -50.0 25.1547) (float-vector -208.127 -50.0 43.9486) (float-vector -208.127 50.0 43.9486) (float-vector -201.287 50.0 25.1547)))
))
         (instance face :init :vertices (list (float-vector -223.51 150.0 56.973) (float-vector -223.51 -150.0 56.973) (float-vector -214.113 -150.0 60.3932) (float-vector -214.113 150.0 60.3932)))
         (instance face :init :vertices (list (float-vector -195.302 150.0 8.7101) (float-vector -195.302 -150.0 8.7101) (float-vector -204.698 -150.0 5.2899) (float-vector -204.698 150.0 5.2899)))
         (instance face :init :vertices (list (float-vector -204.698 150.0 5.2899) (float-vector -223.51 150.0 56.973) (float-vector -214.113 150.0 60.3932) (float-vector -195.302 150.0 8.7101)))
         (instance face :init :vertices (list (float-vector -210.684 -50.0 21.7345) (float-vector -217.524 -50.0 40.5284) (float-vector -208.127 -50.0 43.9486) (float-vector -201.287 -50.0 25.1547)))
         (instance face :init :vertices (list (float-vector -208.127 50.0 43.9486) (float-vector -208.127 -50.0 43.9486) (float-vector -217.524 -50.0 40.5284) (float-vector -217.524 50.0 40.5284)))
         (instance face :init :vertices (list (float-vector -201.287 50.0 25.1547) (float-vector -208.127 50.0 43.9486) (float-vector -217.524 50.0 40.5284) (float-vector -210.684 50.0 21.7345)))
         (instance face :init :vertices (list (float-vector -210.684 50.0 21.7345) (float-vector -210.684 -50.0 21.7345) (float-vector -201.287 -50.0 25.1547) (float-vector -201.287 50.0 25.1547)))
       ))
       ))
     (dolist (b (cdr bc)) (send (car bc) :assoc b))
     (send (elt bc 0) :set-color :saddlebrown)
     (send (elt bc 1) :set-color :saddlebrown)
     (send (elt bc 2) :set-color :saddlebrown)
     (send (elt bc 3) :set-color :saddlebrown)
     (send (elt bc 4) :set-color :saddlebrown)
     (setq blink0 (instance bodyset-link :init (make-cascoords) :bodies bc :name :room602-tray1-bodyset2 :weight 1 :centroid (float-vector 0.0 0.0 0.0) :inertia-tensor #2f((1.0 0.0 0.0) (0.0 1.0 0.0) (0.0 0.0 1.0))))

     ;; definition of assoc
     (send self :assoc blink0)

     ;; definition of end-coords

     ;; definition of joint


     ;; definition of :handle
     (setq handle0 (make-cascoords :pos (float-vector 200.0 0.0 55.0) :rot #2f((1.110223e-16 -1.0 -1.110223e-16) (1.110223e-16 -1.110223e-16 1.0) (-1.0 -1.110223e-16 1.110223e-16)) :name ":rarm-handle"))
     (send blink0 :assoc handle0)
     (setq handle1 (make-cascoords :pos (float-vector -200.0 0.0 55.0) :rot #2f((1.110223e-16 -1.0 -1.110223e-16) (1.110223e-16 -1.110223e-16 1.0) (-1.0 -1.110223e-16 1.110223e-16)) :name ":larm-handle"))
     (send blink0 :assoc handle1)
     (setq handle2 (make-cascoords :pos (float-vector 200.0 -120.0 55.0) :rot #2f((-0.707107 -7.216450e-16 -0.707107) (0.707107 -5.551115e-16 -0.707107) (1.665335e-16 -1.0 8.881784e-16)) :name "handle2"))
     (send blink0 :assoc handle2)
     (setq handle3 (make-cascoords :pos (float-vector 200.0 120.0 55.0) :rot #2f((-0.707107 8.881784e-16 -0.707107) (-0.707107 -4.996004e-16 0.707107) (2.775558e-16 1.0 9.436896e-16)) :name "handle3"))
     (send blink0 :assoc handle3)
     (setq handle4 (make-cascoords :pos (float-vector -200.0 -120.0 55.0) :rot #2f((0.707107 -5.551115e-16 -0.707107) (0.707107 6.106227e-16 0.707107) (0.0 -1.0 8.326673e-16)) :name "handle4"))
     (send blink0 :assoc handle4)
     (setq handle5 (make-cascoords :pos (float-vector -200.0 120.0 55.0) :rot #2f((0.707107 6.661338e-16 -0.707107) (-0.707107 5.828671e-16 -0.707107) (-5.551115e-17 1.0 8.604228e-16)) :name "handle5"))
     (send blink0 :assoc handle5)

     ;; init-ending 
     (setq links (list blink0))
     (setq joint-list (list))
     (send self :init-ending)
     (send self :move-to (make-coords :pos pos :rot rot))
     (send-all links :worldcoords)

     self))

  (:handle (&rest args) (forward-message-to-all (list  handle0 handle1 handle2 handle3 handle4 handle5) args))
  (:handle-rarm-handle (&rest args) (forward-message-to handle0 args))
  (:handle-larm-handle (&rest args) (forward-message-to handle1 args))
  (:handle-handle2 (&rest args) (forward-message-to handle2 args))
  (:handle-handle3 (&rest args) (forward-message-to handle3 args))
  (:handle-handle4 (&rest args) (forward-message-to handle4 args))
  (:handle-handle5 (&rest args) (forward-message-to handle5 args))
  (:attention (&rest args) (forward-message-to-all (list ) args))
  (:button (&rest args) (forward-message-to-all (list ) args))
  )

(defun room602-tray1 (&rest args) (instance* room602-tray1-object :init args))
;; (format *error-output* "(instance room602-tray1-object :init) for generating model~%")
