ruby-processing 2.6.3 → 2.6.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (742) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rpextras.jar +0 -0
  3. data/lib/ruby-processing/app.rb +56 -48
  4. data/lib/ruby-processing/helper_methods.rb +11 -12
  5. data/lib/ruby-processing/library_loader.rb +19 -10
  6. data/lib/ruby-processing/runner.rb +49 -36
  7. data/lib/ruby-processing/version.rb +1 -1
  8. data/lib/templates/application/run.erb +3 -0
  9. data/library/boids/boids.rb +36 -32
  10. data/vendors/Rakefile +36 -7
  11. metadata +3 -734
  12. data/samples/Rakefile +0 -21
  13. data/samples/configRP5/configRP5.pde +0 -147
  14. data/samples/contributed/Rakefile +0 -30
  15. data/samples/contributed/animator.rb +0 -48
  16. data/samples/contributed/bezier_playground.rb +0 -204
  17. data/samples/contributed/circle_collision.rb +0 -129
  18. data/samples/contributed/drawolver.rb +0 -96
  19. data/samples/contributed/elegant_ball.rb +0 -165
  20. data/samples/contributed/empathy.rb +0 -78
  21. data/samples/contributed/fern.rb +0 -51
  22. data/samples/contributed/fibonacci_sphere.rb +0 -86
  23. data/samples/contributed/flight_patterns.rb +0 -63
  24. data/samples/contributed/full_screen.rb +0 -29
  25. data/samples/contributed/getting_started.rb +0 -24
  26. data/samples/contributed/grapher.rb +0 -36
  27. data/samples/contributed/gravity.rb +0 -106
  28. data/samples/contributed/jwishy.rb +0 -95
  29. data/samples/contributed/mandelbrot.rb +0 -79
  30. data/samples/contributed/orbit.rb +0 -41
  31. data/samples/contributed/quadraticvertex.rb +0 -106
  32. data/samples/contributed/re_sample.rb +0 -27
  33. data/samples/contributed/reflection.rb +0 -17
  34. data/samples/contributed/tree.rb +0 -72
  35. data/samples/external_library/java_processing/README +0 -3
  36. data/samples/external_library/java_processing/box2d_processing/bumpy_surface_noise.rb +0 -52
  37. data/samples/external_library/java_processing/box2d_processing/data/java_args.txt +0 -2
  38. data/samples/external_library/java_processing/box2d_processing/library/custom_shape/custom_shape.rb +0 -158
  39. data/samples/external_library/java_processing/box2d_processing/library/particle_system/particle_system.rb +0 -209
  40. data/samples/external_library/java_processing/box2d_processing/library/surface/surface.rb +0 -154
  41. data/samples/external_library/java_processing/box2d_processing/liquidy.rb +0 -58
  42. data/samples/external_library/java_processing/box2d_processing/polygons.rb +0 -53
  43. data/samples/external_library/java_processing/custom/README.md +0 -16
  44. data/samples/external_library/java_processing/custom/Rakefile +0 -22
  45. data/samples/external_library/java_processing/custom/ext/nn/Connection.java +0 -47
  46. data/samples/external_library/java_processing/custom/ext/nn/HiddenNeuron.java +0 -20
  47. data/samples/external_library/java_processing/custom/ext/nn/InputNeuron.java +0 -23
  48. data/samples/external_library/java_processing/custom/ext/nn/Network.java +0 -136
  49. data/samples/external_library/java_processing/custom/ext/nn/Neuron.java +0 -79
  50. data/samples/external_library/java_processing/custom/ext/nn/OutputNeuron.java +0 -7
  51. data/samples/external_library/java_processing/custom/landscape.rb +0 -60
  52. data/samples/external_library/java_processing/custom/xor.rb +0 -88
  53. data/samples/external_library/java_processing/fisica/README +0 -1
  54. data/samples/external_library/java_processing/fisica/bubbles.rb +0 -80
  55. data/samples/external_library/java_processing/fisica/joints.rb +0 -112
  56. data/samples/external_library/java_processing/fisica/polygons.rb +0 -79
  57. data/samples/external_library/java_processing/fisica/raycast.rb +0 -61
  58. data/samples/external_library/java_processing/generative_design/mesh_example.rb +0 -25
  59. data/samples/external_library/java_processing/generative_design/node_spring_attractor.rb +0 -83
  60. data/samples/external_library/java_processing/generative_design/sub_class_example.rb +0 -44
  61. data/samples/external_library/java_processing/geomerative/data/FreeSans.ttf +0 -0
  62. data/samples/external_library/java_processing/geomerative/data/Toucan.svg +0 -43
  63. data/samples/external_library/java_processing/geomerative/hello_bot_ignore_styles.rb +0 -38
  64. data/samples/external_library/java_processing/geomerative/hello_world_rotate_firstletter.rb +0 -43
  65. data/samples/external_library/java_processing/geomerative/hola_mundo.rb +0 -37
  66. data/samples/external_library/java_processing/grafica/data/OktoberfestVSGermanElections.csv +0 -118
  67. data/samples/external_library/java_processing/grafica/default_plot.rb +0 -30
  68. data/samples/external_library/java_processing/grafica/multiple_panels.rb +0 -117
  69. data/samples/external_library/java_processing/grafica/oktoberfest_example.rb +0 -83
  70. data/samples/external_library/java_processing/guido/slider.rb +0 -54
  71. data/samples/external_library/java_processing/hemesh/data/java_args.txt +0 -2
  72. data/samples/external_library/java_processing/hemesh/library/vbo/mesh_to_vbo.rb +0 -43
  73. data/samples/external_library/java_processing/hemesh/twin_iso.rb +0 -69
  74. data/samples/external_library/java_processing/pbox2d/bumpy_surface_noise.rb +0 -57
  75. data/samples/external_library/java_processing/pbox2d/contact_test.rb +0 -23
  76. data/samples/external_library/java_processing/pbox2d/data/java_args.txt +0 -2
  77. data/samples/external_library/java_processing/pbox2d/library/custom_shape/custom_shape.rb +0 -158
  78. data/samples/external_library/java_processing/pbox2d/library/particle_system/particle_system.rb +0 -212
  79. data/samples/external_library/java_processing/pbox2d/library/surface/surface.rb +0 -154
  80. data/samples/external_library/java_processing/pbox2d/liquidy.rb +0 -58
  81. data/samples/external_library/java_processing/pbox2d/polygons.rb +0 -58
  82. data/samples/external_library/java_processing/peasy_cam/hello_peasy.rb +0 -29
  83. data/samples/external_library/java_processing/peasy_cam/hilbert_fractal.rb +0 -34
  84. data/samples/external_library/java_processing/peasy_cam/library/hilbert/hilbert.rb +0 -100
  85. data/samples/external_library/java_processing/proscene/cad_camera.rb +0 -57
  86. data/samples/external_library/java_processing/proscene/camera_customization.rb +0 -114
  87. data/samples/external_library/java_processing/proscene/data/ti_yong.png +0 -0
  88. data/samples/external_library/java_processing/toxiclibs/data/ti_yong.png +0 -0
  89. data/samples/external_library/java_processing/toxiclibs/gray_scott_image.rb +0 -79
  90. data/samples/external_library/java_processing/toxiclibs/gray_scott_tone_map.rb +0 -78
  91. data/samples/external_library/java_processing/toxiclibs/implicit.rb +0 -143
  92. data/samples/external_library/java_processing/toxiclibs/library/vbo/mesh_to_vbo.rb +0 -52
  93. data/samples/external_library/java_processing/toxiclibs/library/vbo/vbo.rb +0 -52
  94. data/samples/external_library/java_processing/toxiclibs/model_align.rb +0 -48
  95. data/samples/external_library/ruby_gem/README +0 -12
  96. data/samples/external_library/ruby_gem/data/README.txt +0 -1
  97. data/samples/external_library/ruby_gem/data/data.json +0 -8
  98. data/samples/external_library/ruby_gem/data/java_args.txt +0 -2
  99. data/samples/external_library/ruby_gem/draw_test.rb +0 -171
  100. data/samples/external_library/ruby_gem/game_of_life.rb +0 -127
  101. data/samples/external_library/ruby_gem/mdarray_test.rb +0 -28
  102. data/samples/processing_app/ABOUT +0 -3
  103. data/samples/processing_app/basics/arrays/array.rb +0 -35
  104. data/samples/processing_app/basics/arrays/array_2d.rb +0 -32
  105. data/samples/processing_app/basics/arrays/array_objects.rb +0 -62
  106. data/samples/processing_app/basics/camera/move_eye.rb +0 -24
  107. data/samples/processing_app/basics/camera/perspective.rb +0 -36
  108. data/samples/processing_app/basics/color/blend_color.rb +0 -17
  109. data/samples/processing_app/basics/color/brightness.rb +0 -24
  110. data/samples/processing_app/basics/color/color_wheel.rb +0 -90
  111. data/samples/processing_app/basics/color/creating.rb +0 -48
  112. data/samples/processing_app/basics/color/hue.rb +0 -23
  113. data/samples/processing_app/basics/color/linear_gradient.rb +0 -42
  114. data/samples/processing_app/basics/color/radial_gradient.rb +0 -44
  115. data/samples/processing_app/basics/color/reading/data/cait.jpg +0 -0
  116. data/samples/processing_app/basics/color/reading/reading.rb +0 -29
  117. data/samples/processing_app/basics/color/relativity.rb +0 -25
  118. data/samples/processing_app/basics/color/saturation.rb +0 -24
  119. data/samples/processing_app/basics/color/wave_gradient.rb +0 -34
  120. data/samples/processing_app/basics/control/conditionals1.rb +0 -27
  121. data/samples/processing_app/basics/control/conditionals2.rb +0 -39
  122. data/samples/processing_app/basics/control/embedded_iteration.rb +0 -34
  123. data/samples/processing_app/basics/control/iteration.rb +0 -50
  124. data/samples/processing_app/basics/control/logical_operators.rb +0 -56
  125. data/samples/processing_app/basics/data/characters_strings.rb +0 -50
  126. data/samples/processing_app/basics/data/datatype_conversion.rb +0 -41
  127. data/samples/processing_app/basics/data/integers_floats.rb +0 -28
  128. data/samples/processing_app/basics/data/true_false.rb +0 -31
  129. data/samples/processing_app/basics/data/variable_scope.rb +0 -74
  130. data/samples/processing_app/basics/data/variables.rb +0 -35
  131. data/samples/processing_app/basics/form/bezier.rb +0 -20
  132. data/samples/processing_app/basics/form/bezier_ellipse.rb +0 -99
  133. data/samples/processing_app/basics/form/brick_tower.rb +0 -89
  134. data/samples/processing_app/basics/form/cubic_grid.rb +0 -39
  135. data/samples/processing_app/basics/form/icosahedra.rb +0 -39
  136. data/samples/processing_app/basics/form/library/icosahedron/icosahedron.rb +0 -60
  137. data/samples/processing_app/basics/form/pie_chart.rb +0 -27
  138. data/samples/processing_app/basics/form/points_lines.rb +0 -32
  139. data/samples/processing_app/basics/form/primitives.rb +0 -28
  140. data/samples/processing_app/basics/form/regular_polygon.rb +0 -46
  141. data/samples/processing_app/basics/form/rgb_cube.rb +0 -68
  142. data/samples/processing_app/basics/form/shape_primitives.rb +0 -23
  143. data/samples/processing_app/basics/form/shape_transform.rb +0 -83
  144. data/samples/processing_app/basics/form/star.rb +0 -48
  145. data/samples/processing_app/basics/form/toroid.rb +0 -108
  146. data/samples/processing_app/basics/form/triangle_strip.rb +0 -39
  147. data/samples/processing_app/basics/form/vertices.rb +0 -47
  148. data/samples/processing_app/basics/image/alphamask.rb +0 -17
  149. data/samples/processing_app/basics/image/background_image.rb +0 -24
  150. data/samples/processing_app/basics/image/create_image.rb +0 -17
  151. data/samples/processing_app/basics/image/data/construct.jpg +0 -0
  152. data/samples/processing_app/basics/image/data/eames.jpg +0 -0
  153. data/samples/processing_app/basics/image/data/jelly.jpg +0 -0
  154. data/samples/processing_app/basics/image/data/mask.jpg +0 -0
  155. data/samples/processing_app/basics/image/data/milan_rubbish.jpg +0 -0
  156. data/samples/processing_app/basics/image/data/teddy.gif +0 -0
  157. data/samples/processing_app/basics/image/data/test.jpg +0 -0
  158. data/samples/processing_app/basics/image/data/wash.jpg +0 -0
  159. data/samples/processing_app/basics/image/data/ystone08.jpg +0 -0
  160. data/samples/processing_app/basics/image/extrusion.rb +0 -46
  161. data/samples/processing_app/basics/image/load_display_image.rb +0 -18
  162. data/samples/processing_app/basics/image/pointillism.rb +0 -24
  163. data/samples/processing_app/basics/image/request_image.rb +0 -62
  164. data/samples/processing_app/basics/image/sprite.rb +0 -32
  165. data/samples/processing_app/basics/image/transparency.rb +0 -21
  166. data/samples/processing_app/basics/image/zoom.rb +0 -59
  167. data/samples/processing_app/basics/input/clock.rb +0 -46
  168. data/samples/processing_app/basics/input/constrain.rb +0 -33
  169. data/samples/processing_app/basics/input/easing.rb +0 -31
  170. data/samples/processing_app/basics/input/keyboard.rb +0 -24
  171. data/samples/processing_app/basics/input/keyboard_functions.rb +0 -59
  172. data/samples/processing_app/basics/input/milliseconds.rb +0 -20
  173. data/samples/processing_app/basics/input/mouse_1d.rb +0 -27
  174. data/samples/processing_app/basics/input/mouse_2d.rb +0 -19
  175. data/samples/processing_app/basics/input/mouse_functions.rb +0 -68
  176. data/samples/processing_app/basics/input/mouse_press.rb +0 -15
  177. data/samples/processing_app/basics/input/mouse_signals.rb +0 -40
  178. data/samples/processing_app/basics/input/storing_input.rb +0 -38
  179. data/samples/processing_app/basics/lights/directional.rb +0 -37
  180. data/samples/processing_app/basics/lights/lights1.rb +0 -35
  181. data/samples/processing_app/basics/lights/lights2.rb +0 -38
  182. data/samples/processing_app/basics/lights/reflection.rb +0 -35
  183. data/samples/processing_app/basics/lights/spot.rb +0 -36
  184. data/samples/processing_app/basics/math/additive_wave.rb +0 -64
  185. data/samples/processing_app/basics/math/arctangent.rb +0 -44
  186. data/samples/processing_app/basics/math/distance1.rb +0 -53
  187. data/samples/processing_app/basics/math/distance2.rb +0 -22
  188. data/samples/processing_app/basics/math/double_random.rb +0 -31
  189. data/samples/processing_app/basics/math/graphing_2_d_equation.rb +0 -39
  190. data/samples/processing_app/basics/math/increment_decrement.rb +0 -54
  191. data/samples/processing_app/basics/math/interpolate.rb +0 -34
  192. data/samples/processing_app/basics/math/modulo.rb +0 -39
  193. data/samples/processing_app/basics/math/noise_1_d.rb +0 -21
  194. data/samples/processing_app/basics/math/noise_2_d.rb +0 -30
  195. data/samples/processing_app/basics/math/noise_3_d.rb +0 -30
  196. data/samples/processing_app/basics/math/noise_wave.rb +0 -41
  197. data/samples/processing_app/basics/math/operator_precedence.rb +0 -49
  198. data/samples/processing_app/basics/math/polar_to_cartesian.rb +0 -31
  199. data/samples/processing_app/basics/math/random.rb +0 -21
  200. data/samples/processing_app/basics/math/random_gaussian.rb +0 -23
  201. data/samples/processing_app/basics/math/sine.rb +0 -35
  202. data/samples/processing_app/basics/math/sine_cosine.rb +0 -48
  203. data/samples/processing_app/basics/math/sine_wave.rb +0 -43
  204. data/samples/processing_app/basics/objects/composite_objects.rb +0 -113
  205. data/samples/processing_app/basics/objects/inheritance.rb +0 -84
  206. data/samples/processing_app/basics/objects/inheritance_two.rb +0 -88
  207. data/samples/processing_app/basics/objects/module.rb +0 -89
  208. data/samples/processing_app/basics/objects/module_two.rb +0 -111
  209. data/samples/processing_app/basics/objects/multiple_constructors.rb +0 -58
  210. data/samples/processing_app/basics/objects/objects.rb +0 -57
  211. data/samples/processing_app/basics/objects/struct.rb +0 -38
  212. data/samples/processing_app/basics/shape/data/bot1.svg +0 -160
  213. data/samples/processing_app/basics/shape/data/rocket.mtl +0 -8
  214. data/samples/processing_app/basics/shape/data/rocket.obj +0 -1688
  215. data/samples/processing_app/basics/shape/data/rocket.png +0 -0
  216. data/samples/processing_app/basics/shape/data/usa-wikipedia.svg +0 -452
  217. data/samples/processing_app/basics/shape/disable_style.rb +0 -32
  218. data/samples/processing_app/basics/shape/get_child.rb +0 -40
  219. data/samples/processing_app/basics/shape/load_display_obj.rb +0 -25
  220. data/samples/processing_app/basics/shape/load_display_shape.rb +0 -20
  221. data/samples/processing_app/basics/shape/load_display_svg.rb +0 -22
  222. data/samples/processing_app/basics/shape/scale_shape.rb +0 -23
  223. data/samples/processing_app/basics/structure/coordinates.rb +0 -42
  224. data/samples/processing_app/basics/structure/create_graphics.rb +0 -29
  225. data/samples/processing_app/basics/structure/functions.rb +0 -29
  226. data/samples/processing_app/basics/structure/loop.rb +0 -30
  227. data/samples/processing_app/basics/structure/noloop.rb +0 -21
  228. data/samples/processing_app/basics/structure/recursion1.rb +0 -27
  229. data/samples/processing_app/basics/structure/recursion2.rb +0 -23
  230. data/samples/processing_app/basics/structure/redraw.rb +0 -25
  231. data/samples/processing_app/basics/structure/setup_draw.rb +0 -19
  232. data/samples/processing_app/basics/structure/statements_comments.rb +0 -26
  233. data/samples/processing_app/basics/structure/width_height.rb +0 -22
  234. data/samples/processing_app/basics/textures/data/berlin-1.jpg +0 -0
  235. data/samples/processing_app/basics/textures/texture1.rb +0 -28
  236. data/samples/processing_app/basics/textures/texture2.rb +0 -33
  237. data/samples/processing_app/basics/textures/texture3.rb +0 -44
  238. data/samples/processing_app/basics/textures/texture_cube.rb +0 -86
  239. data/samples/processing_app/basics/transform/arm.rb +0 -32
  240. data/samples/processing_app/basics/transform/bird.rb +0 -57
  241. data/samples/processing_app/basics/transform/birds.rb +0 -29
  242. data/samples/processing_app/basics/transform/cubes_in_cube.rb +0 -102
  243. data/samples/processing_app/basics/transform/library/bird/bird.rb +0 -87
  244. data/samples/processing_app/basics/transform/library/cube/cube.rb +0 -55
  245. data/samples/processing_app/basics/transform/rotate.rb +0 -34
  246. data/samples/processing_app/basics/transform/rotate1.rb +0 -27
  247. data/samples/processing_app/basics/transform/rotate_push_pop.rb +0 -35
  248. data/samples/processing_app/basics/transform/rotate_x_y.rb +0 -36
  249. data/samples/processing_app/basics/transform/scale.rb +0 -29
  250. data/samples/processing_app/basics/transform/translate.rb +0 -27
  251. data/samples/processing_app/basics/transform/triangle_flower.rb +0 -52
  252. data/samples/processing_app/basics/typography/data/CourierNew36.vlw +0 -0
  253. data/samples/processing_app/basics/typography/data/Univers45.vlw +0 -0
  254. data/samples/processing_app/basics/typography/data/Ziggurat-HTF-Black-32.vlw +0 -0
  255. data/samples/processing_app/basics/typography/kinetic_type.rb +0 -76
  256. data/samples/processing_app/basics/typography/letters.rb +0 -34
  257. data/samples/processing_app/basics/typography/words.rb +0 -36
  258. data/samples/processing_app/basics/web/embedded_links.rb +0 -52
  259. data/samples/processing_app/basics/web/loading_images.rb +0 -15
  260. data/samples/processing_app/demos/graphics/bezier_patch.rb +0 -177
  261. data/samples/processing_app/demos/graphics/data/frag.glsl +0 -30
  262. data/samples/processing_app/demos/graphics/data/java_args.txt +0 -2
  263. data/samples/processing_app/demos/graphics/data/mercury.jpg +0 -0
  264. data/samples/processing_app/demos/graphics/data/planet.jpg +0 -0
  265. data/samples/processing_app/demos/graphics/data/starfield.jpg +0 -0
  266. data/samples/processing_app/demos/graphics/data/sun.jpg +0 -0
  267. data/samples/processing_app/demos/graphics/data/vert.glsl +0 -31
  268. data/samples/processing_app/demos/graphics/low_level_gl.rb +0 -72
  269. data/samples/processing_app/demos/graphics/planets.rb +0 -51
  270. data/samples/processing_app/demos/graphics/trefoil.rb +0 -152
  271. data/samples/processing_app/demos/graphics/wiggling.rb +0 -287
  272. data/samples/processing_app/demos/performance/cubic_grid_retained.rb +0 -58
  273. data/samples/processing_app/demos/performance/data/java_args.txt +0 -1
  274. data/samples/processing_app/demos/performance/esfera.rb +0 -93
  275. data/samples/processing_app/demos/performance/text_rendering.rb +0 -14
  276. data/samples/processing_app/demos/tests/no_background_test.rb +0 -10
  277. data/samples/processing_app/demos/tests/offscreen_test.rb +0 -34
  278. data/samples/processing_app/demos/tests/redraw_test.rb +0 -14
  279. data/samples/processing_app/demos/tests/resize_test.rb +0 -10
  280. data/samples/processing_app/demos/tests/restart_test.rb +0 -22
  281. data/samples/processing_app/demos/tests/smooth_test.rb +0 -27
  282. data/samples/processing_app/demos/tests/specs_test.rb +0 -11
  283. data/samples/processing_app/library/dxf/simple_export.rb +0 -48
  284. data/samples/processing_app/library/fastmath/clock.rb +0 -46
  285. data/samples/processing_app/library/file_chooser/image_viewer.rb +0 -23
  286. data/samples/processing_app/library/minim/filter_example.rb +0 -65
  287. data/samples/processing_app/library/minim/frequency_modulation.rb +0 -64
  288. data/samples/processing_app/library/minim/sequence_sound.rb +0 -59
  289. data/samples/processing_app/library/minim/synthesize_sound.rb +0 -35
  290. data/samples/processing_app/library/movie/README +0 -1
  291. data/samples/processing_app/library/movie/data/transit.mkv +0 -0
  292. data/samples/processing_app/library/movie/data/transit.mov +0 -0
  293. data/samples/processing_app/library/movie/loop.rb +0 -24
  294. data/samples/processing_app/library/movie/pixelate.rb +0 -50
  295. data/samples/processing_app/library/movie/reverse.rb +0 -47
  296. data/samples/processing_app/library/movie/scratch.rb +0 -36
  297. data/samples/processing_app/library/movie/speed.rb +0 -33
  298. data/samples/processing_app/library/net/HTTPClient.rb +0 -33
  299. data/samples/processing_app/library/pdf/complex_3D.rb +0 -162
  300. data/samples/processing_app/library/pdf/large_page.rb +0 -25
  301. data/samples/processing_app/library/pdf/many_frames.rb +0 -33
  302. data/samples/processing_app/library/pdf/many_pages.rb +0 -31
  303. data/samples/processing_app/library/pdf/many_pdfs.rb +0 -37
  304. data/samples/processing_app/library/pdf/one_frame.rb +0 -19
  305. data/samples/processing_app/library/vecmath/arcball/Rakefile +0 -30
  306. data/samples/processing_app/library/vecmath/arcball/arcball_box.rb +0 -23
  307. data/samples/processing_app/library/vecmath/arcball/arcball_radius.rb +0 -23
  308. data/samples/processing_app/library/vecmath/arcball/arcball_shape.rb +0 -29
  309. data/samples/processing_app/library/vecmath/vec2d/README.txt +0 -2
  310. data/samples/processing_app/library/vecmath/vec2d/Rakefile +0 -30
  311. data/samples/processing_app/library/vecmath/vec2d/acceleration_with_vectors.rb +0 -74
  312. data/samples/processing_app/library/vecmath/vec2d/bouncing_ball.rb +0 -45
  313. data/samples/processing_app/library/vecmath/vec2d/circle_collision.rb +0 -169
  314. data/samples/processing_app/library/vecmath/vec2d/data/java_args.txt +0 -2
  315. data/samples/processing_app/library/vecmath/vec2d/data/sprite.png +0 -0
  316. data/samples/processing_app/library/vecmath/vec2d/data/texture.png +0 -0
  317. data/samples/processing_app/library/vecmath/vec2d/flocking.rb +0 -30
  318. data/samples/processing_app/library/vecmath/vec2d/library/flock/flock.rb +0 -191
  319. data/samples/processing_app/library/vecmath/vec2d/library/particle/particle.rb +0 -113
  320. data/samples/processing_app/library/vecmath/vec2d/library/tile/tile.rb +0 -85
  321. data/samples/processing_app/library/vecmath/vec2d/morph.rb +0 -87
  322. data/samples/processing_app/library/vecmath/vec2d/particle_system_pshape.rb +0 -36
  323. data/samples/processing_app/library/vecmath/vec2d/penrose.rb +0 -71
  324. data/samples/processing_app/library/vecmath/vec2d/reflection1.rb +0 -108
  325. data/samples/processing_app/library/vecmath/vec2d/seeking_neural.rb +0 -169
  326. data/samples/processing_app/library/vecmath/vec2d/simple_particle_system.rb +0 -85
  327. data/samples/processing_app/library/vecmath/vec2d/vector_math.rb +0 -39
  328. data/samples/processing_app/library/vecmath/vec2d/wiggle_pshape.rb +0 -74
  329. data/samples/processing_app/library/vecmath/vec3d/Rakefile +0 -30
  330. data/samples/processing_app/library/vecmath/vec3d/drawolver.rb +0 -86
  331. data/samples/processing_app/library/vecmath/vec3d/frame_of_reference.rb +0 -103
  332. data/samples/processing_app/library/vecmath/vec3d/hilbert_fractal.rb +0 -37
  333. data/samples/processing_app/library/vecmath/vec3d/library/geometry/geometry.rb +0 -3
  334. data/samples/processing_app/library/vecmath/vec3d/library/geometry/lib/cylinder.rb +0 -44
  335. data/samples/processing_app/library/vecmath/vec3d/library/geometry/lib/mat4.rb +0 -28
  336. data/samples/processing_app/library/vecmath/vec3d/library/geometry/lib/plane.rb +0 -60
  337. data/samples/processing_app/library/vecmath/vec3d/library/hilbert/hilbert.rb +0 -84
  338. data/samples/processing_app/library/vecmath/vec3d/note.txt +0 -1
  339. data/samples/processing_app/library/vecmath/vec3d/retained_menger.rb +0 -115
  340. data/samples/processing_app/topics/advanced_data/README +0 -1
  341. data/samples/processing_app/topics/advanced_data/Rakefile +0 -30
  342. data/samples/processing_app/topics/advanced_data/counting_words.rb +0 -79
  343. data/samples/processing_app/topics/advanced_data/data/Georgia.ttf +0 -0
  344. data/samples/processing_app/topics/advanced_data/data/Merriweather-Light.ttf +0 -0
  345. data/samples/processing_app/topics/advanced_data/data/a000 copy.jpg +0 -0
  346. data/samples/processing_app/topics/advanced_data/data/a001 copy.jpg +0 -0
  347. data/samples/processing_app/topics/advanced_data/data/a002 copy.jpg +0 -0
  348. data/samples/processing_app/topics/advanced_data/data/a003 copy.jpg +0 -0
  349. data/samples/processing_app/topics/advanced_data/data/a004 copy.jpg +0 -0
  350. data/samples/processing_app/topics/advanced_data/data/a005 copy.jpg +0 -0
  351. data/samples/processing_app/topics/advanced_data/data/a006 copy.jpg +0 -0
  352. data/samples/processing_app/topics/advanced_data/data/a007 copy.jpg +0 -0
  353. data/samples/processing_app/topics/advanced_data/data/a008 copy.jpg +0 -0
  354. data/samples/processing_app/topics/advanced_data/data/a009 copy.jpg +0 -0
  355. data/samples/processing_app/topics/advanced_data/data/a010 copy.jpg +0 -0
  356. data/samples/processing_app/topics/advanced_data/data/a011 copy.jpg +0 -0
  357. data/samples/processing_app/topics/advanced_data/data/a012 copy.jpg +0 -0
  358. data/samples/processing_app/topics/advanced_data/data/a013 copy.jpg +0 -0
  359. data/samples/processing_app/topics/advanced_data/data/a014 copy.jpg +0 -0
  360. data/samples/processing_app/topics/advanced_data/data/a015 copy.jpg +0 -0
  361. data/samples/processing_app/topics/advanced_data/data/a016 copy.jpg +0 -0
  362. data/samples/processing_app/topics/advanced_data/data/a017 copy.jpg +0 -0
  363. data/samples/processing_app/topics/advanced_data/data/a018 copy.jpg +0 -0
  364. data/samples/processing_app/topics/advanced_data/data/a019 copy.jpg +0 -0
  365. data/samples/processing_app/topics/advanced_data/data/a020 copy.jpg +0 -0
  366. data/samples/processing_app/topics/advanced_data/data/a021 copy.jpg +0 -0
  367. data/samples/processing_app/topics/advanced_data/data/a022 copy.jpg +0 -0
  368. data/samples/processing_app/topics/advanced_data/data/a023 copy.jpg +0 -0
  369. data/samples/processing_app/topics/advanced_data/data/a024 copy.jpg +0 -0
  370. data/samples/processing_app/topics/advanced_data/data/a025 copy.jpg +0 -0
  371. data/samples/processing_app/topics/advanced_data/data/a026 copy.jpg +0 -0
  372. data/samples/processing_app/topics/advanced_data/data/a027 copy.jpg +0 -0
  373. data/samples/processing_app/topics/advanced_data/data/a028 copy.jpg +0 -0
  374. data/samples/processing_app/topics/advanced_data/data/a029 copy.jpg +0 -0
  375. data/samples/processing_app/topics/advanced_data/data/a030 copy.jpg +0 -0
  376. data/samples/processing_app/topics/advanced_data/data/a031 copy.jpg +0 -0
  377. data/samples/processing_app/topics/advanced_data/data/a032 copy.jpg +0 -0
  378. data/samples/processing_app/topics/advanced_data/data/a033 copy.jpg +0 -0
  379. data/samples/processing_app/topics/advanced_data/data/a034 copy.jpg +0 -0
  380. data/samples/processing_app/topics/advanced_data/data/a035 copy.jpg +0 -0
  381. data/samples/processing_app/topics/advanced_data/data/a036 copy.jpg +0 -0
  382. data/samples/processing_app/topics/advanced_data/data/a037 copy.jpg +0 -0
  383. data/samples/processing_app/topics/advanced_data/data/a038 copy.jpg +0 -0
  384. data/samples/processing_app/topics/advanced_data/data/a039 copy.jpg +0 -0
  385. data/samples/processing_app/topics/advanced_data/data/a040 copy.jpg +0 -0
  386. data/samples/processing_app/topics/advanced_data/data/a041 copy.jpg +0 -0
  387. data/samples/processing_app/topics/advanced_data/data/a042 copy.jpg +0 -0
  388. data/samples/processing_app/topics/advanced_data/data/a043 copy.jpg +0 -0
  389. data/samples/processing_app/topics/advanced_data/data/a044 copy.jpg +0 -0
  390. data/samples/processing_app/topics/advanced_data/data/a045 copy.jpg +0 -0
  391. data/samples/processing_app/topics/advanced_data/data/a046 copy.jpg +0 -0
  392. data/samples/processing_app/topics/advanced_data/data/a047 copy.jpg +0 -0
  393. data/samples/processing_app/topics/advanced_data/data/a048 copy.jpg +0 -0
  394. data/samples/processing_app/topics/advanced_data/data/a049 copy.jpg +0 -0
  395. data/samples/processing_app/topics/advanced_data/data/a050 copy.jpg +0 -0
  396. data/samples/processing_app/topics/advanced_data/data/a051 copy.jpg +0 -0
  397. data/samples/processing_app/topics/advanced_data/data/a052 copy.jpg +0 -0
  398. data/samples/processing_app/topics/advanced_data/data/a053 copy.jpg +0 -0
  399. data/samples/processing_app/topics/advanced_data/data/a054 copy.jpg +0 -0
  400. data/samples/processing_app/topics/advanced_data/data/a055 copy.jpg +0 -0
  401. data/samples/processing_app/topics/advanced_data/data/a056 copy.jpg +0 -0
  402. data/samples/processing_app/topics/advanced_data/data/a057 copy.jpg +0 -0
  403. data/samples/processing_app/topics/advanced_data/data/a058 copy.jpg +0 -0
  404. data/samples/processing_app/topics/advanced_data/data/a059 copy.jpg +0 -0
  405. data/samples/processing_app/topics/advanced_data/data/a060 copy.jpg +0 -0
  406. data/samples/processing_app/topics/advanced_data/data/a061 copy.jpg +0 -0
  407. data/samples/processing_app/topics/advanced_data/data/a062 copy.jpg +0 -0
  408. data/samples/processing_app/topics/advanced_data/data/a063 copy.jpg +0 -0
  409. data/samples/processing_app/topics/advanced_data/data/a064 copy.jpg +0 -0
  410. data/samples/processing_app/topics/advanced_data/data/a065 copy.jpg +0 -0
  411. data/samples/processing_app/topics/advanced_data/data/a066 copy.jpg +0 -0
  412. data/samples/processing_app/topics/advanced_data/data/a067 copy.jpg +0 -0
  413. data/samples/processing_app/topics/advanced_data/data/a068 copy.jpg +0 -0
  414. data/samples/processing_app/topics/advanced_data/data/a069 copy.jpg +0 -0
  415. data/samples/processing_app/topics/advanced_data/data/a070 copy.jpg +0 -0
  416. data/samples/processing_app/topics/advanced_data/data/a071 copy.jpg +0 -0
  417. data/samples/processing_app/topics/advanced_data/data/a072 copy.jpg +0 -0
  418. data/samples/processing_app/topics/advanced_data/data/a073 copy.jpg +0 -0
  419. data/samples/processing_app/topics/advanced_data/data/a074 copy.jpg +0 -0
  420. data/samples/processing_app/topics/advanced_data/data/a075 copy.jpg +0 -0
  421. data/samples/processing_app/topics/advanced_data/data/a076 copy.jpg +0 -0
  422. data/samples/processing_app/topics/advanced_data/data/a077 copy.jpg +0 -0
  423. data/samples/processing_app/topics/advanced_data/data/a078 copy.jpg +0 -0
  424. data/samples/processing_app/topics/advanced_data/data/a079 copy.jpg +0 -0
  425. data/samples/processing_app/topics/advanced_data/data/a080 copy.jpg +0 -0
  426. data/samples/processing_app/topics/advanced_data/data/a081 copy.jpg +0 -0
  427. data/samples/processing_app/topics/advanced_data/data/a082 copy.jpg +0 -0
  428. data/samples/processing_app/topics/advanced_data/data/a083 copy.jpg +0 -0
  429. data/samples/processing_app/topics/advanced_data/data/a084 copy.jpg +0 -0
  430. data/samples/processing_app/topics/advanced_data/data/a085 copy.jpg +0 -0
  431. data/samples/processing_app/topics/advanced_data/data/a086 copy.jpg +0 -0
  432. data/samples/processing_app/topics/advanced_data/data/a087 copy.jpg +0 -0
  433. data/samples/processing_app/topics/advanced_data/data/a088 copy.jpg +0 -0
  434. data/samples/processing_app/topics/advanced_data/data/a089 copy.jpg +0 -0
  435. data/samples/processing_app/topics/advanced_data/data/a090 copy.jpg +0 -0
  436. data/samples/processing_app/topics/advanced_data/data/a091 copy.jpg +0 -0
  437. data/samples/processing_app/topics/advanced_data/data/a092 copy.jpg +0 -0
  438. data/samples/processing_app/topics/advanced_data/data/a093 copy.jpg +0 -0
  439. data/samples/processing_app/topics/advanced_data/data/a094 copy.jpg +0 -0
  440. data/samples/processing_app/topics/advanced_data/data/a095 copy.jpg +0 -0
  441. data/samples/processing_app/topics/advanced_data/data/a096 copy.jpg +0 -0
  442. data/samples/processing_app/topics/advanced_data/data/a097 copy.jpg +0 -0
  443. data/samples/processing_app/topics/advanced_data/data/a098 copy.jpg +0 -0
  444. data/samples/processing_app/topics/advanced_data/data/a099 copy.jpg +0 -0
  445. data/samples/processing_app/topics/advanced_data/data/a100 copy.jpg +0 -0
  446. data/samples/processing_app/topics/advanced_data/data/a101 copy.jpg +0 -0
  447. data/samples/processing_app/topics/advanced_data/data/a102 copy.jpg +0 -0
  448. data/samples/processing_app/topics/advanced_data/data/a103 copy.jpg +0 -0
  449. data/samples/processing_app/topics/advanced_data/data/a104 copy.jpg +0 -0
  450. data/samples/processing_app/topics/advanced_data/data/a105 copy.jpg +0 -0
  451. data/samples/processing_app/topics/advanced_data/data/a106 copy.jpg +0 -0
  452. data/samples/processing_app/topics/advanced_data/data/a107 copy.jpg +0 -0
  453. data/samples/processing_app/topics/advanced_data/data/a108 copy.jpg +0 -0
  454. data/samples/processing_app/topics/advanced_data/data/a109 copy.jpg +0 -0
  455. data/samples/processing_app/topics/advanced_data/data/a110 copy.jpg +0 -0
  456. data/samples/processing_app/topics/advanced_data/data/a111 copy.jpg +0 -0
  457. data/samples/processing_app/topics/advanced_data/data/a112 copy.jpg +0 -0
  458. data/samples/processing_app/topics/advanced_data/data/a113 copy.jpg +0 -0
  459. data/samples/processing_app/topics/advanced_data/data/a114 copy.jpg +0 -0
  460. data/samples/processing_app/topics/advanced_data/data/a115 copy.jpg +0 -0
  461. data/samples/processing_app/topics/advanced_data/data/data.csv +0 -5
  462. data/samples/processing_app/topics/advanced_data/data/data.json +0 -36
  463. data/samples/processing_app/topics/advanced_data/data/data.xml +0 -23
  464. data/samples/processing_app/topics/advanced_data/data/data.yml +0 -22
  465. data/samples/processing_app/topics/advanced_data/data/dracula.txt +0 -16624
  466. data/samples/processing_app/topics/advanced_data/data/frankenstein.txt +0 -7652
  467. data/samples/processing_app/topics/advanced_data/data/struct_data.yml +0 -27
  468. data/samples/processing_app/topics/advanced_data/library/bubble/bubble.rb +0 -45
  469. data/samples/processing_app/topics/advanced_data/library/word/word.rb +0 -64
  470. data/samples/processing_app/topics/advanced_data/load_save_XML.rb +0 -113
  471. data/samples/processing_app/topics/advanced_data/load_save_json.rb +0 -93
  472. data/samples/processing_app/topics/advanced_data/load_save_struct_yaml.rb +0 -84
  473. data/samples/processing_app/topics/advanced_data/load_save_table.rb +0 -85
  474. data/samples/processing_app/topics/advanced_data/load_save_yaml.rb +0 -87
  475. data/samples/processing_app/topics/advanced_data/regex.rb +0 -46
  476. data/samples/processing_app/topics/advanced_data/threads.rb +0 -96
  477. data/samples/processing_app/topics/advanced_data/threads_two.rb +0 -52
  478. data/samples/processing_app/topics/advanced_data/word_frequency.rb +0 -80
  479. data/samples/processing_app/topics/advanced_data/yahoo_weather.rb +0 -39
  480. data/samples/processing_app/topics/animation/README.txt +0 -1
  481. data/samples/processing_app/topics/animation/animated_sprite.rb +0 -57
  482. data/samples/processing_app/topics/animation/data/PT_Shifty_0000.gif +0 -0
  483. data/samples/processing_app/topics/animation/data/PT_Shifty_0001.gif +0 -0
  484. data/samples/processing_app/topics/animation/data/PT_Shifty_0002.gif +0 -0
  485. data/samples/processing_app/topics/animation/data/PT_Shifty_0003.gif +0 -0
  486. data/samples/processing_app/topics/animation/data/PT_Shifty_0004.gif +0 -0
  487. data/samples/processing_app/topics/animation/data/PT_Shifty_0005.gif +0 -0
  488. data/samples/processing_app/topics/animation/data/PT_Shifty_0006.gif +0 -0
  489. data/samples/processing_app/topics/animation/data/PT_Shifty_0007.gif +0 -0
  490. data/samples/processing_app/topics/animation/data/PT_Shifty_0008.gif +0 -0
  491. data/samples/processing_app/topics/animation/data/PT_Shifty_0009.gif +0 -0
  492. data/samples/processing_app/topics/animation/data/PT_Shifty_0010.gif +0 -0
  493. data/samples/processing_app/topics/animation/data/PT_Shifty_0011.gif +0 -0
  494. data/samples/processing_app/topics/animation/data/PT_Shifty_0012.gif +0 -0
  495. data/samples/processing_app/topics/animation/data/PT_Shifty_0013.gif +0 -0
  496. data/samples/processing_app/topics/animation/data/PT_Shifty_0014.gif +0 -0
  497. data/samples/processing_app/topics/animation/data/PT_Shifty_0015.gif +0 -0
  498. data/samples/processing_app/topics/animation/data/PT_Shifty_0016.gif +0 -0
  499. data/samples/processing_app/topics/animation/data/PT_Shifty_0017.gif +0 -0
  500. data/samples/processing_app/topics/animation/data/PT_Shifty_0018.gif +0 -0
  501. data/samples/processing_app/topics/animation/data/PT_Shifty_0019.gif +0 -0
  502. data/samples/processing_app/topics/animation/data/PT_Shifty_0020.gif +0 -0
  503. data/samples/processing_app/topics/animation/data/PT_Shifty_0021.gif +0 -0
  504. data/samples/processing_app/topics/animation/data/PT_Shifty_0022.gif +0 -0
  505. data/samples/processing_app/topics/animation/data/PT_Shifty_0023.gif +0 -0
  506. data/samples/processing_app/topics/animation/data/PT_Shifty_0024.gif +0 -0
  507. data/samples/processing_app/topics/animation/data/PT_Shifty_0025.gif +0 -0
  508. data/samples/processing_app/topics/animation/data/PT_Shifty_0026.gif +0 -0
  509. data/samples/processing_app/topics/animation/data/PT_Shifty_0027.gif +0 -0
  510. data/samples/processing_app/topics/animation/data/PT_Shifty_0028.gif +0 -0
  511. data/samples/processing_app/topics/animation/data/PT_Shifty_0029.gif +0 -0
  512. data/samples/processing_app/topics/animation/data/PT_Shifty_0030.gif +0 -0
  513. data/samples/processing_app/topics/animation/data/PT_Shifty_0031.gif +0 -0
  514. data/samples/processing_app/topics/animation/data/PT_Shifty_0032.gif +0 -0
  515. data/samples/processing_app/topics/animation/data/PT_Shifty_0033.gif +0 -0
  516. data/samples/processing_app/topics/animation/data/PT_Shifty_0034.gif +0 -0
  517. data/samples/processing_app/topics/animation/data/PT_Shifty_0035.gif +0 -0
  518. data/samples/processing_app/topics/animation/data/PT_Shifty_0036.gif +0 -0
  519. data/samples/processing_app/topics/animation/data/PT_Shifty_0037.gif +0 -0
  520. data/samples/processing_app/topics/animation/data/PT_Teddy_0000.gif +0 -0
  521. data/samples/processing_app/topics/animation/data/PT_Teddy_0001.gif +0 -0
  522. data/samples/processing_app/topics/animation/data/PT_Teddy_0002.gif +0 -0
  523. data/samples/processing_app/topics/animation/data/PT_Teddy_0003.gif +0 -0
  524. data/samples/processing_app/topics/animation/data/PT_Teddy_0004.gif +0 -0
  525. data/samples/processing_app/topics/animation/data/PT_Teddy_0005.gif +0 -0
  526. data/samples/processing_app/topics/animation/data/PT_Teddy_0006.gif +0 -0
  527. data/samples/processing_app/topics/animation/data/PT_Teddy_0007.gif +0 -0
  528. data/samples/processing_app/topics/animation/data/PT_Teddy_0008.gif +0 -0
  529. data/samples/processing_app/topics/animation/data/PT_Teddy_0009.gif +0 -0
  530. data/samples/processing_app/topics/animation/data/PT_Teddy_0010.gif +0 -0
  531. data/samples/processing_app/topics/animation/data/PT_Teddy_0011.gif +0 -0
  532. data/samples/processing_app/topics/animation/data/PT_Teddy_0012.gif +0 -0
  533. data/samples/processing_app/topics/animation/data/PT_Teddy_0013.gif +0 -0
  534. data/samples/processing_app/topics/animation/data/PT_Teddy_0014.gif +0 -0
  535. data/samples/processing_app/topics/animation/data/PT_Teddy_0015.gif +0 -0
  536. data/samples/processing_app/topics/animation/data/PT_Teddy_0016.gif +0 -0
  537. data/samples/processing_app/topics/animation/data/PT_Teddy_0017.gif +0 -0
  538. data/samples/processing_app/topics/animation/data/PT_Teddy_0018.gif +0 -0
  539. data/samples/processing_app/topics/animation/data/PT_Teddy_0019.gif +0 -0
  540. data/samples/processing_app/topics/animation/data/PT_Teddy_0020.gif +0 -0
  541. data/samples/processing_app/topics/animation/data/PT_Teddy_0021.gif +0 -0
  542. data/samples/processing_app/topics/animation/data/PT_Teddy_0022.gif +0 -0
  543. data/samples/processing_app/topics/animation/data/PT_Teddy_0023.gif +0 -0
  544. data/samples/processing_app/topics/animation/data/PT_Teddy_0024.gif +0 -0
  545. data/samples/processing_app/topics/animation/data/PT_Teddy_0025.gif +0 -0
  546. data/samples/processing_app/topics/animation/data/PT_Teddy_0026.gif +0 -0
  547. data/samples/processing_app/topics/animation/data/PT_Teddy_0027.gif +0 -0
  548. data/samples/processing_app/topics/animation/data/PT_Teddy_0028.gif +0 -0
  549. data/samples/processing_app/topics/animation/data/PT_Teddy_0029.gif +0 -0
  550. data/samples/processing_app/topics/animation/data/PT_Teddy_0030.gif +0 -0
  551. data/samples/processing_app/topics/animation/data/PT_Teddy_0031.gif +0 -0
  552. data/samples/processing_app/topics/animation/data/PT_Teddy_0032.gif +0 -0
  553. data/samples/processing_app/topics/animation/data/PT_Teddy_0033.gif +0 -0
  554. data/samples/processing_app/topics/animation/data/PT_Teddy_0034.gif +0 -0
  555. data/samples/processing_app/topics/animation/data/PT_Teddy_0035.gif +0 -0
  556. data/samples/processing_app/topics/animation/data/PT_Teddy_0036.gif +0 -0
  557. data/samples/processing_app/topics/animation/data/PT_Teddy_0037.gif +0 -0
  558. data/samples/processing_app/topics/animation/data/PT_Teddy_0038.gif +0 -0
  559. data/samples/processing_app/topics/animation/data/PT_Teddy_0039.gif +0 -0
  560. data/samples/processing_app/topics/animation/data/PT_Teddy_0040.gif +0 -0
  561. data/samples/processing_app/topics/animation/data/PT_Teddy_0041.gif +0 -0
  562. data/samples/processing_app/topics/animation/data/PT_Teddy_0042.gif +0 -0
  563. data/samples/processing_app/topics/animation/data/PT_Teddy_0043.gif +0 -0
  564. data/samples/processing_app/topics/animation/data/PT_Teddy_0044.gif +0 -0
  565. data/samples/processing_app/topics/animation/data/PT_Teddy_0045.gif +0 -0
  566. data/samples/processing_app/topics/animation/data/PT_Teddy_0046.gif +0 -0
  567. data/samples/processing_app/topics/animation/data/PT_Teddy_0047.gif +0 -0
  568. data/samples/processing_app/topics/animation/data/PT_Teddy_0048.gif +0 -0
  569. data/samples/processing_app/topics/animation/data/PT_Teddy_0049.gif +0 -0
  570. data/samples/processing_app/topics/animation/data/PT_Teddy_0050.gif +0 -0
  571. data/samples/processing_app/topics/animation/data/PT_Teddy_0051.gif +0 -0
  572. data/samples/processing_app/topics/animation/data/PT_Teddy_0052.gif +0 -0
  573. data/samples/processing_app/topics/animation/data/PT_Teddy_0053.gif +0 -0
  574. data/samples/processing_app/topics/animation/data/PT_Teddy_0054.gif +0 -0
  575. data/samples/processing_app/topics/animation/data/PT_Teddy_0055.gif +0 -0
  576. data/samples/processing_app/topics/animation/data/PT_Teddy_0056.gif +0 -0
  577. data/samples/processing_app/topics/animation/data/PT_Teddy_0057.gif +0 -0
  578. data/samples/processing_app/topics/animation/data/PT_Teddy_0058.gif +0 -0
  579. data/samples/processing_app/topics/animation/data/PT_Teddy_0059.gif +0 -0
  580. data/samples/processing_app/topics/animation/data/PT_anim0000.gif +0 -0
  581. data/samples/processing_app/topics/animation/data/PT_anim0001.gif +0 -0
  582. data/samples/processing_app/topics/animation/data/PT_anim0002.gif +0 -0
  583. data/samples/processing_app/topics/animation/data/PT_anim0003.gif +0 -0
  584. data/samples/processing_app/topics/animation/data/PT_anim0004.gif +0 -0
  585. data/samples/processing_app/topics/animation/data/PT_anim0005.gif +0 -0
  586. data/samples/processing_app/topics/animation/data/PT_anim0006.gif +0 -0
  587. data/samples/processing_app/topics/animation/data/PT_anim0007.gif +0 -0
  588. data/samples/processing_app/topics/animation/data/PT_anim0008.gif +0 -0
  589. data/samples/processing_app/topics/animation/data/PT_anim0009.gif +0 -0
  590. data/samples/processing_app/topics/animation/data/PT_anim0010.gif +0 -0
  591. data/samples/processing_app/topics/animation/data/PT_anim0011.gif +0 -0
  592. data/samples/processing_app/topics/animation/sequential.rb +0 -41
  593. data/samples/processing_app/topics/cellular_automata/game_of_life.rb +0 -125
  594. data/samples/processing_app/topics/cellular_automata/library/ca/ca.rb +0 -91
  595. data/samples/processing_app/topics/cellular_automata/library/cell/cell.rb +0 -99
  596. data/samples/processing_app/topics/cellular_automata/library/simple_cell/simple_cell.rb +0 -46
  597. data/samples/processing_app/topics/cellular_automata/spore1.rb +0 -94
  598. data/samples/processing_app/topics/cellular_automata/spore2.rb +0 -101
  599. data/samples/processing_app/topics/cellular_automata/wolfram.rb +0 -42
  600. data/samples/processing_app/topics/create_shapes/begin_end_contour.rb +0 -44
  601. data/samples/processing_app/topics/create_shapes/data/sprite.png +0 -0
  602. data/samples/processing_app/topics/create_shapes/group_pshape.rb +0 -69
  603. data/samples/processing_app/topics/create_shapes/library/particle/particle_system.rb +0 -107
  604. data/samples/processing_app/topics/create_shapes/library/polygon/polygon.rb +0 -35
  605. data/samples/processing_app/topics/create_shapes/library/star/star.rb +0 -47
  606. data/samples/processing_app/topics/create_shapes/library/wiggler/wiggler.rb +0 -57
  607. data/samples/processing_app/topics/create_shapes/particle_system_pshape.rb +0 -38
  608. data/samples/processing_app/topics/create_shapes/path_pshape.rb +0 -38
  609. data/samples/processing_app/topics/create_shapes/polygon_pshape_oo3.rb +0 -56
  610. data/samples/processing_app/topics/create_shapes/polygon_pshape_oop.rb +0 -29
  611. data/samples/processing_app/topics/create_shapes/polygon_pshape_oop2.rb +0 -52
  612. data/samples/processing_app/topics/create_shapes/polygon_shape.rb +0 -42
  613. data/samples/processing_app/topics/create_shapes/primitive_pshape.rb +0 -29
  614. data/samples/processing_app/topics/create_shapes/wiggle_pshape.rb +0 -23
  615. data/samples/processing_app/topics/drawing/continuous_lines.rb +0 -17
  616. data/samples/processing_app/topics/drawing/pattern.rb +0 -30
  617. data/samples/processing_app/topics/drawing/pulses.rb +0 -33
  618. data/samples/processing_app/topics/drawing/scribble_plotter.rb +0 -77
  619. data/samples/processing_app/topics/effects/data/red_smoke.jpg +0 -0
  620. data/samples/processing_app/topics/effects/lens.rb +0 -94
  621. data/samples/processing_app/topics/file_io/data/positions.txt +0 -206
  622. data/samples/processing_app/topics/file_io/load_file1.rb +0 -32
  623. data/samples/processing_app/topics/file_io/save_frames.rb +0 -70
  624. data/samples/processing_app/topics/file_io/save_one_image.rb +0 -22
  625. data/samples/processing_app/topics/file_io/tile_images.rb +0 -37
  626. data/samples/processing_app/topics/gui/button.rb +0 -74
  627. data/samples/processing_app/topics/gui/data/seedBottom.jpg +0 -0
  628. data/samples/processing_app/topics/gui/data/seedTop.jpg +0 -0
  629. data/samples/processing_app/topics/gui/handles.rb +0 -108
  630. data/samples/processing_app/topics/gui/rollover.rb +0 -63
  631. data/samples/processing_app/topics/gui/scrollbar.rb +0 -91
  632. data/samples/processing_app/topics/image_processing/blending.rb +0 -82
  633. data/samples/processing_app/topics/image_processing/blur.rb +0 -50
  634. data/samples/processing_app/topics/image_processing/brightness.rb +0 -39
  635. data/samples/processing_app/topics/image_processing/convolution.rb +0 -72
  636. data/samples/processing_app/topics/image_processing/data/eames.jpg +0 -0
  637. data/samples/processing_app/topics/image_processing/data/frontier.jpg +0 -0
  638. data/samples/processing_app/topics/image_processing/data/java_args.txt +0 -3
  639. data/samples/processing_app/topics/image_processing/data/layer1.jpg +0 -0
  640. data/samples/processing_app/topics/image_processing/data/layer2.jpg +0 -0
  641. data/samples/processing_app/topics/image_processing/data/moon-wide.jpg +0 -0
  642. data/samples/processing_app/topics/image_processing/data/moon.jpg +0 -0
  643. data/samples/processing_app/topics/image_processing/data/sea.jpg +0 -0
  644. data/samples/processing_app/topics/image_processing/data/ystone08.jpg +0 -0
  645. data/samples/processing_app/topics/image_processing/edge_detection.rb +0 -47
  646. data/samples/processing_app/topics/image_processing/explode.rb +0 -35
  647. data/samples/processing_app/topics/image_processing/extrusion.rb +0 -49
  648. data/samples/processing_app/topics/image_processing/histogram.rb +0 -43
  649. data/samples/processing_app/topics/image_processing/linear_image.rb +0 -45
  650. data/samples/processing_app/topics/image_processing/pixel_array.rb +0 -48
  651. data/samples/processing_app/topics/image_processing/zoom.rb +0 -66
  652. data/samples/processing_app/topics/lsystems/Rakefile +0 -30
  653. data/samples/processing_app/topics/lsystems/chequer.rb +0 -66
  654. data/samples/processing_app/topics/lsystems/csplant.rb +0 -100
  655. data/samples/processing_app/topics/lsystems/cstest.rb +0 -25
  656. data/samples/processing_app/topics/lsystems/data/java_args.txt +0 -3
  657. data/samples/processing_app/topics/lsystems/david_tour.rb +0 -75
  658. data/samples/processing_app/topics/lsystems/koch.rb +0 -19
  659. data/samples/processing_app/topics/lsystems/library/cs_grammar/cs_grammar.rb +0 -82
  660. data/samples/processing_app/topics/lsystems/library/grammar/grammar.rb +0 -31
  661. data/samples/processing_app/topics/lsystems/library/koch/koch_fractal.rb +0 -99
  662. data/samples/processing_app/topics/lsystems/library/stochastic_grammar/stochastic_grammar.rb +0 -56
  663. data/samples/processing_app/topics/lsystems/mpeano.rb +0 -80
  664. data/samples/processing_app/topics/lsystems/peano.rb +0 -76
  665. data/samples/processing_app/topics/lsystems/penrose.rb +0 -117
  666. data/samples/processing_app/topics/lsystems/penrose_snowflake.rb +0 -88
  667. data/samples/processing_app/topics/lsystems/pentagonal.rb +0 -100
  668. data/samples/processing_app/topics/lsystems/snake_kolam.rb +0 -93
  669. data/samples/processing_app/topics/lsystems/stochastic_test.rb +0 -96
  670. data/samples/processing_app/topics/lsystems/three_d_tree.rb +0 -109
  671. data/samples/processing_app/topics/motion/Rakefile +0 -30
  672. data/samples/processing_app/topics/motion/bounce.rb +0 -40
  673. data/samples/processing_app/topics/motion/bouncy_bubbles.rb +0 -96
  674. data/samples/processing_app/topics/motion/brownian.rb +0 -40
  675. data/samples/processing_app/topics/motion/circle_collision.rb +0 -142
  676. data/samples/processing_app/topics/motion/cubes_in_cube.rb +0 -62
  677. data/samples/processing_app/topics/motion/data/java_args.txt +0 -3
  678. data/samples/processing_app/topics/motion/library/cube/cube.rb +0 -128
  679. data/samples/processing_app/topics/motion/library/ground/ground.rb +0 -42
  680. data/samples/processing_app/topics/motion/linear.rb +0 -25
  681. data/samples/processing_app/topics/motion/morph.rb +0 -84
  682. data/samples/processing_app/topics/motion/moving_on_curves.rb +0 -46
  683. data/samples/processing_app/topics/motion/puff.rb +0 -78
  684. data/samples/processing_app/topics/motion/reflection1.rb +0 -108
  685. data/samples/processing_app/topics/motion/reflection2.rb +0 -122
  686. data/samples/processing_app/topics/ruby_hook/hooky.rb +0 -26
  687. data/samples/processing_app/topics/ruby_hook/subclass.rb +0 -75
  688. data/samples/processing_app/topics/shaders/README +0 -1
  689. data/samples/processing_app/topics/shaders/Rakefile +0 -30
  690. data/samples/processing_app/topics/shaders/blur_filter.rb +0 -25
  691. data/samples/processing_app/topics/shaders/bw_shader.rb +0 -40
  692. data/samples/processing_app/topics/shaders/conway.rb +0 -26
  693. data/samples/processing_app/topics/shaders/data/FishEye.glsl +0 -59
  694. data/samples/processing_app/topics/shaders/data/GlossyFrag.glsl +0 -44
  695. data/samples/processing_app/topics/shaders/data/GlossyVert.glsl +0 -33
  696. data/samples/processing_app/topics/shaders/data/Texture01.jpg +0 -0
  697. data/samples/processing_app/topics/shaders/data/Texture02.jpg +0 -0
  698. data/samples/processing_app/topics/shaders/data/ToonFrag.glsl +0 -25
  699. data/samples/processing_app/topics/shaders/data/ToonVert.glsl +0 -31
  700. data/samples/processing_app/topics/shaders/data/blur.glsl +0 -42
  701. data/samples/processing_app/topics/shaders/data/bwfrag.glsl +0 -23
  702. data/samples/processing_app/topics/shaders/data/conway.glsl +0 -57
  703. data/samples/processing_app/topics/shaders/data/cubemapfrag.glsl +0 -1
  704. data/samples/processing_app/topics/shaders/data/cubemapvert.glsl +0 -1
  705. data/samples/processing_app/topics/shaders/data/deform.glsl +0 -31
  706. data/samples/processing_app/topics/shaders/data/displaceFrag.glsl +0 -8
  707. data/samples/processing_app/topics/shaders/data/displaceVert.glsl +0 -201
  708. data/samples/processing_app/topics/shaders/data/edges.glsl +0 -40
  709. data/samples/processing_app/topics/shaders/data/java_args.txt +0 -2
  710. data/samples/processing_app/topics/shaders/data/lachoy.jpg +0 -0
  711. data/samples/processing_app/topics/shaders/data/landscape.glsl +0 -352
  712. data/samples/processing_app/topics/shaders/data/leaves.jpg +0 -0
  713. data/samples/processing_app/topics/shaders/data/mask.glsl +0 -19
  714. data/samples/processing_app/topics/shaders/data/monjori.glsl +0 -30
  715. data/samples/processing_app/topics/shaders/data/nebula.glsl +0 -111
  716. data/samples/processing_app/topics/shaders/data/sep_blur.glsl +0 -59
  717. data/samples/processing_app/topics/shaders/data/tex1.jpg +0 -0
  718. data/samples/processing_app/topics/shaders/deform.rb +0 -28
  719. data/samples/processing_app/topics/shaders/edge_detect.rb +0 -28
  720. data/samples/processing_app/topics/shaders/glossy_fish_eye.rb +0 -57
  721. data/samples/processing_app/topics/shaders/glsl_heightmap_noise.rb +0 -125
  722. data/samples/processing_app/topics/shaders/image_mask.rb +0 -31
  723. data/samples/processing_app/topics/shaders/landscape.rb +0 -32
  724. data/samples/processing_app/topics/shaders/monjori.rb +0 -28
  725. data/samples/processing_app/topics/shaders/nebula.rb +0 -18
  726. data/samples/processing_app/topics/shaders/sep_blur.rb +0 -64
  727. data/samples/processing_app/topics/shaders/toon_shading.rb +0 -43
  728. data/samples/processing_app/topics/simulate/README +0 -1
  729. data/samples/processing_app/topics/simulate/chain.rb +0 -80
  730. data/samples/processing_app/topics/simulate/data/java_args.txt +0 -2
  731. data/samples/processing_app/topics/simulate/data/texture.gif +0 -0
  732. data/samples/processing_app/topics/simulate/data/texture.png +0 -0
  733. data/samples/processing_app/topics/simulate/flocking.rb +0 -32
  734. data/samples/processing_app/topics/simulate/library/flock/flock.rb +0 -203
  735. data/samples/processing_app/topics/simulate/multiple_particle_systems.rb +0 -133
  736. data/samples/processing_app/topics/simulate/simple_particle_system.rb +0 -78
  737. data/samples/processing_app/topics/simulate/smoke_particle_system.rb +0 -125
  738. data/samples/processing_app/topics/simulate/spring.rb +0 -80
  739. data/samples/processing_app/topics/simulate/springs.rb +0 -120
  740. data/samples/processing_app/topics/vectors/acceleration_with_vectors.rb +0 -78
  741. data/samples/processing_app/topics/vectors/bouncing_ball.rb +0 -50
  742. data/samples/processing_app/topics/vectors/vector_math.rb +0 -39
