File: POLAR.FC of Tape: Sources/Focal/fc3
(.FC,.FO Focal format converted to 'WRITE' listing)
C-PS/8 FOCAL, 1971 01.01 C POLAR BY STEVE POULSEN 01.02 C OMSI SOFTWARE DEVELOPMENT GROUP 01.03 C LAST CHANGE: 8/31/71 01.04 C ***** TEKTRONIX T-4002 GRAPHICS TERMINAL REQUIRED ***** 01.05 01.06 C THIS PROGRAM WILL GRAPH ANY TWO-DIMENSIONAL EQUATION ON 01.07 C A POLAR COORDINATE SYSTEM. TYPE ANYTHING BUT YES IF YOU WANT TO 01.08 C TO INPUT AN EQUATION WHEN ASKED IF THE EQUATION IS IN, AND 01.09 C THE COMPUTER WILL INTERRUPT THE PROGRAM AND ALLOW YOU TO 01.10 C MODIFY ITS INPUT EQUATION. TYPE AN '=' AND YOU WILL GET THE 01.11 C FIRST PART OF THE EQUATION SINCE IT IS IN MODIFY MODE. IF 01.12 C YOU CHOOSE NOT TO MODIFY THE EQUATION, THE PROGRAM WILL ASSUME 01.13 C R=T. EQUATION FORMAT IS R(RADIUS) IN TERMS OF T(THETA). 01.14 C ** INITIAL ANGLE IS THE POSITION FROM WHICH R WILL BE ROTATED. 01.15 C ** FINAL ANGLE IS THE POSITION THROUGH WHICH R WILL BE ROTATED. 01.16 C ** ANGLE INCREMENT IS THE STEP WITH WHICH R WILL BE ROTATED. 01.17 C ** RADIUS OF AXES IS THE SCALING FEATURE WHICH SETS THE LENGTH OF 01.18 C THE X AND Y AXES. 01.19 C ** ALL ANGLES ARE IN DEGREES. 01.20 01.24 I ((#/3)-FITR(#/3))1.25,1.28,1.25 01.25 T "YOU DO NOT HAVE ENOUGH FEATURES." 01.26 T " RESTART FOCAL WITH FEATURE 2.";Q 01.28 E 01.29 D 12;A "HAVE YOU ENTERED THE EQUATION? ",AN 01.30 I (AN-0YES) 1.4,2.1,1.4 01.40 T !"ENTER EQUATION OF R IN TERMS OF THE ANGLE T"!!;M 10.1 02.10 A !"INITIAL ANGLE?",A1,!"FINAL ANGLE?",A2,!"ANGLE INCREMENT?",A3 02.20 A !"RADIUS OF AXES?",R1;S C=3.1415926/180;S S=380/R1 02.30 S A1=A1*C;S A2=A2*C;S A3=A3*C;D 12 03.10 S Q=FDIS(0,132,380)+FDIS(1,892,380)+FDIS(0,512,10)+FDIS(1,512,750) 03.20 S Q7=FOUT(1) 04.10 F T=A1,A3,A2;D 10;D 5 04.20 S Q=FOUT(1);A !"AGAIN? ",AG;I (AG-0YES) 20.1,1.2,20.1 05.10 S X=512+R*S*FCOS(T);S Y=380+R*S*FSIN(T);I (FABS(R*S)-380)5.2;S I=0 05.20 S Q=FDIS(I,X,Y);I (FABS(R*S)-380)5.3;R 05.30 S I=1;R 10.10 S R=T 12.10 F Q7=1,.2,FOUT(24); 12.20 S Q7=FOUT(1);R 20.10 Q