車体
ペンの上げ下げを担当する部分
全体
#define LEFT(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Off(OUT_A+OUT_C);//右回り #define RIGHT(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C);//左回り #define GO(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); //直進 #define BACK(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); //後退 #define UP OnRev(OUT_B);Wait(50);Off(OUT_B); //ペンをあげる #define DOWN OnFwd(OUT_B);Wait(50);Off(OUT_B); //ペンをさげる #define MIGI OnFwd(OUT_A);Wait(100);Off(OUT_A); //ゆっくり右回り task main() { DOWN; GO(45); //鼻 LEFT(17); UP; LEFT(70); //右目へ移動 BACK(40); RIGHT(85); BACK(15); DOWN; BACK(35); //右目 UP; LEFT(90); //左目へ移動 GO(80); RIGHT(85); DOWN; BACK(35); //左目 UP; RIGHT(55); //口へ移動 GO(60); RIGHT(140); GO(30); DOWN; MIGI; //口 UP; }
#define half_cheek 25 //旋回時の頬の半分の角度 #define GO(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); //前にt秒進む #define BACK(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); //後ろにt秒進む #define HIDARI(t) OnRev(OUT_C);OnFwd(OUT_A);Wait(t);Off(OUT_A+OUT_C); //左にt秒旋回 #define MIGI(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Off(OUT_A+OUT_C); //右にt秒旋回 #define GO_RIGHT(t) OnFwd(OUT_A);Wait(t);Off(OUT_A); //右にt秒進む #define PEN_UP OnRev(OUT_B);Wait(50);Off(OUT_B); //ペンを上げる #define PEN_DOWN OnFwd(OUT_B);Wait(50);Off(OUT_B); //ペンを下げる #define EYE GO(30);PEN_DOWN;GO(30);BACK(30);GO(30);PEN_UP;BACK(60); //目 #define EYEBROW GO(25);PEN_DOWN;GO(45);PEN_UP;BACK(70); //眉 task main () { GO(200); //入場 HIDARI(half_cheek); PEN_DOWN; MIGI(half_cheek*4); PEN_UP; //右の頬 HIDARI(half_cheek*3); GO(82); PEN_DOWN; MIGI(half_cheek); BACK(25); PEN_UP; //鼻 GO(30); HIDARI(half_cheek); BACK(100); EYE; //右目 HIDARI(20); EYEBROW; //右の眉 HIDARI(150); EYEBROW; //左の眉 HIDARI(20); EYE; //左目 MIGI(half_cheek) PEN_DOWN; HIDARI(half_cheek*2); PEN_UP;//左の頬 MIGI(half_cheek*2); GO(60); GO_RIGHT(60); HIDARI(15); PEN_DOWN; GO_RIGHT(40); MIGI(10); PEN_UP; //口 MIGI(10); BACK(200); //退場 }