This is an old revision of the document!


Adding a new rigid body to the world

In cram/cram_3d_world/cram_bullet_reasoning/src/objects.lisp:

(defmethod add-object ((world bt-world) (type (eql :liquid-minor)) name pose
                       &key (mass 0.00001) (radius 0.01) color)
  ;; (let ((compound-shape (make-instance 'compound-shape)))
  ;;   (dotimes (i 8)
  ;;     (add-child-shape
  ;;      compound-shape
  ;;       (cl-transforms:make-pose
  ;;         (cl-transforms:make-3d-vector 0 0 0)
  ;;         (cl-transforms:make-quaternion 0 0 0 1))
  ;;        (make-instance 'colored-sphere-shape
  ;;                                    :radius radius :color '(1 0 0 0.5))))
 
    ;; ;; Adds the basket to the specified world
    ;;   (make-item world name (list type)
    ;;              (list
    ;;               (make-instance 'rigid-body
    ;;                 :name name :mass mass :pose (ensure-pose pose)
    ;;                 :collision-shape compound-shape)))))
 
  (make-item world name (list type)
              (list
                (make-instance
                    'rigid-body
                  :name 'waterdrop1 :mass 0.00000000001 :pose (ensure-pose pose)
                  :collision-shape (make-instance 'colored-sphere-shape
                                     :radius radius :color color))
                )))