;;
;; DO NOT EDIT THIS FILE
;; this file is automatically generated from euslisp+euslib version 
;;
;;
(defclass room73b2-azuma-short-broom-object
  :super cascaded-link
  :slots (sensors
         handle0 handle1
         attention0
         ))
(defmethod room73b2-azuma-short-broom-object
  (:init
   (&rest args &key (name "room73b2-azuma-short-broom") (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 :room73b2-azuma-short-broom-bodyset2
     (setq bc (list
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 8.66025 -5.0 800.0) (float-vector 10.0 0.0 800.0) (float-vector 8.66025 5.0 800.0) (float-vector 5.0 8.66025 800.0) (float-vector -4.547474e-13 10.0 800.0) (float-vector -5.0 8.66025 800.0) (float-vector -8.66025 5.0 800.0) (float-vector -10.0 0.0 800.0) (float-vector -8.66025 -5.0 800.0) (float-vector -5.0 -8.66025 800.0) (float-vector 0.0 -10.0 800.0) (float-vector 5.0 -8.66025 800.0)))
         (instance face :init :vertices (list (float-vector 10.0 0.0 250.0) (float-vector 8.66025 -5.0 250.0) (float-vector 5.0 -8.66025 250.0) (float-vector 0.0 -10.0 250.0) (float-vector -5.0 -8.66025 250.0) (float-vector -8.66025 -5.0 250.0) (float-vector -10.0 0.0 250.0) (float-vector -8.66025 5.0 250.0) (float-vector -5.0 8.66025 250.0) (float-vector -4.547474e-13 10.0 250.0) (float-vector 5.0 8.66025 250.0) (float-vector 8.66025 5.0 250.0)))
         (instance face :init :vertices (list (float-vector 8.66025 -5.0 800.0) (float-vector 8.66025 -5.0 250.0) (float-vector 10.0 0.0 250.0) (float-vector 10.0 0.0 800.0)))
         (instance face :init :vertices (list (float-vector 5.0 -8.66025 800.0) (float-vector 5.0 -8.66025 250.0) (float-vector 8.66025 -5.0 250.0) (float-vector 8.66025 -5.0 800.0)))
         (instance face :init :vertices (list (float-vector 0.0 -10.0 800.0) (float-vector 0.0 -10.0 250.0) (float-vector 5.0 -8.66025 250.0) (float-vector 5.0 -8.66025 800.0)))
         (instance face :init :vertices (list (float-vector -5.0 -8.66025 800.0) (float-vector -5.0 -8.66025 250.0) (float-vector 0.0 -10.0 250.0) (float-vector 0.0 -10.0 800.0)))
         (instance face :init :vertices (list (float-vector -8.66025 -5.0 800.0) (float-vector -8.66025 -5.0 250.0) (float-vector -5.0 -8.66025 250.0) (float-vector -5.0 -8.66025 800.0)))
         (instance face :init :vertices (list (float-vector -10.0 0.0 800.0) (float-vector -10.0 0.0 250.0) (float-vector -8.66025 -5.0 250.0) (float-vector -8.66025 -5.0 800.0)))
         (instance face :init :vertices (list (float-vector -8.66025 5.0 800.0) (float-vector -8.66025 5.0 250.0) (float-vector -10.0 0.0 250.0) (float-vector -10.0 0.0 800.0)))
         (instance face :init :vertices (list (float-vector -5.0 8.66025 800.0) (float-vector -5.0 8.66025 250.0) (float-vector -8.66025 5.0 250.0) (float-vector -8.66025 5.0 800.0)))
         (instance face :init :vertices (list (float-vector -4.547474e-13 10.0 800.0) (float-vector -4.547474e-13 10.0 250.0) (float-vector -5.0 8.66025 250.0) (float-vector -5.0 8.66025 800.0)))
         (instance face :init :vertices (list (float-vector 5.0 8.66025 800.0) (float-vector 5.0 8.66025 250.0) (float-vector -4.547474e-13 10.0 250.0) (float-vector -4.547474e-13 10.0 800.0)))
         (instance face :init :vertices (list (float-vector 8.66025 5.0 800.0) (float-vector 8.66025 5.0 250.0) (float-vector 5.0 8.66025 250.0) (float-vector 5.0 8.66025 800.0)))
         (instance face :init :vertices (list (float-vector 10.0 0.0 800.0) (float-vector 10.0 0.0 250.0) (float-vector 8.66025 5.0 250.0) (float-vector 8.66025 5.0 800.0)))
       ))
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 100.0 -10.0 0.0) (float-vector 40.0 -10.0 220.0) (float-vector 20.0 -10.0 250.0) (float-vector -20.0 -10.0 250.0) (float-vector -40.0 -10.0 220.0) (float-vector -100.0 -10.0 0.0)))
         (instance face :init :vertices (list (float-vector 40.0 10.0 220.0) (float-vector 100.0 10.0 0.0) (float-vector -100.0 10.0 0.0) (float-vector -40.0 10.0 220.0) (float-vector -20.0 10.0 250.0) (float-vector 20.0 10.0 250.0)))
         (instance face :init :vertices (list (float-vector 100.0 -10.0 0.0) (float-vector 100.0 10.0 0.0) (float-vector 40.0 10.0 220.0) (float-vector 40.0 -10.0 220.0)))
         (instance face :init :vertices (list (float-vector -100.0 -10.0 0.0) (float-vector -100.0 10.0 0.0) (float-vector 100.0 10.0 0.0) (float-vector 100.0 -10.0 0.0)))
         (instance face :init :vertices (list (float-vector -40.0 -10.0 220.0) (float-vector -40.0 10.0 220.0) (float-vector -100.0 10.0 0.0) (float-vector -100.0 -10.0 0.0)))
         (instance face :init :vertices (list (float-vector -20.0 -10.0 250.0) (float-vector -20.0 10.0 250.0) (float-vector -40.0 10.0 220.0) (float-vector -40.0 -10.0 220.0)))
         (instance face :init :vertices (list (float-vector 20.0 -10.0 250.0) (float-vector 20.0 10.0 250.0) (float-vector -20.0 10.0 250.0) (float-vector -20.0 -10.0 250.0)))
         (instance face :init :vertices (list (float-vector 40.0 -10.0 220.0) (float-vector 40.0 10.0 220.0) (float-vector 20.0 10.0 250.0) (float-vector 20.0 -10.0 250.0)))
       ))
       (instance faceset :init :faces (list
         (instance face :init :vertices (list (float-vector 25.0 10.0 815.0) (float-vector -25.0 10.0 815.0) (float-vector -25.0 -10.0 815.0) (float-vector 25.0 -10.0 815.0)))
         (instance face :init :vertices (list (float-vector -25.0 10.0 785.0) (float-vector 25.0 10.0 785.0) (float-vector 25.0 -10.0 785.0) (float-vector -25.0 -10.0 785.0)))
         (instance face :init :vertices (list (float-vector 25.0 10.0 815.0) (float-vector 25.0 10.0 785.0) (float-vector -25.0 10.0 785.0) (float-vector -25.0 10.0 815.0)))
         (instance face :init :vertices (list (float-vector 25.0 -10.0 815.0) (float-vector 25.0 -10.0 785.0) (float-vector 25.0 10.0 785.0) (float-vector 25.0 10.0 815.0)))
         (instance face :init :vertices (list (float-vector -25.0 -10.0 815.0) (float-vector -25.0 -10.0 785.0) (float-vector 25.0 -10.0 785.0) (float-vector 25.0 -10.0 815.0)))
         (instance face :init :vertices (list (float-vector -25.0 10.0 815.0) (float-vector -25.0 10.0 785.0) (float-vector -25.0 -10.0 785.0) (float-vector -25.0 -10.0 815.0)))
       ))
       ))
     (dolist (b (cdr bc)) (send (car bc) :assoc b))
     ;; paste texture azuma-short-broom.jpg
     (send (elt bc 1) :paste-texture-to-face (elt (send (elt bc 1) :faces)0) :file "models/azuma-short-broom.jpg")
     ;; paste texture azuma-short-broom.jpg
     (send (elt bc 1) :paste-texture-to-face (elt (send (elt bc 1) :faces)1) :file "models/azuma-short-broom.jpg")
     (send (elt bc 0) :set-color :gray)
     (send (elt bc 1) :set-color :brown)
     (send (elt bc 2) :set-color :red)
     (setq blink0 (instance bodyset-link :init (make-cascoords) :bodies bc :name :room73b2-azuma-short-broom-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 0.0 0.0 580.0) :rot #2f((0.5 0.866025 0.0) (-0.866025 0.5 0.0) (0.0 0.0 1.0)) :name "handle0"))
     (send blink0 :assoc handle0)
     (setq handle1 (make-cascoords :pos (float-vector 0.0 0.0 690.0) :rot #2f((0.5 -0.866025 0.0) (0.866025 0.5 0.0) (0.0 0.0 1.0)) :name "handle1"))
     (send blink0 :assoc handle1)

     ;; definition of :attention
     (setq attention0 (make-cascoords :pos (float-vector 0.0 0.0 0.0) :rot #2f((1.0 0.0 0.0) (0.0 1.0 0.0) (0.0 0.0 1.0)) :name "attention0"))
     (send blink0 :assoc attention0)

     ;; 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) args))
  (:handle-handle0 (&rest args) (forward-message-to handle0 args))
  (:handle-handle1 (&rest args) (forward-message-to handle1 args))
  (:attention (&rest args) (forward-message-to-all (list  attention0) args))
  (:attention-attention0 (&rest args) (forward-message-to attention0 args))
  (:button (&rest args) (forward-message-to-all (list ) args))
  )

(defun room73b2-azuma-short-broom (&rest args) (instance* room73b2-azuma-short-broom-object :init args))
;; (format *error-output* "(instance room73b2-azuma-short-broom-object :init) for generating model~%")
