Skip to content

Commit aa4856d

Browse files
Naoki-Hiraokak-okada
authored andcommitted
[irtmodel.l]fix bug of :angle-vector for multi-dof joint
1 parent b690910 commit aa4856d

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

irteus/irtmodel.l

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -809,12 +809,12 @@
809809
;; currently only 1dof joint is supported
810810
(when (and (= (send j :joint-dof) 1) (= (send (send j :joint-min-max-target) :joint-dof) 1))
811811
;; find index of joint-min-max-target
812-
(let* ((ii 0) (jj (elt joint-list ii))
812+
(let* ((ii 0) (jj (elt joint-list ii)) (ji 0)
813813
tmp-joint-angle tmp-joint-min-angle tmp-joint-max-angle
814814
tmp-target-joint-angle tmp-target-joint-min-angle tmp-target-joint-max-angle)
815815
(while (not (eq jj (send j :joint-min-max-target)))
816-
(incf ii) (setq jj (elt joint-list ii)))
817-
(setq tmp-joint-angle (elt vec i) tmp-target-joint-angle (elt vec ii))
816+
(incf ii) (incf ji (send jj :joint-dof)) (setq jj (elt joint-list ii)))
817+
(setq tmp-joint-angle (elt vec i) tmp-target-joint-angle (elt vec ji))
818818
(setq tmp-joint-min-angle (send j :joint-min-max-table-min-angle tmp-target-joint-angle)
819819
tmp-joint-max-angle (send j :joint-min-max-table-max-angle tmp-target-joint-angle))
820820
(setq tmp-target-joint-min-angle (send jj :joint-min-max-table-min-angle tmp-joint-angle)
@@ -844,7 +844,7 @@
844844
(setq (j . joint-angle) tmp-joint-angle
845845
(jj . joint-angle) tmp-target-joint-angle)
846846
(setf (elt vec i) tmp-joint-angle)
847-
(setf (elt vec ii) tmp-target-joint-angle)
847+
(setf (elt vec ji) tmp-target-joint-angle)
848848
)
849849
);; cond
850850
);; let*

0 commit comments

Comments
 (0)