home *** CD-ROM | disk | FTP | other *** search
- #include "../h/rccl.h"
- #include "../h/umac.h"
-
- pumatask()
- {
- TRSF_PTR z, e, peg, corner, roty;
- POS_PTR pcor;
- int q;
-
- z = gentr_trsl("Z", 0., 0., 864.);
- e = gentr_trsl("E" , 0. , 0. , 140.);
- peg = gentr_trsl("PEG", 0., 0., 10.);
- corner = gentr_trsl("CORNER", -50., 500., 550.);
- corner->fn = varb;
- roty = gentr_rot("ROTY", 0., 0., 0., yunit, 180.);
-
- pcor = makeposition(
- "PCOR", z, t6, e, peg, EQ, corner, roty, TL, peg);
-
- setvel(300, 50);
- move(pcor);
- if (!teach(corner, pcor)) {
- setvel(300, 50);
-
- setmod('j');
- move(park);
- return;
- }
- setmod('c');
- setvel(100, 100);
-
- distance("dz", -50.);
- move(pcor);
-
- QUERY(q);
-
- if (q == 'n') {
- setvel(300, 100);
- setmod('j');
- move(park);
- return;
- }
- move(pcor);
-
- setvel(5, 20);
-
- limit("fz", 20.);
- distance("dz", 10.);
- move(pcor);
- comply("fz", 10.);
- limit("fy", 15.);
- distance("dy", -10.);
- move(pcor);
- comply("fy", -10.);
- update(corner, pcor);
- limit("fx", 25.);
- distance("dx", 10.);
- move(pcor);
- lock("fz fy");
- setvel(50, 50);
- distance("dx dy dz", -10., 10., -50.);
- move(pcor);
-
- setvel(300, 50);
- setmod('j');
- move(park);
- distance("dx dy dz", -10., 10., -50.);
- move(pcor);
- setmod('c');
- setvel(50, 50);
- distance("dx dy dz", -1., 1., -1.);
- move(pcor);
- distance("dx dy dz", -10., 10., -50.);
- move(pcor);
- setvel(300, 50);
- setmod('j');
- move(park);
- }
-