ruby-processing 2.6.3 → 2.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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,27 +0,0 @@
1
- ---
2
- :bubbles:
3
- - !ruby/struct:BubbleStruct
4
- x: 160
5
- y: 103
6
- diameter: 43.2
7
- label: Happy
8
- - !ruby/struct:BubbleStruct
9
- x: 372
10
- y: 137
11
- diameter: 52.4
12
- label: Sad
13
- - !ruby/struct:BubbleStruct
14
- x: 273
15
- y: 235
16
- diameter: 61.0
17
- label: Joyous
18
- - !ruby/struct:BubbleStruct
19
- x: 121
20
- y: 179
21
- diameter: 44.7
22
- label: Melancholy
23
- - !ruby/struct:BubbleStruct
24
- x: 516
25
- y: 217
26
- diameter: 50
27
- label: new label
@@ -1,45 +0,0 @@
1
- # The bubble library, include BubbleStruct
2
-
3
- class Bubble
4
- include Processing::Proxy
5
-
6
- attr_reader :x, :y, :diameter, :name, :over
7
-
8
- # Create the Bubble
9
- def initialize(x, y, diameter, name)
10
- @x = x
11
- @y = y
12
- @diameter = diameter
13
- @name = name
14
- @over = false
15
- end
16
-
17
- # Checking if mouse is over the Bubble
18
- def rollover(px, py)
19
- d = dist(px,py,x,y)
20
- @over = (d < diameter/2)? true : false
21
- end
22
-
23
- # Display the Bubble
24
- def display
25
- stroke(0)
26
- stroke_weight(2)
27
- noFill
28
- ellipse(x, y, diameter, diameter)
29
- if (over)
30
- fill(0)
31
- text_align(CENTER)
32
- text(name, x, y + diameter / 2 + 20)
33
- end
34
- end
35
-
36
- def to_hash
37
- {'position' => {'x' => x, 'y' => y}, 'diameter' => diameter, 'label' => name}
38
- end
39
-
40
- def to_struct
41
- BubbleStruct.new(x, y, diameter, name)
42
- end
43
- end
44
-
45
- BubbleStruct = Struct.new(:x, :y, :diameter, :label)
@@ -1,64 +0,0 @@
1
- #######
2
- # word.rb
3
- # the word class stores data about words (text, source, frequency)
4
- # thanks to processing mixin words are rendered according to
5
- # source and frequency
6
- ########
7
- class Word
8
- include Processing::Proxy
9
- # Store a count for occurences in two different books
10
- attr_reader :count_dracula, :count_franken, :total_count, :word, :position, :width, :height, :speed
11
-
12
- def initialize(s)
13
- @width, @height = $app.width, $app.height
14
- @count_dracula, @count_franken, @total_count = 0, 0, 0
15
- @position = [rand(width), rand(-height..height*2)]
16
- @word = s
17
- end
18
-
19
- # We will display a word if it appears at least 5 times
20
- # and only in one of the books
21
- def qualify?
22
- return ((count_dracula == total_count || count_franken == total_count) && total_count > 5)
23
- end
24
-
25
- # Increment the count for Dracula
26
- def increment_dracula
27
- @count_dracula += 1
28
- @total_count += 1
29
- end
30
-
31
-
32
- # Increment the count for Frankenstein
33
- def increment_franken
34
- @count_franken += 1
35
- @total_count += 1
36
- end
37
-
38
- # The more often it appears, the faster it falls
39
- def move
40
- @speed = map(total_count, 5, 25, 0.1, 0.4).to_f
41
- @speed = constrain(speed, 0, 10.0)
42
- @position[Y] += speed
43
-
44
- if (position[Y] > height*2)
45
- @position[Y] = -height
46
- end
47
- end
48
-
49
-
50
- # Depending on which book it gets a color
51
- def display
52
- if (count_dracula > 0)
53
- fill(255)
54
- elsif (count_franken > 0)
55
- fill(0)
56
- end
57
- # Its size is also tied to number of occurences
58
- fs = map(total_count,5,25,2,24.0).to_f
59
- fs = constrain(fs, 2, 48)
60
- text_size(fs)
61
- text_align(CENTER)
62
- text(word, position[X], position[Y])
63
- end
64
- end
@@ -1,113 +0,0 @@
1
- #
2
- # Loading XML Data
3
- # by Daniel Shiffman.
4
- #
5
- # This example demonstrates how to use loadXML
6
- # to retrieve data from an XML file and make objects
7
- # from that data.
8
- #
9
- # Here is what the XML looks like:
10
- #
11
- # <?xml version='1.0'?>
12
- # <bubbles>
13
- # <bubble>
14
- # <position x='160' y='103'/>
15
- # <diameter>43.19838</diameter>
16
- # <label>Happy</label>
17
- # </bubble>
18
- # <bubble>
19
- # <position x='372' y='137'/>
20
- # <diameter>52.42526</diameter>
21
- # <label>Sad</label>
22
- # </bubble>
23
- # </bubbles>
24
- #
25
- load_library 'bubble'
26
-
27
- attr_reader :bubbles, :xml
28
-
29
- def setup
30
- size(640, 360)
31
- load_data
32
- end
33
-
34
- def draw
35
- background(255)
36
- # Display all bubbles
37
- bubbles.each do |b|
38
- b.display
39
- b.rollover(mouseX, mouseY)
40
- end
41
-
42
- text_align(LEFT)
43
- fill(0)
44
- text('Click to add bubbles.', 10, height - 10)
45
- end
46
-
47
- def load_data
48
- # Load XML file
49
- @xml = loadXML('data.xml')
50
- # Get all the child nodes named 'bubble'
51
- children = xml.get_children('bubble')
52
-
53
- # The size of the array of Bubble objects is determined by the total XML elements named 'bubble'
54
- @bubbles = []
55
-
56
- children.each do |element|
57
- # The position element has two attributes: x and y
58
- position_element = element.get_child('position')
59
- # Note how with attributes we can get an integer or directly
60
- x, y = position_element.get_int('x'), position_element.get_int('y')
61
-
62
- # The diameter is the content of the child named 'diamater'
63
- diameter_element = element.get_child('diameter')
64
- # Note how with the content of an XML node, we retrieve as a String and then convert
65
- diameter = (diameter_element.get_content).to_f
66
-
67
- # The label is the content of the child named 'label'
68
- label_element = element.get_child('label')
69
- label = label_element.get_content
70
-
71
- # Make a Bubble object out of the data read
72
- bubbles << Bubble.new(x, y, diameter, label)
73
- end
74
-
75
- end
76
-
77
- # Still need to work on adding and deleting
78
-
79
- def mouse_pressed
80
-
81
- # Create a new XML bubble element
82
- bubble = xml.add_child('bubble')
83
-
84
- # Set the poisition element
85
- position = bubble.add_child('position')
86
- # Here we can set attributes as integers directly
87
- position.set_int('x', mouseX)
88
- position.set_int('y', mouseY)
89
-
90
- # Set the diameter element
91
- diameter = bubble.add_child('diameter')
92
- # Here for a node's content, we have to convert to a String
93
- diameter.set_content(rand(40.0..80).to_s)
94
-
95
- # Set a label
96
- label = bubble.add_child('label')
97
- label.set_content('New label')
98
-
99
-
100
- # Here we are removing the oldest bubble if there are more than 10
101
- children = xml.get_children('bubble')
102
- # If the XML file has more than 10 bubble elements
103
- if (children.length > 10)
104
- # Delete the first one
105
- xml.remove_child(children[0])
106
- end
107
-
108
- # Save a new XML file
109
- saveXML(xml, 'data/data.xml')
110
-
111
- # reload the new data
112
- load_data
113
- end
@@ -1,93 +0,0 @@
1
- # This example demonstrates how easily 'sketch data' can be retrieved from a json file
2
- # in ruby-processing. Note this sketch re-uses the Bubble class from the bubble library.
3
- # The BubbleData class, can load, store and create instances of Bubble (and request them
4
- # to display and/or show their label, when 'mouse over').
5
- # @author Martin Prout, after Daniel Shiffmans version for processing
6
- #
7
- require 'json'
8
-
9
- load_library :bubble
10
-
11
- attr_reader :bubble_data
12
-
13
- def setup
14
- size(640, 360)
15
- # initialize bubble_data with 'key' and read data from 'file path'
16
- @bubble_data = BubbleData.new 'bubbles'
17
- bubble_data.load_data 'data/data.json'
18
- end
19
-
20
- def draw
21
- background 255
22
- # draw the bubbles and display a bubbles label whilst mouse over
23
- bubble_data.display mouse_x, mouse_y
24
- end
25
-
26
- def mouse_pressed
27
- # create a new instance of bubble, where mouse was clicked
28
- bubble_data.create_new_bubble(mouse_x, mouse_y)
29
- end
30
-
31
- class BubbleData
32
- include Enumerable
33
-
34
- MAX_BUBBLE = 10
35
-
36
- attr_reader :key, :path, :bubbles
37
-
38
- # @param key String for top level hash
39
-
40
- def initialize key
41
- @key = key
42
- @bubbles = []
43
- end
44
-
45
- def each &block
46
- bubbles.each &block
47
- end
48
-
49
- def create_new_bubble x, y
50
- self.add Bubble.new(x, y, rand(40..80), 'new label')
51
- save_data
52
- load_data path
53
- end
54
-
55
- def display x, y
56
- self.each do |bubble|
57
- bubble.display
58
- bubble.rollover(x, y)
59
- end
60
- end
61
-
62
- # @param path to json file
63
-
64
- def load_data path
65
- @path = path
66
- source_string = open(path, 'r'){ |file| file.read }
67
- data = JSON.parse(source_string)[key]
68
- bubbles.clear
69
- # iterate the bubble_data array, and create an array of bubbles
70
- data.each do |point|
71
- self.add Bubble.new(
72
- point['position']['x'],
73
- point['position']['y'],
74
- point['diameter'],
75
- point['label'])
76
- end
77
- end
78
-
79
- def add bubble
80
- bubbles << bubble
81
- bubbles.shift if bubbles.size > MAX_BUBBLE
82
- end
83
-
84
- private
85
-
86
- def save_data
87
- hash = { key => self.map{ |point| point.to_hash } }
88
- json = JSON.pretty_generate(hash) # generate pretty output
89
- open(path, 'w') { |f| f.write(json) }
90
- end
91
-
92
- end
93
-
@@ -1,84 +0,0 @@
1
- ######################################
2
- # Yet another examples of reading and
3
- # writing to some form of markup,
4
- # appropriately yaml using ruby structs
5
- # by Martin Prout after Dan Shiffman
6
- ####################################
7
- load_library :bubble
8
-
9
- attr_reader :bubble_data
10
-
11
-
12
- def setup
13
- size(640, 360)
14
- @bubble_data = BubbleData.new :bubbles
15
- bubble_data.load_data 'data/struct_data.yml'
16
- end
17
-
18
- def draw
19
- background 255
20
- bubble_data.display mouse_x, mouse_y
21
- end
22
-
23
-
24
- def mouse_pressed
25
- # create a new bubble instance, where mouse was clicked
26
- bubble_data.create_new_bubble(mouse_x, mouse_y)
27
- end
28
-
29
- require 'forwardable'
30
-
31
- class BubbleData
32
- include Enumerable
33
- extend Forwardable
34
- def_delegators(:@bubble_array, :clear, :each, :<<, :shift, :size)
35
-
36
- MAX_BUBBLE = 10
37
-
38
- attr_reader :path, :bubble_array
39
- def initialize key
40
- @bubble_array = []
41
- @key = key
42
- end
43
-
44
- def create_new_bubble x, y
45
- self.add Bubble.new(x, y, rand(40..80), 'new label')
46
- save_data
47
- load_data path
48
- end
49
-
50
- def add bubble
51
- self << bubble
52
- self.shift if self.size > MAX_BUBBLE
53
- end
54
-
55
- def load_data path
56
- @path = path
57
- yaml = Psych.load_file(path)
58
- # we are storing the data as an array of RubyStruct, in a hash with
59
- # a symbol as the key (the latter only to show we can, it makes no sense)
60
- data = yaml[@key]
61
- self.clear
62
- # iterate the bubble_data array, and populate the array of bubbles
63
- data.each do |pt|
64
- self.add Bubble.new(pt.x, pt.y, pt.diameter, pt.label)
65
- end
66
- end
67
-
68
- def display x, y
69
- self.each do |bubble|
70
- bubble.display
71
- bubble.rollover(x, y)
72
- end
73
- end
74
-
75
- private
76
-
77
- def save_data
78
- hash = { @key => self.map { |point| point.to_struct } }
79
- yaml = hash.to_yaml
80
- # overwite existing 'struct_data.yaml'
81
- open(path, 'w:UTF-8') { |f| f.write(yaml) }
82
- end
83
-
84
- end
@@ -1,85 +0,0 @@
1
- #
2
- # Loading Tabular Data
3
- # after Daniel Shiffman, by Martin Prout.
4
- #
5
- # This example demonstrates how to use CSV
6
- # to retrieve data from a CSV file and make objects
7
- # from that data.
8
- #
9
- # Here is what the CSV looks like:
10
- #
11
- # x,y,diameter,name
12
- # 160,103,43.19838,Happy
13
- # 372,137,52.42526,Sad
14
- # 273,235,61.14072,Joyous
15
- # 121,179,44.758068,Melancholy
16
- #
17
- require 'csv'
18
-
19
- load_library 'bubble'
20
-
21
- attr_reader :bubbles, :data
22
-
23
- def setup
24
- size(640, 360)
25
- load_data
26
- end
27
-
28
- def draw
29
- background(255)
30
- # Display all bubbles
31
- bubbles.each do |b|
32
- b.display
33
- b.rollover(mouse_x, mouse_y)
34
- end
35
-
36
- text_align(LEFT)
37
- fill(0)
38
- text('Click to add bubbles.', 10, height - 10)
39
- end
40
-
41
- def load_data
42
- # Load CSV file into an Array of Hash objects
43
- # :headers option indicates the file has a header row
44
- @data = CSV.read('data/data.csv', :headers => true).map{|row| row.to_hash}
45
-
46
- # The size of the array of Bubble objects is determined by the total number of 'rows' in the CSV
47
- @bubbles = []
48
-
49
- data.each do |row|
50
- # You access the values via their column name (set by using headers option above)
51
- x = row['x'].to_f
52
- y = row['y'].to_f
53
- d = row['diameter'].to_f
54
- n = row['name']
55
- # Make a Bubble object out of the data read
56
- bubbles << Bubble.new(x, y, d, n)
57
- end
58
-
59
- end
60
-
61
- def mouse_pressed
62
- # Create a new 'row' hash
63
- row = {'x' => mouse_x.to_s, 'y' => mouse_y.to_s, 'diameter' => random(40, 80).to_s, 'name' => 'Blah'}
64
- # add the row to the existing data array
65
- data << row
66
-
67
- # If the table has more than 10 rows
68
- if (data.size > 10)
69
- # Delete the oldest row
70
- data.shift
71
- end
72
- # read column names from data, and generate csv 'string' that can be written to file
73
- column_names = data.first.keys
74
- s = CSV.generate do |csv|
75
- csv << column_names
76
- data.each do |row|
77
- csv << row.values
78
- end
79
- end
80
- # Writing the csv data back to the same file, (also specify UTF-8 format)
81
- File.open('data/data.csv', 'w:UTF-8') { |file| file.write(s)}
82
- # And reloading it
83
- load_data
84
- end
85
-