nyle 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +2 -3
- data/CHANGELOG.md +21 -0
- data/Gemfile.lock +61 -0
- data/README.md +2 -2
- data/doc/.gitkeep +0 -0
- data/lib/nyle.rb +53 -44
- data/lib/nyle/frame.rb +18 -3
- data/lib/nyle/screen.rb +5 -4
- data/lib/nyle/version.rb +1 -1
- data/nyle.gemspec +2 -2
- data/samples/{nyle_block.rb → application/block.rb} +0 -1
- data/samples/{nyle_clock.rb → application/clock.rb} +0 -1
- data/samples/{nyle_falling.rb → application/falling.rb} +5 -7
- data/samples/{nyle_flight.rb → application/flight.rb} +6 -9
- data/samples/{nyle_sketch.rb → application/sketch.rb} +0 -1
- data/samples/{nyle_sugar.rb → application/sugar.rb} +1 -1
- data/samples/{nyle_tree.rb → application/tree.rb} +2 -3
- data/samples/basic/color_chart.rb +316 -0
- data/samples/{nyle_pixel.rb → basic/color_pixel.rb} +1 -1
- data/samples/basic/draw_circle.rb +52 -0
- data/samples/basic/draw_line.rb +82 -0
- data/samples/basic/draw_rect.rb +58 -0
- data/samples/{nyle_shape.rb → basic/draw_shape.rb} +70 -70
- data/samples/basic/draw_text.rb +55 -0
- data/samples/basic/image_click.rb +33 -0
- data/samples/basic/image_rotate.rb +42 -0
- data/samples/{nyle_rpg.rb → basic/image_rpg.rb} +15 -15
- data/samples/basic/keyboard.rb +84 -0
- data/samples/{nyle_walk_notrace.rb → basic/random_walk.rb} +3 -3
- data/samples/{nyle_walk_trace.rb → basic/random_walk_trace.rb} +3 -3
- data/samples/image/n_c_mogura.png +0 -0
- data/samples/launcher.rb +125 -0
- data/samples/tips/.gitkeep +0 -0
- data/samples/tutorial/img.jpg +0 -0
- data/samples/tutorial/tut_a10.rb +10 -0
- data/samples/tutorial/tut_a20.rb +13 -0
- data/samples/tutorial/tut_a30.rb +18 -0
- data/samples/tutorial/tut_a40.rb +19 -0
- data/samples/tutorial/tut_a45.rb +21 -0
- data/samples/tutorial/tut_a50.rb +25 -0
- data/samples/tutorial/tut_a60.rb +30 -0
- data/samples/tutorial/tut_a70.rb +34 -0
- data/samples/tutorial/tut_b10.rb +14 -0
- data/samples/tutorial/tut_b20.rb +14 -0
- data/samples/tutorial/tut_b30.rb +14 -0
- data/samples/tutorial/tut_b40.rb +18 -0
- metadata +42 -23
- data/doc/Nyle_reference.pdf +0 -0
- data/samples/image/n_b_river.gif +0 -0
- data/samples/nyle_basics.rb +0 -69
- data/samples/nyle_basics2.rb +0 -70
- data/samples/nyle_click.rb +0 -34
- data/samples/nyle_colors.rb +0 -315
- data/samples/readme_samples.txt +0 -36
@@ -1,16 +1,15 @@
|
|
1
|
-
|
2
1
|
require 'nyle'
|
3
2
|
|
4
3
|
class Tree
|
5
4
|
def initialize(x, y, z)
|
6
5
|
@x, @y, @z = x, y, z
|
7
|
-
@image = Nyle.load_image('
|
6
|
+
@image = Nyle.load_image('../image/n_fl_tree32.png')
|
8
7
|
end
|
9
8
|
|
10
9
|
def draw(altitude)
|
11
10
|
dx = ((@x - 320) / @z)
|
12
11
|
dy = (((@y - 240) / @z - 60) * ((altitude - 100) / 300.0) - (altitude - 230))
|
13
|
-
Nyle.
|
12
|
+
Nyle.save do
|
14
13
|
Nyle.translate(dx, dy)
|
15
14
|
Nyle.scale(5 / @z, 5 / @z)
|
16
15
|
Nyle.draw_image(0, 0, @image)
|
@@ -31,7 +30,7 @@ class Ground
|
|
31
30
|
end
|
32
31
|
|
33
32
|
def draw
|
34
|
-
Nyle.
|
33
|
+
Nyle.save do
|
35
34
|
# draw ground
|
36
35
|
Nyle.translate(320, 240)
|
37
36
|
Nyle.rotate(@angle)
|
@@ -48,14 +47,14 @@ class Ground
|
|
48
47
|
end
|
49
48
|
|
50
49
|
def update(angle, altitude)
|
51
|
-
@angle
|
50
|
+
@angle -= (1.8 * angle / 180 * Math::PI)
|
52
51
|
if @angle < (-60.0 / 180 * Math::PI) then
|
53
52
|
@angle = (-60.0 / 180 * Math::PI)
|
54
53
|
end
|
55
54
|
if @angle > (60.0 / 180 * Math::PI) then
|
56
55
|
@angle = (60.0 / 180 * Math::PI)
|
57
56
|
end
|
58
|
-
@altitude
|
57
|
+
@altitude -= (5 * altitude)
|
59
58
|
@altitude = 400 if @altitude > 400
|
60
59
|
@altitude = 100 if @altitude < 100
|
61
60
|
end
|
@@ -73,9 +72,7 @@ class Screen < Nyle::Screen
|
|
73
72
|
end
|
74
73
|
|
75
74
|
def update
|
76
|
-
|
77
|
-
altitude = (Nyle.key_down?(KEY_Down) ? -1 : (Nyle.key_down?(KEY_Up) ? 1 : 0))
|
78
|
-
@ground.update(angle, altitude)
|
75
|
+
@ground.update(Nyle.cursor_x, Nyle.cursor_y)
|
79
76
|
|
80
77
|
Nyle.quit if Nyle.key_press?(KEY_Escape)
|
81
78
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
|
2
1
|
require 'nyle'
|
3
2
|
|
4
3
|
class Screen < Nyle::Screen
|
@@ -30,11 +29,11 @@ class Screen < Nyle::Screen
|
|
30
29
|
Nyle.translate(0, -len) # move origin
|
31
30
|
len *= 0.66 # adjust length (two-thirds)
|
32
31
|
if len > 2
|
33
|
-
Nyle.
|
32
|
+
Nyle.save do
|
34
33
|
Nyle.rotate(@theta) # rotate
|
35
34
|
_branch(len)
|
36
35
|
end
|
37
|
-
Nyle.
|
36
|
+
Nyle.save do
|
38
37
|
Nyle.rotate(-@theta) # rotate
|
39
38
|
_branch(len)
|
40
39
|
end
|
@@ -0,0 +1,316 @@
|
|
1
|
+
require 'nyle'
|
2
|
+
|
3
|
+
class Screen < Nyle::Screen
|
4
|
+
def initialize
|
5
|
+
super(480, 600)
|
6
|
+
setup
|
7
|
+
end
|
8
|
+
|
9
|
+
def setup
|
10
|
+
@colors = _color_list
|
11
|
+
@start_index = 0
|
12
|
+
@bar_w = 200
|
13
|
+
@bar_h = 30
|
14
|
+
end
|
15
|
+
|
16
|
+
def draw
|
17
|
+
@colors.each_with_index do |c, i|
|
18
|
+
next if i < @start_index
|
19
|
+
y = (i - @start_index) * @bar_h
|
20
|
+
Nyle.draw_rect(0, y, @bar_w, @bar_h, {color: c, fill: true})
|
21
|
+
Nyle.draw_text(@bar_w + 10, y + @bar_h - 10, "#{c.to_s}", {color: :BLACK, size: 16})
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def update
|
26
|
+
if Nyle.key_press?(KEY_Up) or Nyle.mouse_press?(MOUSE_R)
|
27
|
+
@start_index -= (@height / @bar_h)
|
28
|
+
@start_index = (@colors.length / (@height / @bar_h)) * (@height / @bar_h) if @start_index < 0
|
29
|
+
end
|
30
|
+
|
31
|
+
if Nyle.key_press?(KEY_Down) or Nyle.mouse_press?(MOUSE_L)
|
32
|
+
@start_index += (@height / @bar_h)
|
33
|
+
@start_index = 0 if @start_index >= @colors.length
|
34
|
+
end
|
35
|
+
|
36
|
+
if Nyle.key_press?(KEY_space)
|
37
|
+
@colors.each do |c|
|
38
|
+
puts "#{Cairo::Color.parse(c).to_s} (#{c.to_s})"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
Nyle.quit if Nyle.key_press?(KEY_Escape)
|
43
|
+
end
|
44
|
+
|
45
|
+
def _color_list
|
46
|
+
[
|
47
|
+
:ALICE_BLUE, # #F0F8FF
|
48
|
+
:ALIZARIN_CRIMSON, # #E32637
|
49
|
+
:AMARANTH, # #E62B50
|
50
|
+
:AMBER, # #FFBF00
|
51
|
+
:AMETHYST, # #9966CC
|
52
|
+
:ANTIQUE_WHITE, # #FAEBD8
|
53
|
+
:APRICOT, # #FBCEB2
|
54
|
+
:AQUA, # #00FFFF
|
55
|
+
:AQUAMARINE, # #80FFD5
|
56
|
+
:ASPARAGUS, # #7CA15B
|
57
|
+
:AZURE, # #0080FF
|
58
|
+
:BEIGE, # #F5F5DD
|
59
|
+
:BISQUE, # #FFE5C4
|
60
|
+
:BISTRE, # #3E2B1F
|
61
|
+
:BLACK, # #000000
|
62
|
+
:BLANCHED_ALMOND, # #FFEBCD
|
63
|
+
:BLAZE_ORANGE, # #FF6600
|
64
|
+
:BLUE, # #0000FF
|
65
|
+
:BLUE_VIOLET, # #8A2BE3
|
66
|
+
:BONDI_BLUE, # #0095B6
|
67
|
+
:BRIGHT_GREEN, # #66FF00
|
68
|
+
:BRIGHT_TURQUOISE, # #08E8DF
|
69
|
+
:BROWN, # #964C00
|
70
|
+
:BUFF, # #F0DD82
|
71
|
+
:BURGUNDY, # #800020
|
72
|
+
:BURLY_WOOD, # #DFB887
|
73
|
+
:BURNT_ORANGE, # #CC5500
|
74
|
+
:BURNT_SIENNA, # #E97551
|
75
|
+
:BURNT_UMBER, # #8A3324
|
76
|
+
:CADET_BLUE, # #5F9FA1
|
77
|
+
:CAMOUFLAGE_GREEN, # #79866C
|
78
|
+
:CARDINAL, # #C41E3B
|
79
|
+
:CARMINE, # #960018
|
80
|
+
:CARNATION, # #F95A61
|
81
|
+
:CARROT_ORANGE, # #ED9121
|
82
|
+
:CELADON, # #ADE2B0
|
83
|
+
:CERISE, # #DF3163
|
84
|
+
:CERULEAN, # #007CA8
|
85
|
+
:CERULEAN_BLUE, # #2A52BE
|
86
|
+
:CHARTREUSE, # #80FF00
|
87
|
+
:CHARTREUSE_YELLOW, # #E0FF00
|
88
|
+
:CHESTNUT, # #CD5C5C
|
89
|
+
:CHOCOLATE, # #D36A1E
|
90
|
+
:CINNAMON, # #7C4000
|
91
|
+
:COBALT, # #0048AC
|
92
|
+
:COPPER, # #B87433
|
93
|
+
:COPPER_ROSE, # #996666
|
94
|
+
:CORAL, # #FF8050
|
95
|
+
:CORAL_RED, # #FF4141
|
96
|
+
:CORN, # #FBEC5D
|
97
|
+
:CORNFLOWER_BLUE, # #6495ED
|
98
|
+
:CORNSILK, # #FFF8DD
|
99
|
+
:CREAM, # #FFFDD1
|
100
|
+
:CRIMSON, # #DD143D
|
101
|
+
:CYAN, # #00FFFF
|
102
|
+
:DARK_BLUE, # #00008B
|
103
|
+
:DARK_CYAN, # #008B8B
|
104
|
+
:DARK_GOLDENROD, # #B8860C
|
105
|
+
:DARK_GRAY, # #AAAAAA
|
106
|
+
:DARK_GREEN, # #006400
|
107
|
+
:DARK_KHAKI, # #BDB76C
|
108
|
+
:DARK_MAGENTA, # #8B008B
|
109
|
+
:DARK_OLIVE_GREEN, # #556C2F
|
110
|
+
:DARK_ORANGE, # #FF8C00
|
111
|
+
:DARK_ORCHID, # #9932CC
|
112
|
+
:DARK_POWDER_BLUE, # #003399
|
113
|
+
:DARK_RED, # #8B0000
|
114
|
+
:DARK_SALMON, # #E9967B
|
115
|
+
:DARK_SEA_GREEN, # #8FBC8F
|
116
|
+
:DARK_SLATE_BLUE, # #493E8B
|
117
|
+
:DARK_SLATE_GRAY, # #2F4F4F
|
118
|
+
:DARK_TURQUOISE, # #00CED2
|
119
|
+
:DARK_VIOLET, # #9400D4
|
120
|
+
:DEEP_PINK, # #FF1493
|
121
|
+
:DEEP_SKY_BLUE, # #00BFFF
|
122
|
+
:DENIM, # #1660BD
|
123
|
+
:DIM_GRAY, # #6A6A6A
|
124
|
+
:DODGER_BLUE, # #1E90FF
|
125
|
+
:EGGPLANT, # #990066
|
126
|
+
:EMERALD, # #50C879
|
127
|
+
:FALU_RED, # #801818
|
128
|
+
:FERN_GREEN, # #4F7A43
|
129
|
+
:FIRE_BRICK, # #B22222
|
130
|
+
:FLAX, # #EEDD82
|
131
|
+
:FLORAL_WHITE, # #FFFAF0
|
132
|
+
:FOREST_GREEN, # #228B22
|
133
|
+
:FRENCH_ROSE, # #F64B8A
|
134
|
+
:FUCHSIA, # #FF00FF
|
135
|
+
:GAINSBORO, # #DDDDDD
|
136
|
+
:GAMBOGE, # #E59C0F
|
137
|
+
:GHOST_WHITE, # #F8F8FF
|
138
|
+
:GOLD, # #FFD800
|
139
|
+
:GOLDENROD, # #DBA620
|
140
|
+
:GRAY, # #808080
|
141
|
+
:GRAY_ASPARAGUS, # #475946
|
142
|
+
:GREEN, # #00FF00
|
143
|
+
:GREEN_YELLOW, # #AEFF2F
|
144
|
+
:HARLEQUIN, # #40FF00
|
145
|
+
:HELIOTROPE, # #E074FF
|
146
|
+
:HOLLYWOOD_CERISE, # #F400A2
|
147
|
+
:HONEYDEW, # #F0FFF0
|
148
|
+
:HOT_MAGENTA, # #FF00CC
|
149
|
+
:HOT_PINK, # #FF6AB5
|
150
|
+
:INDIAN_RED, # #CD5C5C
|
151
|
+
:INDIGO, # #4C0082
|
152
|
+
:INTERNATIONAL_KLEIN_BLUE, # #002FA8
|
153
|
+
:INTERNATIONAL_ORANGE, # #FF4F00
|
154
|
+
:IVORY, # #FFFFF0
|
155
|
+
:JADE, # #00A96C
|
156
|
+
:KHAKI, # #C3B191
|
157
|
+
:KHAKI_X11, # #F0E78C
|
158
|
+
:LAVENDER, # #B57FDD
|
159
|
+
:LAVENDER_BLUE, # #CCCCFF
|
160
|
+
:LAVENDER_BLUSH, # #FFF0F5
|
161
|
+
:LAVENDER_GRAY, # #BDBBD8
|
162
|
+
:LAVENDER_PINK, # #FBAFD3
|
163
|
+
:LAVENDER_ROSE, # #FBA1E3
|
164
|
+
:LAWN_GREEN, # #7DFC00
|
165
|
+
:LEMON, # #FDE911
|
166
|
+
:LEMON_CHIFFON, # #FFFACD
|
167
|
+
:LIGHT_BLUE, # #AED9E7
|
168
|
+
:LIGHT_CORAL, # #F08080
|
169
|
+
:LIGHT_CYAN, # #E1FFFF
|
170
|
+
:LIGHT_GOLDENROD_YELLOW, # #FAFAD3
|
171
|
+
:LIGHT_GREEN, # #90EE90
|
172
|
+
:LIGHT_GREY, # #D4D4D4
|
173
|
+
:LIGHT_PINK, # #FFB6C1
|
174
|
+
:LIGHT_SALMON, # #FFA17B
|
175
|
+
:LIGHT_SEA_GREEN, # #20B2AB
|
176
|
+
:LIGHT_SKY_BLUE, # #87CEFA
|
177
|
+
:LIGHT_SLATE_GRAY, # #788899
|
178
|
+
:LIGHT_STEEL_BLUE, # #B1C4DF
|
179
|
+
:LIGHT_YELLOW, # #FFFFE1
|
180
|
+
:LILAC, # #C8A3C8
|
181
|
+
:LIME, # #BFFF00
|
182
|
+
:LIME_GREEN, # #32CD32
|
183
|
+
:LINEN, # #FAF0E7
|
184
|
+
:MAGENTA, # #FF00FF
|
185
|
+
:MALACHITE, # #0CDB51
|
186
|
+
:MAROON, # #800000
|
187
|
+
:MAUVE, # #E1B1FF
|
188
|
+
:MEDIUM_AQUAMARINE, # #66CDAB
|
189
|
+
:MEDIUM_BLUE, # #0000CD
|
190
|
+
:MEDIUM_CARMINE, # #B04136
|
191
|
+
:MEDIUM_LAVENDER, # #EE82EE
|
192
|
+
:MEDIUM_ORCHID, # #BA55D4
|
193
|
+
:MEDIUM_PURPLE, # #9371DC
|
194
|
+
:MEDIUM_SEA_GREEN, # #3DB372
|
195
|
+
:MEDIUM_SLATE_BLUE, # #7C69EE
|
196
|
+
:MEDIUM_SPRING_GREEN, # #00FA9B
|
197
|
+
:MEDIUM_TURQUOISE, # #49D2CC
|
198
|
+
:MEDIUM_VIOLET_RED, # #C71685
|
199
|
+
:MIDNIGHT_BLUE, # #003366
|
200
|
+
:MINT_CREAM, # #F5FFFA
|
201
|
+
:MINT_GREEN, # #98FF98
|
202
|
+
:MISTY_ROSE, # #FFE5E2
|
203
|
+
:MOCCASIN, # #FFE5B5
|
204
|
+
:MOSS_GREEN, # #AEE0AE
|
205
|
+
:MOUNTBATTEN_PINK, # #997B8D
|
206
|
+
:MUSTARD, # #FFDC58
|
207
|
+
:NAVAJO_WHITE, # #FFDFAE
|
208
|
+
:NAVY_BLUE, # #000080
|
209
|
+
:OCHRE, # #CC7822
|
210
|
+
:OLD_GOLD, # #D0B53C
|
211
|
+
:OLD_LACE, # #FDF5E7
|
212
|
+
:OLD_LAVENDER, # #7A6979
|
213
|
+
:OLD_ROSE, # #C08081
|
214
|
+
:OLIVE, # #808000
|
215
|
+
:OLIVE_DRAB, # #6C8E23
|
216
|
+
:ORANGE, # #FF8000
|
217
|
+
:ORANGE_COLOR_WHEEL, # #FF8000
|
218
|
+
:ORANGE_PEEL, # #FFA100
|
219
|
+
:ORANGE_RED, # #FF4600
|
220
|
+
:ORANGE_WEB, # #FFA600
|
221
|
+
:ORCHID, # #DB71D7
|
222
|
+
:PALE_GOLDENROD, # #EEE8AB
|
223
|
+
:PALE_GREEN, # #98FB98
|
224
|
+
:PALE_TURQUOISE, # #B0EEEE
|
225
|
+
:PALE_VIOLET_RED, # #DC7193
|
226
|
+
:PAPAYA_WHIP, # #FFEFD6
|
227
|
+
:PASTEL_GREEN, # #78DE78
|
228
|
+
:PASTEL_PINK, # #FFD2DD
|
229
|
+
:PEACH, # #FFE6B5
|
230
|
+
:PEACH_ORANGE, # #FFCC99
|
231
|
+
:PEACH_PUFF, # #FFDBB9
|
232
|
+
:PEACH_YELLOW, # #FAE0AE
|
233
|
+
:PEAR, # #D2E331
|
234
|
+
:PERIWINKLE, # #CCCCFF
|
235
|
+
:PERSIAN_BLUE, # #1C3ABB
|
236
|
+
:PERSIAN_GREEN, # #00A793
|
237
|
+
:PERSIAN_INDIGO, # #32127B
|
238
|
+
:PERSIAN_PINK, # #F780BE
|
239
|
+
:PERSIAN_RED, # #CC3333
|
240
|
+
:PERSIAN_ROSE, # #FF1CB2
|
241
|
+
:PERU, # #CD8540
|
242
|
+
:PINE_GREEN, # #017A70
|
243
|
+
:PINK, # #FFC0CB
|
244
|
+
:PINK_ORANGE, # #FF9966
|
245
|
+
:PLUM, # #DEA1DE
|
246
|
+
:POMEGRANATE, # #F34823
|
247
|
+
:POWDER_BLUE, # #B1E1E7
|
248
|
+
:POWDER_BLUE_WEB, # #B1E1E7
|
249
|
+
:PRUSSIAN_BLUE, # #003153
|
250
|
+
:PUCE, # #CC8899
|
251
|
+
:PUMPKIN, # #FF7618
|
252
|
+
:PURPLE, # #660099
|
253
|
+
:RAW_UMBER, # #744B12
|
254
|
+
:RED, # #FF0000
|
255
|
+
:RED_VIOLET, # #C71685
|
256
|
+
:ROBIN_EGG_BLUE, # #00CCCC
|
257
|
+
:ROSE, # #FF0080
|
258
|
+
:ROSY_BROWN, # #BC8F8F
|
259
|
+
:ROYAL_BLUE, # #426AE2
|
260
|
+
:RUSSET, # #80471B
|
261
|
+
:RUST, # #B7420E
|
262
|
+
:SADDLE_BROWN, # #8B4613
|
263
|
+
:SAFETY_ORANGE, # #FF6600
|
264
|
+
:SAFFRON, # #F4C430
|
265
|
+
:SALMON, # #FF8C6A
|
266
|
+
:SANDY_BROWN, # #F4A560
|
267
|
+
:SANGRIA, # #92000A
|
268
|
+
:SAPPHIRE, # #082567
|
269
|
+
:SCARLET, # #FF2400
|
270
|
+
:SCHOOL_BUS_YELLOW, # #FFD900
|
271
|
+
:SEA_GREEN, # #2E8B57
|
272
|
+
:SEASHELL, # #FFF5EE
|
273
|
+
:SELECTIVE_YELLOW, # #FFBA00
|
274
|
+
:SEPIA, # #714314
|
275
|
+
:SHOCKING_PINK, # #FC0FC0
|
276
|
+
:SIENNA, # #A1522D
|
277
|
+
:SILVER, # #C0C0C0
|
278
|
+
:SKY_BLUE, # #87CEEB
|
279
|
+
:SLATE_BLUE, # #6B5ACD
|
280
|
+
:SLATE_GRAY, # #718090
|
281
|
+
:SMALT, # #003399
|
282
|
+
:SNOW, # #FFFAFA
|
283
|
+
:SPRING_GREEN, # #00FF80
|
284
|
+
:STEEL_BLUE, # #4782B5
|
285
|
+
:SWAMP_GREEN, # #ADB78E
|
286
|
+
:TAN, # #D3B58C
|
287
|
+
:TANGERINE, # #FFCC00
|
288
|
+
:TAUPE, # #493D32
|
289
|
+
:TAWNY, # #CD5700
|
290
|
+
:TEA_GREEN, # #D1F0C0
|
291
|
+
:TEAL, # #008080
|
292
|
+
:TENNE, # #CD5700
|
293
|
+
:TERRA_COTTA, # #E3735B
|
294
|
+
:THISTLE, # #D9BFD9
|
295
|
+
:TOMATO, # #FF6348
|
296
|
+
:TURQUOISE, # #30D6C8
|
297
|
+
:ULTRAMARINE, # #120A8F
|
298
|
+
:VERMILION, # #FF4D00
|
299
|
+
:VIOLET, # #8B00FF
|
300
|
+
:VIOLET_EGGPLANT, # #991299
|
301
|
+
:VIRIDIAN, # #41826E
|
302
|
+
:WHEAT, # #F5DFB3
|
303
|
+
:WHITE, # #FFFFFF
|
304
|
+
:WHITE_SMOKE, # #F5F5F5
|
305
|
+
:WISTERIA, # #C9A1DD
|
306
|
+
:YELLOW, # #FFFF00
|
307
|
+
:YELLOW_GREEN, # #9BCD32
|
308
|
+
:ZINNWALDITE # #EBC2B0
|
309
|
+
]
|
310
|
+
end
|
311
|
+
end
|
312
|
+
|
313
|
+
|
314
|
+
Screen.new.show_all
|
315
|
+
Gtk.main
|
316
|
+
|
@@ -0,0 +1,52 @@
|
|
1
|
+
require 'nyle'
|
2
|
+
|
3
|
+
class Screen < Nyle::Screen
|
4
|
+
def initialize
|
5
|
+
super
|
6
|
+
end
|
7
|
+
|
8
|
+
def draw
|
9
|
+
Nyle.draw_circle(120, 60, 30)
|
10
|
+
Nyle.draw_circle(220, 60, 30, {weight: 4})
|
11
|
+
Nyle.draw_circle(320, 60, 30, {weight: 6})
|
12
|
+
Nyle.draw_circle(420, 60, 30, {weight: 8})
|
13
|
+
Nyle.draw_circle(520, 60, 30, {weight: 10})
|
14
|
+
|
15
|
+
Nyle.draw_circle(120, 130, 30, {fill: true, a: 0.2})
|
16
|
+
Nyle.draw_circle(220, 130, 30, {fill: true, a: 0.4})
|
17
|
+
Nyle.draw_circle(320, 130, 30, {fill: true, a: 0.6})
|
18
|
+
Nyle.draw_circle(420, 130, 30, {fill: true, a: 0.8})
|
19
|
+
Nyle.draw_circle(520, 130, 30, {fill: true, a: 1.0})
|
20
|
+
|
21
|
+
Nyle.draw_circle(120, 200, 30, {fill: true, a: 0.2, color: :RED})
|
22
|
+
Nyle.draw_circle(220, 200, 30, {fill: true, a: 0.4, color: :RED})
|
23
|
+
Nyle.draw_circle(320, 200, 30, {fill: true, a: 0.6, color: :RED})
|
24
|
+
Nyle.draw_circle(420, 200, 30, {fill: true, a: 0.8, color: :RED})
|
25
|
+
Nyle.draw_circle(520, 200, 30, {fill: true, a: 1.0, color: :RED})
|
26
|
+
|
27
|
+
Nyle.draw_circle(120, 270, 30, {fill: true, a: 0.2, color: :FOREST_GREEN})
|
28
|
+
Nyle.draw_circle(220, 270, 30, {fill: true, a: 0.4, color: :FOREST_GREEN})
|
29
|
+
Nyle.draw_circle(320, 270, 30, {fill: true, a: 0.6, color: :FOREST_GREEN})
|
30
|
+
Nyle.draw_circle(420, 270, 30, {fill: true, a: 0.8, color: :FOREST_GREEN})
|
31
|
+
Nyle.draw_circle(520, 270, 30, {fill: true, a: 1.0, color: :FOREST_GREEN})
|
32
|
+
|
33
|
+
Nyle.draw_circle(120, 340, 30, {fill: true, a: 0.2, color: :COBALT})
|
34
|
+
Nyle.draw_circle(220, 340, 30, {fill: true, a: 0.4, color: :COBALT})
|
35
|
+
Nyle.draw_circle(320, 340, 30, {fill: true, a: 0.6, color: :COBALT})
|
36
|
+
Nyle.draw_circle(420, 340, 30, {fill: true, a: 0.8, color: :COBALT})
|
37
|
+
Nyle.draw_circle(520, 340, 30, {fill: true, a: 1.0, color: :COBALT})
|
38
|
+
|
39
|
+
Nyle.draw_circle(120, 410, 30, {fill: true, a: 0.2, color: :GOLD})
|
40
|
+
Nyle.draw_circle(220, 410, 30, {fill: true, a: 0.4, color: :GOLD})
|
41
|
+
Nyle.draw_circle(320, 410, 30, {fill: true, a: 0.6, color: :GOLD})
|
42
|
+
Nyle.draw_circle(420, 410, 30, {fill: true, a: 0.8, color: :GOLD})
|
43
|
+
Nyle.draw_circle(520, 410, 30, {fill: true, a: 1.0, color: :GOLD})
|
44
|
+
|
45
|
+
Nyle.quit if Nyle.key_press?(KEY_Escape)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
|
50
|
+
Screen.new.show_all
|
51
|
+
Gtk.main
|
52
|
+
|