@@ -1,23 +0,0 @@
1
- #
2
- # Random Gaussian.
3
- #
4
- # This sketch draws ellipses with x and y locations tied to a gaussian distribution of random numbers.
5
- #
6
-
7
- def setup
8
- size(640, 360)
9
- background(0)
10
- end
11
-
12
- def draw
13
- # Get a gaussian random number w/ mean of 0 and standard deviation of 1.0
14
- val = random_gaussian
15
- sd = 60 # Define a standard deviation
16
- mean = width/2 # Define a mean value (middle of the screen along the x-axis)
17
- x = (val * sd) + mean # Scale the gaussian random number by standard deviation and mean
18
- fill(200, 20)
19
- no_stroke
20
- ellipse(x, height/2, 32, 32) # Draw an ellipse at our "normal" random location
21
- end
22
-
23
-
@@ -1,35 +0,0 @@
1
- # Sine.
2
- #
3
- # Smoothly scaling size with the sin() function.
4
-
5
-
6
- def setup
7
- size 640, 360
8
- no_stroke
9
- @diameter = 84.0
10
- @sin = 0.0
11
- @angle = 0.0
12
- @rad_points = 90
13
-
14
- end
15
-
16
- def draw
17
- background 153
18
- translate width / 2, height / 2
19
- fill 255
20
- ellipse 0, 0, 16, 16
21
- angle_rot = 0.0
22
- fill 51
23
- (0...5).each { |i|
24
-
25
- push_matrix
26
- rotate angle_rot - 45
27
- ellipse(-116, 0, @diameter, @diameter)
28
- pop_matrix
29
- angle_rot += TAU/5
30
- }
31
- @diameter = 34 * sin( @angle ) + 168
32
- @angle += 0.02
33
- #@angle = 0.0 if @angle > TAU
34
- end
35
-
@@ -1,48 +0,0 @@
1
- #
2
- # Sine Cosine.
3
- #
4
- # Linear movement with sin() and cos().
5
- # Numbers between 0 and PI*2 (TAU which angles roughly 6.28)
6
- # are put into these functions and numbers between -1 and 1 are
7
- # returned. These values are then scaled to produce larger movements.
8
- # note only angle1 angle2 need scope outside draw loop
9
- #
10
-
11
- attr_reader :angle1, :angle2
12
- SCALAR = 70
13
-
14
- def setup
15
- size(640, 360)
16
- noStroke()
17
- rectMode(CENTER)
18
- @angle1 = 0
19
- @angle2 = 0
20
- end
21
-
22
- def draw
23
- background(0)
24
-
25
- ang1 = angle1.radians
26
- ang2 = angle2.radians
27
-
28
- x1 = width / 2 + (SCALAR * cos(ang1))
29
- x2 = width / 2 + (SCALAR * cos(ang2))
30
-
31
- y1 = height / 2 + (SCALAR * sin(ang1))
32
- y2 = height / 2 + (SCALAR * sin(ang2))
33
-
34
- fill(255)
35
- rect(width * 0.5, height * 0.5, 140, 140)
36
-
37
- fill(0, 102, 153)
38
- ellipse(x1, height * 0.5 - 120, SCALAR, SCALAR)
39
- ellipse(x2, height * 0.5 + 120, SCALAR, SCALAR)
40
-
41
- fill(255, 204, 0)
42
- ellipse(width * 0.5 - 120, y1, SCALAR, SCALAR)
43
- ellipse(width * 0.5 + 120, y2, SCALAR, SCALAR)
44
-
45
- @angle1 += 2
46
- @angle2 += 3
47
- end
48
-
@@ -1,43 +0,0 @@
1
- # Sine Wave
2
- # by Daniel Shiffman.
3
- #
4
- # Render a simple sine wave.
5
-
6
-
7
- def setup
8
- size 640, 360
9
- frame_rate 30
10
- color_mode RGB, 255, 255, 255, 100
11
- @w = width + 16
12
- @period = 500.0
13
- @x_spacing = 8
14
- @dx = (TAU / @period) * @x_spacing
15
- @y_values = []
16
- @theta = 0.0
17
- @amplitude = 75.0
18
-
19
- end
20
-
21
- def draw
22
- background 0
23
- calc_wave
24
- draw_wave
25
- end
26
-
27
- def calc_wave
28
- @theta += 0.02
29
- x = @theta
30
- (0...(@w/@x_spacing)).each do |i|
31
- @y_values[i] = sin(x) * @amplitude
32
- x += @dx
33
- end
34
- end
35
-
36
- def draw_wave
37
- no_stroke
38
- fill 255, 50
39
- ellipse_mode CENTER
40
- @y_values.each_with_index do |v, x|
41
- ellipse x*@x_spacing, height/2+v, 16, 16
42
- end
43
- end
@@ -1,113 +0,0 @@
1
- # Composite Objects
2
- #
3
- # An object can include several other objects. Creating such composite objects
4
- # is a good way to use the principles of modularity and build higher levels of
5
- # abstraction within a program.
6
- attr_reader :rings
7
-
8
- def setup
9
- size 640, 360
10
- @rings = []
11
- rings << EggRing.new(width*0.45, height*0.5, 0.1, 120)
12
- rings << EggRing.new(width*0.65, height*0.8, 0.05, 180)
13
- end
14
-
15
- def draw
16
- background 0
17
- rings.each {|er| er.transmit}
18
- end
19
-
20
- # vvv CLASS EGG RING
21
-
22
- class EggRing
23
- def initialize(x, y, t, sp)
24
- @ovoid = Egg.new(x, y, t, sp)
25
- @circle = Ring.new
26
- @circle.start x, y - sp/2
27
- end
28
-
29
- def transmit
30
- @ovoid.wobble
31
- @ovoid.display
32
- @circle.grow
33
- @circle.display
34
- @circle.on = true unless @circle.on
35
- end
36
- end
37
-
38
- # ^^^ CLASS EGG RING
39
-
40
- # vvv CLASS EGG
41
-
42
- class Egg
43
- attr_accessor :x, :y # these are (or better generate) getters/setters
44
- # for these instance variables
45
- attr_accessor :tilt
46
- attr_accessor :angle
47
- attr_accessor :scalar
48
-
49
- def initialize ( x, y, t, s )
50
- @x, @y = x, y # the @-sign means that these are instance variables
51
- @tilt = t
52
- @scalar = s / 100.0
53
- @angle = 0.0
54
- end
55
-
56
- def wobble
57
- @tilt = Math.cos( angle ) / 8
58
- @angle += 0.1
59
- end
60
-
61
- def display
62
- no_stroke # in Ruby-Processing classes defined inside the main sketch
63
- # class automatically inherit the Processing commands, just
64
- # like "inner classes" in Java
65
- fill 255
66
- push_matrix
67
- translate x, y
68
- rotate tilt
69
- scale scalar
70
- begin_shape
71
- vertex 0, -100
72
- bezier_vertex 25, -100, 40, -65, 40, -40
73
- bezier_vertex 40, -15, 25, 0, 0, 0
74
- bezier_vertex -25, 0, -40, -15, -40, -40
75
- bezier_vertex -40, -65, -25, -100, 0, -100
76
- end_shape
77
- pop_matrix
78
- end
79
- end
80
-
81
- # ^^^ CLASS EGG
82
-
83
- # vvv CLASS RING # note width not directly available in Ring class
84
-
85
- class Ring
86
- attr_accessor :x, :y
87
- attr_accessor :diameter
88
- attr_accessor :on
89
- attr_accessor :max_diameter
90
- def start (xpos, ypos)
91
- @x, @y = xpos, ypos
92
- @on = true
93
- @diameter = 1.0
94
- @max_diameter = $app.width * 2
95
- end
96
-
97
- def grow
98
- @diameter += 0.5 if on
99
- @diameter = 0.0 if diameter > max_diameter
100
- end
101
-
102
- def display
103
- if on
104
- no_fill
105
- stroke_weight 4
106
- stroke 155, 153
107
- ellipse x, y, diameter, diameter
108
- end
109
- end
110
- end
111
-
112
- # ^^^ CLASS RING
113
-
@@ -1,84 +0,0 @@
1
- # Inheritance
2
- #
3
- # A class can be defined using another class as a foundation. In object-oriented
4
- # programming terminology, one class can inherit fields and methods from another.
5
- # An object that inherits from another is called a subclass, and the object it
6
- # inherits from is called a superclass. A subclass extends the superclass.
7
- # see also inheritance_two for the use of hash args and inheritance that
8
- # avoids the inherited class call to super
9
-
10
-
11
- def setup
12
- size 640, 360
13
- @arm = SpinArm.new width/2, height/2, 0.01
14
- @spots = SpinSpots.new width/2, height/2, -0.02, 90.0
15
- end
16
-
17
- def draw
18
- background 204
19
- @arm.display
20
- @spots.display
21
- end
22
-
23
- # vvv CLASS SPIN
24
-
25
- class Spin
26
-
27
- attr_accessor :x, :y, :speed
28
- attr_accessor :angle
29
-
30
- def initialize(x, y, s)
31
- @x, @y = x, y
32
- @speed = s
33
- @angle = 0.0
34
- end
35
-
36
- def update
37
- @angle += speed
38
- end
39
-
40
- end
41
-
42
- # ^^^ CLASS SPIN
43
-
44
- # vvv CLASS SPINARM
45
-
46
- class SpinArm < Spin # inherit from (or "extend") class Spin
47
- # NB: initialize inherited from Spin class
48
-
49
- def display
50
- stroke_weight 1
51
- stroke 0
52
- push_matrix
53
- translate x, y
54
- update
55
- rotate angle
56
- line 0, 0, 165, 0
57
- pop_matrix
58
- end
59
- end
60
-
61
- # ^^^ CLASS SPINARM
62
-
63
- # vvv CLASS SPINSPOTS
64
-
65
- class SpinSpots < Spin
66
- attr_accessor :dim
67
- def initialize (x, y, s, d)
68
- super(x, y, s)
69
- @dim = d
70
- end
71
-
72
- def display
73
- no_stroke
74
- push_matrix
75
- translate x, y
76
- update
77
- rotate angle
78
- ellipse(-dim/2, 0, dim, dim)
79
- ellipse(dim/2, 0, dim, dim)
80
- pop_matrix
81
- end
82
- end
83
-
84
- # ^^^ CLASS SPINSPOTS
@@ -1,88 +0,0 @@
1
- # Inheritance
2
- #
3
- # A class can be defined using another class as a foundation. In object-oriented
4
- # programming terminology, one class can inherit fields and methods from another.
5
- # An object that inherits from another is called a subclass, and the object it
6
- # inherits from is called a superclass. A subclass extends the superclass.
7
- # NB: note the use of hook means inheriting class does not need to call super
8
-
9
-
10
- def setup
11
- size 640, 360
12
- @arm = SpinArm.new({ x: width/2, y: height/2, s: 0.01 })
13
- @spots = SpinSpots.new({ x: width/2, y: height/2, s: -0.02, d: 90.0 })
14
- end
15
-
16
- def draw
17
- background 204
18
- @arm.display
19
- @spots.display
20
- end
21
-
22
- # vvv CLASS SPIN
23
-
24
- class Spin
25
-
26
- attr_accessor :x, :y, :speed
27
- attr_accessor :angle
28
-
29
- def initialize(args = {})
30
- @x, @y = args[:x], args[:y]
31
- @speed = args[:s]
32
- @angle = args[:angle] || 0.0
33
- post_initialize(args) # this is the hook
34
- end
35
-
36
- def update
37
- @angle += speed
38
- end
39
-
40
- def post_initialize args
41
- nil
42
- end
43
-
44
- end
45
-
46
- # ^^^ CLASS SPIN
47
-
48
- # vvv CLASS SPINARM
49
-
50
- class SpinArm < Spin # inherit from (or "extend") class Spin
51
- # NB: initialize inherited from Spin class
52
-
53
- def display
54
- stroke_weight 1
55
- stroke 0
56
- push_matrix
57
- translate x, y
58
- update
59
- rotate angle
60
- line 0, 0, 165, 0
61
- pop_matrix
62
- end
63
- end
64
-
65
- # ^^^ CLASS SPINARM
66
-
67
- # vvv CLASS SPINSPOTS
68
-
69
- class SpinSpots < Spin
70
- attr_accessor :dim
71
-
72
- def post_initialize args
73
- @dim = args[:d]
74
- end
75
-
76
- def display
77
- no_stroke
78
- push_matrix
79
- translate x, y
80
- update
81
- rotate angle
82
- ellipse(-dim/2, 0, dim, dim)
83
- ellipse(dim/2, 0, dim, dim)
84
- pop_matrix
85
- end
86
- end
87
-
88
- # ^^^ CLASS SPINSPOTS
@@ -1,89 +0,0 @@
1
- # Ruby modules, are another way of extending a classes behaviour, the class
2
- # ParticleSystem includes Enumerable (from ruby core) and our custom Runnable
3
- # module. Here we use the module Runnable to capture behaviour that can be
4
- # shared between different classes. Modules are also very useful for wrapping
5
- # imported classes (wrapped packages can then be called using convenient names).
6
-
7
- # This example is bit complicated, because Enumerable and Forwardable are used
8
- # to make the ParticleSystem behave as though it were an Array. This is very
9
- # convenient and is preferred to ParticleSystem subclassing Array.
10
-
11
- # Ported from http://processing.org/learning/topics/simpleparticlesystem.html
12
-
13
-
14
- require 'forwardable'
15
-
16
- load_library :vecmath
17
-
18
- attr_reader :ps
19
-
20
- def setup
21
- size(640,360)
22
- @ps = ParticleSystem.new(Vec2D.new(width/2, 50))
23
- end
24
-
25
- def draw
26
- background(0)
27
- ps.add_particle
28
- ps.run
29
- end
30
-
31
- module Runnable
32
- def run
33
- self.reject! { |item| item.lifespan <= 0 }
34
- self.each { |item| item.run }
35
- end
36
- end
37
-
38
- class ParticleSystem
39
- extend Forwardable
40
- def_delegators(:@particle_system, :each, :<<, :reject!)
41
- include Enumerable
42
- include Runnable
43
-
44
- attr_reader :origin
45
-
46
- def initialize(loc)
47
- @particle_system = []
48
- @origin = Vec2D.new(loc.x, loc.y)
49
- end
50
-
51
- def add_particle
52
- self << Particle.new(origin)
53
- end
54
-
55
- end
56
-
57
- # A simple Particle class
58
-
59
- class Particle
60
- include Processing::Proxy
61
-
62
- attr_reader :loc, :vel, :acc, :lifespan
63
- def initialize(loc)
64
- @acc = Vec2D.new(0, 0.05)
65
- @vel = Vec2D.new(rand(-1.0..1), rand(-2.0..0))
66
- @loc = loc # loc.clone is unecessary in ruby
67
- @lifespan = 255.0
68
- end
69
-
70
- def run
71
- update
72
- display
73
- end
74
-
75
- # Method to update loc
76
- def update
77
- @vel += acc
78
- @loc += vel
79
- @lifespan -= 1.0
80
- end
81
-
82
- # Method to display
83
- def display
84
- stroke(255,lifespan)
85
- fill(255,lifespan)
86
- ellipse(loc.x, loc.y, 8, 8)
87
- end
88
-
89
- end