initial cammit
[qbasicapps.git] / math / tuletis.bas
1 DECLARE SUB init ()\r
2 DECLARE SUB pp (x1, y1, x2, y2, c!)\r
3 DIM SHARED mul\r
4 \r
5 mul = 50        '<< scale\r
6 init\r
7 \r
8 ox = -320 / mul\r
9 oy = 0\r
10 \r
11 FOR x = -320 / mul TO 320 / mul STEP 1 / mul\r
12 \r
13 \r
14 t = x ^ 3 - (3 * x)     '<< Type your formula there\r
15 \r
16 \r
17 pp x, t, ox, tol, 10\r
18 y = (t - tol) * mul\r
19 tol = t\r
20 \r
21 pp x, y, ox, oy, 14\r
22 ox = x\r
23 oy = y\r
24 NEXT x\r
25 \r
26 SUB init\r
27 SCREEN 12\r
28 \r
29 FOR x = -320 TO 320\r
30 IF x / mul = x \ mul THEN LINE (x + 320, 0)-(x + 320, 479), 1\r
31 NEXT x\r
32 \r
33 FOR y = -240 TO 240\r
34 IF y / mul = y \ mul THEN LINE (0, y + 240)-(639, y + 240), 1\r
35 NEXT y\r
36 \r
37 FOR x = -320 TO 320\r
38 IF x / (mul * 5) = x \ (mul * 5) THEN LINE (x + 320, 0)-(x + 320, 479), 4\r
39 NEXT x\r
40 \r
41 FOR y = -240 TO 240\r
42 IF y / (mul * 5) = y \ (mul * 5) THEN LINE (0, y + 240)-(639, y + 240), 4\r
43 NEXT y\r
44 \r
45 \r
46 \r
47 LINE (0, 240)-(639, 240), 3\r
48 LINE (320, 0)-(320, 479), 3\r
49 END SUB\r
50 \r
51 SUB pp (x, y, x1, y1, c)\r
52 \r
53 x2 = (x * mul) + 320\r
54 y2 = 240 - (y * mul)\r
55 x3 = (x1 * mul) + 320\r
56 y3 = 240 - (y1 * mul)\r
57 IF x2 < 0 THEN GOTO 1\r
58 IF y2 < 0 THEN GOTO 1\r
59 IF x2 > 639 THEN GOTO 1\r
60 IF y2 > 479 THEN GOTO 1\r
61 IF x3 < 0 THEN GOTO 1\r
62 IF y3 < 0 THEN GOTO 1\r
63 IF x3 > 639 THEN GOTO 1\r
64 IF y3 > 479 THEN GOTO 1\r
65 LINE (x2, y2)-(x3, y3), c\r
66 1\r
67 END SUB\r
68 \r