FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
smallbasic.github.io/samples/node/1262.bas at master · smallbasic/smallbasic.github.io · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
smallbasic
/
smallbasic.github.io
Public
Notifications
You must be signed in to change notification settings
Fork
4
Star
4
Code
Issues
0
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
smallbasic.github.io
/
samples
/
node
/
1262.bas
Copy path
More file actions
More file actions
Latest commit
History
History
History
205 lines (181 loc) · 3.11 KB
Breadcrumbs
smallbasic.github.io
/
samples
/
node
/
1262.bas
Copy path
File metadata and controls
205 lines (181 loc) · 3.11 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
CLS
T_INIT
'
:::::::::::::::::::::::::::
'
BASICS EXAMPLES :
'
FIGURE 1
CLS
t_pen
=
0
T_HOME
T_PEN
=
1
FOR
N
=
1
TO
720
T_FD
(
10
)
T_RT
(
N
)
NEXT
N
PAUSE
1
'
POLYGONS
CLS
T_PEN
=
0
T_HOME
T_PEN
=
1
FOR
J
=
3
TO
12
COLOR
J
FOR
N
=
1
TO
J
T_FD
(
50
)
T_RT
(
360
/
J
)
NEXT
N
NEXT
J
PAUSE
1
'
SPIRAL
CLS
T_PEN
=
0
T_HOME
T_PEN
=
1
J
=
0.05
FOR
N
=
1
TO
360
*
10
J
=
J
+
0.001
T_FD
(
J
)
T_RT
(
1
)
NEXT
N
PAUSE
1
'
POLIGON SPIRAL
FOR
J
=
3
TO
12
CLS
T_PEN
=
0
T_HOME
T_PEN
=
1
FOR
N
=
10
TO
360
*
2
STEP
3
T_FD
(
10
+
N
)
T_RT
(
360
/
J
)
NEXT
N
PAUSE
1
NEXT
J
PAUSE
1
'
CIRCLES
CLS
T_PEN
=
0
T_HOME
T_PEN
=
1
FOR
J
=
0
TO
5
STEP
0.1
FOR
N
=
0.25
TO
360
T_FD
(
J
)
T_RT
(
1
)
NEXT
N
NEXT
J
PAUSE
1
COLOR
3
'
SHAPE
CLS
T_HOME
T_PEN
=
0
T_HOME
T_PEN
=
1
FOR
N
=
1
TO
20
T_FD
(
50
)
T_LT
(
90
)
T_FD
(
50
)
T_RT
(
90
)
T_FD
(
50
)
T_RT
(
90
)
T_FD
(
50
)
NEXT
N
COLOR
1
'
Atom Orbit
CLS
T_HOME
T_PEN
=
0
T_HOME
T_PEN
=
1
for
n
=
1
to
11
for
i
=
0
to
359
t_fd
(
1
)
t_rt
((
sin
(
rad
(
i
/
2
))))
next
i
next
n
PAUSE
1
COLOR
0
'
X
CLS
T_HOME
T_PEN
=
0
FOR
J
=
0
TO
360
*
10
STEP
10
T_HOME
T_RT
150
T_FD
100
+ (
SQR
(
J
/
1000
))
T_PEN
=
1
FOR
N
=
0
TO
360
T_FD
2
+(
J
/
1000
)
T_RT
1
NEXT
N
T_PEN
=
0
NEXT
J
COLOR
0
'
Z
CLS
T_PEN
=
0
T_HOME
T_PEN
=
1
FOR
N
=
0
TO
360000
T_GT
((
sqr
(
N
) *
SIN
(
RAD
(
n
))),(
sqr
(
N
) *
COS
(
RAD
(
n
))))
NEXT
N
end
'
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'
GRAPH TURTLE
'
VARIABLES
'
T_X : DISTANCE IN PIXELS
'
T_Y : DISTANCE IN PIXELS
'
T_DISTANCE : DISTANCE IN PIXELS
'
T_PEN : 0 = PEN OFF 1 = PEN ON
'
T_ANGLE : ANGLE IN DEGREES
SUB
T_INIT
'
INIT GRAPH TURTLE
T_W
=
XMAX
T_H
=
YMAX
T_CENTER_SCREEN_X
=
INT
(
T_W
/
2
)
T_CENTER_SCREEN_Y
=
INT
(
T_H
/
2
)
T_POSITION_X
=
T_CENTER_SCREEN_X
T_POSITION_Y
=
T_CENTER_SCREEN_Y
T_HEADING
=
0
T_PEN
=
1
END
SUB
T_GT
(
T_X,T_Y
)
'
GO TO NEW POSITION X,Y PIXELS
T_NEW_POSITION_X
=
T_CENTER_SCREEN_X
+
T_X
T_NEW_POSITION_Y
=
T_CENTER_SCREEN_Y
+
T_Y
IF
T_PEN
=
1
THEN
LINE T_POSITION_X,
T_POSITION_Y
,
T_NEW_POSITION_X
,
T_NEW_POSITION_Y
T_POSITION_X
=
T_NEW_POSITION_X
T_POSITION_Y
=
T_NEW_POSITION_Y
END
SUB
T_HOME
'
GO HOME TURTLE
IF
T_PEN
=
1
THEN
LINE T_POSITION_X,
T_POSITION_Y
,
T_CENTER_SCREEN_X
,
T_CENTER_SCREEN_Y
T_POSITION_X
=
INT
(
T_W
/
2
)
T_POSITION_Y
=
INT
(
T_H
/
2
)
END
SUB
T_FD
(
T_DISTANCE
)
'
FORWARD X DISTANCE PIXELES
T_NEW_POSITION_X
=
T_POSITION_X
+ (
T_DISTANCE
*
SIN
(
T_HEADING
))
T_NEW_POSITION_Y
=
T_POSITION_Y
- (
T_DISTANCE
*
COS
(
T_HEADING
))
IF
T_PEN
=
1
THEN
LINE T_POSITION_X,
T_POSITION_Y
,
T_NEW_POSITION_X
,
T_NEW_POSITION_Y
T_POSITION_X
=
T_NEW_POSITION_X
T_POSITION_Y
=
T_NEW_POSITION_Y
END
SUB
T_BK
(
T_DISTANCE
)
'
BACK X DISTANCE PIXELES
T_NEW_POSITION_X
=
T_POSITION_X
- (
T_DISTANCE
*
SIN
(
T_HEADING
))
T_NEW_POSITION_Y
=
T_POSITION_Y
+ (
T_DISTANCE
*
COS
(
T_HEADING
))
IF
T_PEN
=
1
THEN
LINE T_POSITION_X,
T_POSITION_Y
,
T_NEW_POSITION_X
,
T_NEW_POSITION_Y
T_POSITION_X
=
T_NEW_POSITION_X
T_POSITION_Y
=
T_NEW_POSITION_Y
END
FUNC
T_RT
(
T_ANGLE
)
'
TURN RIGHT, ANGLE DEGREES
T_HEADING
=
T_HEADING
+
RAD
(
T_ANGLE
)
END
FUNC
T_LT
(
T_ANGLE
)
'
TURN LEFT, ANGLE DEGREES
T_HEADING
=
T_HEADING
-
RAD
(
T_ANGLE
)
END
FUNC
T_ORIENT
(
T_ANGLE
)
'
SET ORIENTATION TURTLE ANGLE DEGREES
T_HEADING
=
RAD
(
T_ANGLE
)
END
Back
|
FazBrowse Home
|
New Git URL