$B#E#u#s#L#i#s#p$rMQ$$$?%"%K%a!<%7%g%s$N:n@.!!!!!!!!!!!!(J1989-Apr-12

$B#1!%=`Hw!J5/F0$H%m!<%G%#%s%0!K(J
$B!!!&#X(Jwindow$B$rMQ$$$k!#(Jeusx$B$rAv$i$;!"(J/usr/local/demo/x.l $B$r%m!<%I$9$k!#(J
$B!!!&(Janimation.l , manipulator.l $B$r%m!<%I$9$k!#(J
$B!!!&(J(sys:newstack 128000) $B$K$h$C$F!"Bg$-$a$N%9%?%C%/$r3NJ]$9$k!#(J
$B!!!&(Jeta3armsol.o$B$r%m!<%I$9$k!#(J
$B!!!&(Jeta3build.l $B$r%m!<%I$9$k!#(Jeta3,eta4 $B$N%b%G%k$,:n$i$l$k!#(J

$B#2!%;Q@*$N;XDj(J
$B!!#2$D$N%^%K%T%e%l!<%?$N<j@h:BI87O$H3F4X@a3QEY$O!"%/%i%9(Jmanipulator $B$H(J
$B$=$N%5%V%/%i%9$G$"$k(Jeta3arm $B$G4IM}$5$l$k!J$3$N$[$+$K!"(Jeta2arm $B%/%i%9$,(J
$B$"$k!K!#(Jeta3arm $B$N%$%s%9%?%s%9$,!"(Jeta3a,eta4a $B$N#2$D$NJQ?t$K%P%$%s%I$5(J
$B$l$F$$$k!#$3$l$O!"(Jeta3build.l $B$NCf$G<!$N$h$&$K$7$FDj5A$5$l$F$$$k!#(J
$B!!(J  (setq eta4a
$B!!!!!!!!!!(J(instance eta3arm  :create
$B!!!!!!!!!!!!!!!!!!!!(J:name 'eta4a
$B!!!!!!!!!!!!!!!!!!!!(J:hand eta46
$B!!!!!!!!!!!!!!!!!!!!(J:left-finger eta47  :right-finger eta48
$B!!!!!!!!!!!!!!!!!!!!(J:toolcoords eta4hand
$B!!!!!!!!!!!!!!!!!!!!(J:open-direction #f(0 1 0)
$B!!!!!!!!!!!!!!!!!!!!(J:joints (list eta41 eta42 eta43 eta44 eta45 eta46)
$B!!!!!!!!!!!!!!!!!!!!(J:base eta40
$B!!!!!!!!!!!!!!!!!!!!(J:right-handed nil)))
$B!!%/%i%9(Jmanipulator $B$O(Jcascaded-coords $B$N%5%V%/%i%9$G$"$j!"=>$C$F!"B>$N(J
body$BEy$K7k9g$G$-$k!#<B:]!"(Jbase$B$N;R6!$H$7$FEPO?$5$l$k!#(J
$B!!(Jeta3a,eta4a $B$KBP$7$F(J:locate, :translate, :rotate$B$J$I$N%a%C%;!<%8$rAw(J
$B$k$3$H$K$h$j!"%^%K%T%e%l!<%?%b%G%k$rF0$+$9$3$H$,$G$-$k!#(Jwrt $B$K!"(J:world
, :local, $B$J$I$N;XDj$r$9$k$3$H$GG$0U$N:BI87O$GF0:n$r;XDj$G$-$k!#:BI87O(J
$B$rJQ49$7$?8e!"5U%-%M%^$r2r$$$F4X@a3Q$r5a$a$k!#2r$,B8:_$7$J$$>l9g$O:BI8(J
$BJQ49$O<h$j>C$5$l$k!#(Jeta3$B$N>l9g!"#1$D$N0LCV!";Q@*$KBP$7$F:GBg#8<oN`$N2r(J
$B$,5a$^$k$,!"1&<j!":8<j$N94B+!J(Jright-handed) $B$H!"D>A0$N%"!<%`2r$H$NO"B3(J
$B@-$+$i#1$D$N2r$,A*Br$5$l$k!#(J
$B!!:BI87O$G$N;XDj0J30$K!"3F4X@a3QEY$r;XDj$9$k$3$H$K$h$C$F;Q@*$rDj$a$k$3(J
$B$H$,$G$-$k!##6$D$N4X@a3Q$rNs$K$7$F!"(J:angles $B%a%C%;!<%8$rAw$k!"$^$?$O4X(J
$B@a$NHV9f$H3QEY$r0z?t$K$7$F(J:angle$B%a%C%;!<%8$rAw$k!#$$$:$l$K$7$F$b!"M?$((J
$B$i$l$?4X@a3Q$r$b$H$K=g%-%M%^$r7W;;$7!":G=*E*$J0LCV!&;Q@*$rI=$9(Jcoordina
tes $B$r5a$a$k!#$=$3$+$i$5$i$K5U%-%M%^$,2r$+$l!"3F4X@a3QEY$,Dj$a$i$l$k$N(J
$B$G!"!J7W;;8m:9$J$I$K$h$j!K;XDj$7$?3QEY$H@53N$K$O0lCW$7$J$$!#(J

$B#3!%I=<((J
$B!!I=<($K$O(Jdraw, hid $B4X?t$rMQ$$$k!#JQ?t(Jeta3, eta4$B$K$OA44X@aMWAG$N%j%9%H(J
$B$,F~$l$i$l$F$$$k$N$G!"(J(hid eta3)$B$J$I$H$9$k!#(J
$B!!F0$-$rI=<($9$k$K$O!"-!3F!9$N;QBV$G(Jhid $B$r<B9T$7!"$"$i$+$8$a@~J,MWAG$r(J
$B$9$Y$F:n@.$7$F$*$/!"-"(Jhid, draw $B$N7k2L$r(Jpixmap$B$K3JG<$7$F$*$/!"$N#2$D$N(J
$BJ}K!$,$"$k!#-!$O%&%#%s%I%&$NBg$-$5$rJQ$($?$j!"@~J,$NB@$5$rJQ$($FI=<($9(J
$B$k<+M3EY$,;D$kBe$o$j$K@~J,$N?t$,A}$($k$H@-G=$,Dc2<$9$k!#-"$OI=<($NB0@-(J
$B$rJQ$($i$l$:!"%U%!%$%k!"%a%b%j$N>CHq$bB?$$$,I=<($OB.$$!#!#(J
$B!!(Jhid $B$r9T$J$&$H(J*hid* $BJQ?t$K(Jedge-image$B$N%j%9%H$,%P%$%s%I$5$l$k!#$3$N%j(J
$B%9%H$KBP$7$F(Jlist-visible-segments $B$r:nMQ$5$;$k$H!"$9$Y$F$N2D;k%;%0%a%s(J
$B%H$rF1<!:BI8I=8=$7$?%Y%/%H%kBP$N%j%9%H$,F@$i$l$k!#$3$N%j%9%H$rB?$/$N%7(J
$B!<%s$KBP$7$F@8@.$7!"$=$l$r%j%9%H$K$7$F!"(Jsmooth-animation$B$r8F$V$H!"%"%K(J
$B%a!<%7%g%s$,I=<($5$l$k!#(J
$B!!!!(J(setq a (make-cube40 60 50))
    (setq s nil)
  $B!!(J(dotimes (i 20)
$B!!!!!!!!!!(J(send a :rotate -0.1 :x)
          (hid a)
          (push (list-visible-segments$B!!(J*hid*) s))
    (smooth-animation s)
  pixmap$B$K3($r@8@.$9$k$K$O!"<!$N$h$&$K$9$k!#(J
$B!!!!(J(setq pix (make-xpixmaps 20 :size 500)) $B!!(J;pixmap $B%j%9%H$r:n$k(J
$B!!!!(J(make-animation pix
$B!!!!!!!!!!(J(send a :rotate -0.1 :x)  (hid a))  ;pixmap $B$K3($rIA$/(J
$B!!!!(J(copy-pixmaps pix *viewsurface*)$B!!!!!!!!!!(J;pixmap $B$r=g<!I=<($9$k(J
