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,16 +0,0 @@
1
- Building the custom nn Library
2
- ==============================
3
- This is an example of a java library that you can build yourself with the included Rakefile.
4
- You need a jdk, a system version of jruby and the ruby-compiler gem to build the nn library
5
- (see ext dir).
6
- Compiling and building the jar is dead easy just issue the following command in a console.
7
-
8
- `jruby -S rake compile`
9
-
10
- you may also need to set JAVA_HOME to point to your jdk eg
11
-
12
- `export JAVA_HOME=/opt/jdk1.7.0_65` for linux users
13
-
14
- You can even run the sketch using `rake`, with the `:run` task `rake run` and tidy up when your are done `rake clean`
15
-
16
- This example was taken from [The Nature of Code](https://github.com/shiffman/The-Nature-of-Code) by Dan Shiffman, except the example has been rubified (and even the java code was doctored to be more up to date, and to prefer double to float).
@@ -1,22 +0,0 @@
1
- if RUBY_PLATFORM =~ /java/
2
- # -*- ruby -*-
3
- require 'rake/javaextensiontask'
4
-
5
- Rake::JavaExtensionTask.new('nn') do |ext|
6
- ext.name = 'nn'
7
- ext.debug = true
8
- ext.lib_dir = 'library/nn'
9
- ext.source_version='1.7'
10
- ext.target_version='1.7'
11
- end
12
- end
13
-
14
- desc 'clean'
15
- task :clean do
16
- FileUtils.rm_rf(FileList['tmp', 'library'])
17
- end
18
-
19
- desc 'run'
20
- task :run do
21
- sh `rp5 run xor.rb`
22
- end
@@ -1,47 +0,0 @@
1
- // Daniel Shiffman
2
- // The Nature of Code, Fall 2006
3
- // Neural Network
4
-
5
- // Class to describe a connection between two neurons
6
-
7
- package nn;
8
-
9
- public class Connection {
10
-
11
- private final Neuron from; // Connection goes from. . .
12
- private final Neuron to; // To. . .
13
- private double weight; // Weight of the connection. . .
14
-
15
- // Constructor builds a connection with a random weight
16
- public Connection(Neuron a_, Neuron b_) {
17
- from = a_;
18
- to = b_;
19
- weight = Math.random()*2-1;
20
- }
21
-
22
- // In case I want to set the weights manually, using this for testing
23
- public Connection(Neuron a_, Neuron b_, double w) {
24
- from = a_;
25
- to = b_;
26
- weight = w;
27
- }
28
-
29
- public Neuron getFrom() {
30
- return from;
31
- }
32
-
33
- public Neuron getTo() {
34
- return to;
35
- }
36
-
37
- public double getWeight() {
38
- return weight;
39
- }
40
-
41
- // Changing the weight of the connection
42
- public void adjustWeight(double deltaWeight) {
43
- weight += deltaWeight;
44
- }
45
-
46
-
47
- }
@@ -1,20 +0,0 @@
1
- //Daniel Shiffman
2
- //The Nature of Code, Fall 2006
3
- //Neural Network
4
-
5
- // Hidden Neuron Class
6
- // So far not necessary to differentiate these
7
-
8
- package nn;
9
-
10
- public class HiddenNeuron extends Neuron {
11
-
12
- public HiddenNeuron() {
13
- super();
14
- }
15
-
16
- public HiddenNeuron(int i) {
17
- super(i);
18
- }
19
-
20
- }
@@ -1,23 +0,0 @@
1
- //Daniel Shiffman
2
- //The Nature of Code, Fall 2006
3
- //Neural Network
4
-
5
- // Input Neuron Class
6
- // Has additional functionality to receive beginning input
7
-
8
- package nn;
9
-
10
- public class InputNeuron extends Neuron {
11
- public InputNeuron() {
12
- super();
13
- }
14
-
15
- public InputNeuron(int i) {
16
- super(i);
17
- }
18
-
19
- public void input(double d) {
20
- output = d;
21
- }
22
-
23
- }
@@ -1,136 +0,0 @@
1
- // Daniel Shiffman
2
- // The Nature of Code, Fall 2006
3
- // Neural Network
4
-
5
- // Class to describe the entire network
6
- // Arrays for input_array neurons, hidden_array neurons, and output neuron
7
-
8
- // Need to update this so that it would work with an array out outputs
9
- // Rather silly that I didn't do this initially
10
-
11
- // Also need to build in a "Layer" class so that there can easily
12
- // be more than one hidden_array layer
13
-
14
- package nn;
15
-
16
- import java.util.ArrayList;
17
-
18
- public class Network {
19
-
20
- // Layers
21
- InputNeuron[] input_array;
22
- HiddenNeuron[] hidden_array;
23
- OutputNeuron output;
24
-
25
- public static final double LEARNING_CONSTANT = 0.5;
26
-
27
- // Only One output now to start!!! (i can do better, really. . .)
28
- // Constructor makes the entire network based on number of inputs & number of neurons in hidden_array layer
29
- // Only One hidden_array layer!!! (fix this dood)
30
-
31
- public Network(int inputs, int hidden_arraytotal) {
32
-
33
- input_array = new InputNeuron[inputs+1]; // Got to add a bias input_array
34
- hidden_array = new HiddenNeuron[hidden_arraytotal+1];
35
-
36
- // Make input_array neurons
37
- for (int i = 0; i < input_array.length-1; i++) {
38
- input_array[i] = new InputNeuron();
39
- }
40
-
41
- // Make hidden_array neurons
42
- for (int i = 0; i < hidden_array.length-1; i++) {
43
- hidden_array[i] = new HiddenNeuron();
44
- }
45
-
46
- // Make bias neurons
47
- input_array[input_array.length-1] = new InputNeuron(1);
48
- hidden_array[hidden_array.length-1] = new HiddenNeuron(1);
49
-
50
- // Make output neuron
51
- output = new OutputNeuron();
52
- for (InputNeuron input : input_array) {
53
- for (int j = 0; j < hidden_array.length-1; j++) {
54
- // Create the connection object and put it in both neurons
55
- Connection c = new Connection(input, hidden_array[j]);
56
- input.addConnection(c);
57
- hidden_array[j].addConnection(c);
58
- }
59
- }
60
- for (HiddenNeuron hidden : hidden_array) {
61
- Connection c = new Connection(hidden, output);
62
- hidden.addConnection(c);
63
- output.addConnection(c);
64
- }
65
-
66
- }
67
-
68
-
69
- public double feedForward(double[] inputVals) {
70
-
71
- // Feed the input_array with an array of inputs
72
- for (int i = 0; i < inputVals.length; i++) {
73
- input_array[i].input(inputVals[i]);
74
- }
75
-
76
- // Have the hidden_array layer calculate its output
77
- for (int i = 0; i < hidden_array.length-1; i++) {
78
- hidden_array[i].calcOutput();
79
- }
80
-
81
- // Calculate the output of the output neuron
82
- output.calcOutput();
83
-
84
- // Return output
85
- return output.getOutput();
86
- }
87
-
88
- public double train(double[] inputs, double answer) {
89
- double result = feedForward(inputs);
90
-
91
-
92
- // This is where the error correction all starts
93
- // Derivative of sigmoid output function * diff between known and guess
94
- double deltaOutput = result * (1 - result) * (answer - result);
95
-
96
-
97
- // BACKPROPOGATION
98
- // This is easier b/c we just have one output
99
- // Apply Delta to connections between hidden_array and output
100
- ArrayList<Connection> connections = output.getConnections();
101
- for (int i = 0; i < connections.size(); i++) {
102
- Connection c = connections.get(i);
103
- Neuron neuron = c.getFrom();
104
- double temp_output = neuron.getOutput();
105
- double deltaWeight = temp_output * deltaOutput;
106
- c.adjustWeight(LEARNING_CONSTANT * deltaWeight);
107
- }
108
- for (HiddenNeuron hidden : hidden_array) {
109
- connections = hidden.getConnections();
110
- double sum = 0;
111
- // Sum output delta * hidden_array layer connections (just one output)
112
- for (int j = 0; j < connections.size(); j++) {
113
- Connection c = connections.get(j);
114
- // Is this a connection from hidden_array layer to next layer (output)?
115
- if (c.getFrom() == hidden) {
116
- sum += c.getWeight() * deltaOutput;
117
- }
118
- }
119
- // Then adjust the weights coming in based:
120
- // Above sum * derivative of sigmoid output function for hidden_array neurons
121
- for (int j = 0; j < connections.size(); j++) {
122
- Connection c = connections.get(j);
123
- // Is this a connection from previous layer (input_array) to hidden_array layer?
124
- if (c.getTo() == hidden) {
125
- double temp_output = hidden.getOutput();
126
- double deltaHidden = temp_output * (1 - temp_output); // Derivative of sigmoid(x)
127
- deltaHidden *= sum; // Would sum for all outputs if more than one output
128
- Neuron neuron = c.getFrom();
129
- double deltaWeight = neuron.getOutput() * deltaHidden;
130
- c.adjustWeight(LEARNING_CONSTANT * deltaWeight);
131
- }
132
- }
133
- }
134
- return result;
135
- }
136
- }
@@ -1,79 +0,0 @@
1
- //Daniel Shiffman
2
- //The Nature of Code, Fall 2006
3
- //Neural Network
4
-
5
- //Generic Neuron Class
6
- //Can be a bias neuron (true or false)
7
-
8
- package nn;
9
-
10
- import java.util.ArrayList;
11
-
12
- public class Neuron {
13
-
14
- protected double output;
15
- protected ArrayList<Connection> connections;
16
- protected boolean bias = false;
17
-
18
- // A regular Neuron
19
- public Neuron() {
20
- output = 0;
21
- // Using an arraylist to store list of connections to other neurons
22
- connections = new ArrayList<>();
23
- bias = false;
24
- }
25
-
26
- // Constructor for a bias neuron
27
- public Neuron(int i) {
28
- output = i;
29
- connections = new ArrayList<>();
30
- bias = true;
31
- }
32
-
33
- // Function to calculate output of this neuron
34
- // Output is sum of all inputs * weight of connections
35
- public void calcOutput() {
36
- if (bias == false) {
37
- double sum = 0;
38
- double bias_value = 0;
39
- //System.out.println("Looking through " + connections.size() + " connections");
40
- for (int i = 0; i < connections.size(); i++) {
41
- Connection c = connections.get(i);
42
- Neuron from = c.getFrom();
43
- Neuron to = c.getTo();
44
- // Is this connection moving forward to us
45
- // Ignore connections that we send our output to
46
- if (to == this) {
47
- // This isn't really necessary
48
- // But I am treating the bias individually in case I need to at some point
49
- if (from.bias) {
50
- bias_value = from.getOutput()*c.getWeight();
51
- } else {
52
- sum += from.getOutput()*c.getWeight();
53
- }
54
- }
55
- }
56
- // Output is result of sigmoid function
57
- output = f(bias_value + sum);
58
- }
59
- }
60
-
61
- void addConnection(Connection c) {
62
- connections.add(c);
63
- }
64
-
65
- double getOutput() {
66
- return output;
67
- }
68
-
69
- // Sigmoid function
70
- public static double f(double x) {
71
- return 1.0 / (1.0 + Math.exp(-x));
72
- }
73
-
74
- public ArrayList<Connection> getConnections() {
75
- return connections;
76
- }
77
-
78
-
79
- }
@@ -1,7 +0,0 @@
1
- package nn;
2
-
3
- public class OutputNeuron extends Neuron {
4
- public OutputNeuron() {
5
- super();
6
- }
7
- }
@@ -1,60 +0,0 @@
1
- # The Nature of Code
2
- # Daniel Shiffman
3
- # http:#natureofcode.com
4
-
5
- # "Landscape" example
6
-
7
- class Landscape
8
- include Processing::Proxy
9
-
10
- attr_reader :scl, :w, :h, :rows, :cols, :z, :zoff
11
-
12
-
13
-
14
- def initialize(scl, w, h)
15
- @scl, @w, @h = scl, w, h
16
- @cols = w / scl
17
- @rows = h / scl
18
- @z = Array.new(cols, Array.new(rows, 0.0))
19
- end
20
-
21
-
22
- # Calculate height values (based off a neural network)
23
- def calculate(nn)
24
- val = ->(curr, nn, x, y){curr * 0.95 + 0.05 * (nn.feed_forward([x, y]) * 280.0 - 140.0)}
25
- @z = (0 ... cols).map{|i|
26
- (0 ... rows).map{|j|
27
- val.call(z[i][j], nn, i * 1.0/ cols, j * 1.0/cols)
28
- }
29
- }
30
- end
31
-
32
- # Render landscape as grid of quads
33
- def render
34
- # Every cell is an individual quad
35
- # (could use quad_strip here, but produces funny results, investigate this)
36
- (0 ... z.size - 1).each do |x|
37
- (0 ... z[0].size - 1).each do |y|
38
-
39
- # one quad at a time
40
- # each quad's color is determined by the height value at each vertex
41
- # (clean this part up)
42
- no_stroke
43
- push_matrix
44
- begin_shape(QUADS)
45
- translate(x * scl - w * 0.5, y * scl - h * 0.5, 0)
46
- fill(z[x][y]+127, 220)
47
- vertex(0, 0, z[x][y])
48
- fill(z[x+1][y]+127, 220)
49
- vertex(scl, 0, z[x+1][y])
50
- fill(z[x+1][y+1]+127, 220)
51
- vertex(scl, scl, z[x+1][y+1])
52
- fill(z[x][y+1]+127, 220)
53
- vertex(0, scl, z[x][y+1])
54
- end_shape
55
- pop_matrix
56
- end
57
- end
58
- end
59
- end
60
-
@@ -1,88 +0,0 @@
1
- # The Nature of Code
2
- # Daniel Shiffman
3
- # http://natureofcode.com
4
-
5
- # XOR Multi-Layered Neural Network Example
6
- # Neural network java code is all in the "src" folder
7
- load_library :nn
8
-
9
- require_relative './landscape'
10
- include_package 'nn'
11
-
12
- ITERATIONS_PER_FRAME = 5
13
-
14
- attr_reader :inputs, :nn, :count, :land, :theta, :f, :result, :known
15
-
16
-
17
- def setup
18
-
19
- size(400, 400, P3D)
20
- @theta = 0.0
21
- # Create a landscape object
22
- @land = Landscape.new(20, 300, 300)
23
- @f = create_font("Courier", 12, true)
24
-
25
- @nn = Network.new(2, 4)
26
- @count = 0
27
- # Create a list of 4 training inputs
28
- @inputs = []
29
- inputs << [1.0, 0]
30
- inputs << [0, 1.0]
31
- inputs << [1.0, 1.0]
32
- inputs << [0, 0.0]
33
- end
34
-
35
- def draw
36
- lights
37
- ITERATIONS_PER_FRAME.times do |i|
38
- inp = inputs.sample
39
- # Compute XOR
40
- @known = ((inp[0] > 0.0 && inp[1] > 0.0) || (inp[0] < 1.0 && inp[1] < 1.0))? 0 : 1.0
41
-
42
- # Train that sucker!
43
- @result = nn.train(inp, known)
44
- @count += 1
45
- end
46
-
47
- # Ok, visualize the solution space
48
- background(175)
49
- push_matrix
50
- translate(width / 2, height / 2 + 20, -160)
51
- rotate_x(Math::PI / 3)
52
- rotate_z(theta)
53
-
54
- # Put a little BOX on screen
55
- push_matrix
56
-
57
- stroke(50)
58
- no_fill
59
- translate(-10, -10, 0)
60
- box(280)
61
- land.calculate(nn)
62
- land.render
63
- # Draw the landscape
64
- pop_matrix
65
-
66
- @theta += 0.0025
67
- pop_matrix
68
-
69
- # Display overal neural net stats
70
- network_status
71
- end
72
-
73
- def network_status
74
- mse = 0.0
75
- text_font(f)
76
- fill(0)
77
- text("Your friendly neighborhood neural network solving XOR.", 10, 20)
78
- text("Total iterations: #{count}", 10, 40)
79
- mse += (result - known) * (result - known)
80
- rmse = Math::sqrt(mse / 4.0)
81
- out = "Root mean squared error: #{format('%0.5f', rmse)}"
82
- hint DISABLE_DEPTH_SORT
83
- text(out, 10, 60)
84
- hint ENABLE_DEPTH_SORT
85
- end
86
-
87
-
88
-