perm filename X3.SAI[GEM,BGB] blob
sn#030961 filedate 1973-03-25 generic text, type T, neo UTF8
00100 BEGIN "TEST"
00200 DEFINE !="COMMENT";
00300 DEFINE π="3.1415927";
00400 REQUIRE "⊂⊃⊂⊃" DELIMITERS;
00500 REQUIRE "GEOMES.HDR" SOURCE_FILE;
00600
00700 INTEGER B1,B2,F,E0,E,V,V0,T;
00800 INTEGER WORLD,WINDOW,CAMERA;
00900
01000 ! UNIVERSE CREATION;
01100
01200 WORLD ← MKWORLD; ! MAKE A WORLD;
01300 WINDOW ← MKWINDOW; ! MAKE A WINDOW;
01400 CAMERA ← MKCAMERA; ! MAKE A CAMERA;
01500 BATT(WORLD,WINDOW); ! BODY-ATTACH WORLD TO WINDOW;
01600 BATT(CAMERA,WINDOW); ! BODY-ATTACH CAMERA TO WINDOW;
01700
01800 ! BODY CREATION;
01900
02000 B1 ← MKB(WORLD);
02100 F ← MKF(B1);
02200 V ← V0 ← MKV(B1);
02300 V ← MKEV(F,V);
02400 V ← MKEV(F,V);
02500 V ← MKEV(F,V);
02600 E ← MKFE(V,F,V0);
02700 E ← E0 ← PED(F);
02800 OUTSTR("ENTER SWEEP."&13&10);
02900 SWEEP(F,0);
02950 OUTSTR("RETURNED FROM SWEEP."&13&10);
03000 INCHRW;
03100
03200 ! ACTION;
03300
03400 FOR T←1 STEP 1 UNTIL 30 DO
03500 OUTSTR(13&10); ! FLUSH THE PAGE PRINTER;
03600 TRANSLATE(B1,0,0,4); ! FOUR FEET +Z TOWARDS CAMERA;
03700 ROTATE(B2,π/8,π/8,0); ! ROTATION ABOUT X & Y AXES;
03800 WHILE TRUE DO
03900 BEGIN
04000 ROTATE(B1,0,-π/17,0); ! ROTATION CW ABOUT Y-AXIS;
04100 FOR T←1 STEP 1 UNTIL 40 DO
04200 BEGIN
04300 ROTATE(B1,π/20,0,0); ! ROTATION CCW ABOUT X-AXIS;
04400 ROTATE(B2,0,π/16,0); ! ROTATION CCW ABOUT Y-AXIS;
04500 SHOW2(WINDOW,1); ! DISPLAY A SIMULATED IMAGE;
04600 IF INCHRS≥1 THEN DONE; ! EXIT ON TYPE-ANY-KEY;
04700 END;
04800 END;
04900
05000 END "TEST"; BGB 19 MARCH 1973.