rotate-joint   xtlang


Defined in:  https://github.com/digego/extempore/tree/v0.8.9/libs/external/horde3d.xtm

Implementation

(bind-func rotate-joint
  (lambda (obj name x y z)
    ;; rotate chest joint
    (h3dFindNodes obj name H3DNodeTypes_Joint)
    (let ((joint (h3dGetNodeFindResult 0))
    (dat (salloc 9 float)))
      (h3dGetNodeTransform joint
         (pref-ptr dat 0) (pref-ptr dat 1) (pref-ptr dat 2)
         (pref-ptr dat 3) (pref-ptr dat 4) (pref-ptr dat 5)
         (pref-ptr dat 6) (pref-ptr dat 7) (pref-ptr dat 8))
      (h3dSetNodeTransform joint
         (pref dat 0) (pref dat 1) (pref dat 2)
         (+ (pref dat 3) x)
         (+ (pref dat 4) y)
         (+ (pref dat 5) z)
         (pref dat 6) (pref dat 7) (pref dat 8)))))


Back to Index