home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
RUN Flagazine Extra: Special 3
/
run-special-3.zip
/
CAD.BAS
< prev
next >
Wrap
BASIC Source File
|
1991-11-07
|
2KB
|
47 lines
100 REM DRAADMODELLEN GWBASIC GRAFISCH (C) RUN FLAGAZINE NR. 4
110 GOSUB 440:XM=INT(GH%/2):YM=INT(GV%/2):ASP=4*GV%/(3*GH%):DIM FIG$(13)
120 RESTORE:FOR I=1 TO 6:READ FIG$(I):NEXT I:KEY OFF
130 FOR I=1 TO 6:LOCATE 2+I,3:PRINT FIG$(I):NEXT I
140 PRINT:PRINT"Welke figuur (1 t/m 6) : ";
150 INPUT AA$:IF VAL(AA$)<1 OR VAL(AA$)>6 THEN BEEP:GOTO 140
160 CLS:D=1:H=.4:V=500:A=XM:B=YM:X1=1:Y1=5
170 SCREEN MD:FIGNR=VAL(AA$):WL=LEN(FIG$(FIGNR)):PL=INT(80-WL)/2
180 N1=INV1:IF INV1=0 THEN N1=11
190 N=10*INV2:IF IN2=0 THEN N=10*3
200 Z1=INV3:IF INV3=0 THEN Z1=-3
210 S=INV4:IF INV4=0 THEN S=20
220 E=8*ATN(1)/N:DIM C(N):DIM D(N):F=-ATN(X1/Y1):I=0:J=0
230 R8=SQR(X1*X1+Y1*Y1):FZ=-ATN(Z1/R8):T=INT(N1/2)*D:GOSUB 360:GOSUB 300
240 GOSUB 330:FOR I=1 TO N:GOSUB 360:GOSUB 300:GOSUB 340:GOSUB 330:NEXT I
250 FOR J=1 TO N1:I=0:GOSUB 360:GOSUB 300:GOSUB 350:GOSUB 330
260 FOR I=1 TO N:GOSUB 360:GOSUB 300:GOSUB 350:GOSUB 340:GOSUB 330:NEXT I,J
270 LOCATE 25,32:PRINT"Nog een figuur (j/n)?";
280 INV$=INPUT$(1):INV=INSTR("jn JN",INV$) MOD 3:IF INV=0 THEN 280
290 CLS:ERASE C,D:IF INV=1 THEN 120 ELSE CLS:END
300 X3=X2*COS(F)+Y2*SIN(F):Y3=-X2*SIN(F)+Y2*COS(F):Z3=Z2:X4=X3
310 Y4=Y3*COS(FZ)+Z3*SIN(FZ)+S:Z4=-Y3*SIN(FZ)+Z3*COS(FZ):R9=SQR(Y4*Y4+Z4*Z4)
320 X=A+V*ATN(X4/R9):R9=SQR(X4*X4+Y4*Y4):Y=B+ASP*V*ATN(Z4/R9):RETURN
330 C(I)=X:D(I)=Y:RETURN
340 LINE (X,Y)-(C(I-1),D(I-1)):RETURN
350 LINE (X,Y)-(C(I),D(I)):RETURN
360 Z2=J*D-T:ON VAL(AA$) GOSUB 380,390,400,410,420,430
370 G=I*E:X2=R*COS(G):Y2=R*SIN(G):Z2=-Z2:RETURN
380 R=SQR(10*ABS(Z2+T)):RETURN
390 R=SQR(45-Z2*Z2):RETURN
400 R=9*SIN(Z2/T+.3):RETURN
410 R=7.4+SIN(Z2+1.5):RETURN
420 R=Z2^3/35:RETURN
430 R=Z2+COS(Z2)*COS(Z2*1.5):RETURN
440 CLS:MD=12:ON ERROR GOTO 460
450 SCREEN MD:IF MD=0 THEN 490 ELSE 470
460 MD=MD-1:RESUME 450
470 WINDOW SCREEN(0,0)-(1,1):GH%=PMAP(1,0)+1:GV%=PMAP(1,1)+1:WINDOW
480 ON ERROR GOTO 0:RETURN
490 PRINT "Geen grafische mogelijkheden":END
500 DATA"1-Schotel","2-Bol","3-Bokaal","4-Vissenkom","5-Kelk","6-Kandelaar"
510 REM /* 40/.4048,2943,2699,2655,3208,2420,3851,1659,1708,1685
520 REM /*/....1577,3060,4196,4066,3315,4186,2939,3769,2625,3640
530 REM /*/....4618,4182,1338,1937,1749,2716,2828,1709,1480,1506
540 REM /*/....1523,1117,1996,1665,1960,1121,3784,1450,3427,5331
550 REM Checksum...............: 107686