propane 3.4.0-java → 3.7.0.pre-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (155) hide show
  1. checksums.yaml +4 -4
  2. data/.mvn/extensions.xml +1 -2
  3. data/.mvn/wrapper/MavenWrapperDownloader.java +2 -2
  4. data/.mvn/wrapper/maven-wrapper.properties +2 -2
  5. data/.travis.yml +2 -2
  6. data/CHANGELOG.md +12 -0
  7. data/Gemfile +2 -0
  8. data/README.md +17 -8
  9. data/Rakefile +10 -11
  10. data/bin/propane +3 -1
  11. data/lib/propane.rb +6 -4
  12. data/lib/propane/app.rb +20 -10
  13. data/lib/propane/creators/sketch_class.rb +7 -1
  14. data/lib/propane/creators/sketch_factory.rb +4 -2
  15. data/lib/propane/creators/sketch_writer.rb +1 -0
  16. data/lib/propane/helper_methods.rb +23 -24
  17. data/lib/propane/helpers/numeric.rb +2 -0
  18. data/lib/propane/helpers/version_error.rb +1 -0
  19. data/lib/propane/library.rb +5 -1
  20. data/lib/propane/library_loader.rb +2 -0
  21. data/lib/propane/native_folder.rb +10 -9
  22. data/lib/propane/native_loader.rb +3 -0
  23. data/lib/propane/runner.rb +14 -6
  24. data/lib/propane/version.rb +2 -1
  25. data/library/boids/boids.rb +21 -11
  26. data/library/color_group/color_group.rb +28 -0
  27. data/library/control_panel/control_panel.rb +8 -5
  28. data/library/dxf/dxf.rb +6 -0
  29. data/library/file_chooser/chooser.rb +10 -9
  30. data/library/file_chooser/file_chooser.rb +10 -9
  31. data/library/library_proxy/library_proxy.rb +2 -0
  32. data/library/net/net.rb +7 -0
  33. data/library/simplex_noise/simplex_noise.rb +2 -0
  34. data/library/slider/slider.rb +23 -22
  35. data/library/vector_utils/vector_utils.rb +4 -0
  36. data/library/video_event/video_event.rb +4 -1
  37. data/pom.rb +37 -36
  38. data/pom.xml +7 -7
  39. data/propane.gemspec +16 -12
  40. data/src/main/java/monkstone/ColorUtil.java +13 -1
  41. data/src/main/java/monkstone/MathToolModule.java +253 -203
  42. data/src/main/java/monkstone/PropaneLibrary.java +2 -2
  43. data/src/main/java/monkstone/fastmath/Deglut.java +1 -1
  44. data/src/main/java/monkstone/filechooser/Chooser.java +2 -1
  45. data/src/main/java/monkstone/noise/SimplexNoise.java +2 -2
  46. data/src/main/java/monkstone/slider/CustomHorizontalSlider.java +1 -1
  47. data/src/main/java/monkstone/slider/CustomVerticalSlider.java +1 -1
  48. data/src/main/java/monkstone/slider/SimpleHorizontalSlider.java +1 -1
  49. data/src/main/java/monkstone/slider/SimpleVerticalSlider.java +1 -1
  50. data/src/main/java/monkstone/slider/SliderBar.java +1 -1
  51. data/src/main/java/monkstone/slider/SliderGroup.java +1 -1
  52. data/src/main/java/monkstone/slider/WheelHandler.java +7 -6
  53. data/src/main/java/monkstone/vecmath/package-info.java +1 -1
  54. data/src/main/java/monkstone/vecmath/vec2/Vec2.java +1 -1
  55. data/src/main/java/monkstone/vecmath/vec3/Vec3.java +3 -3
  56. data/src/main/java/monkstone/videoevent/CaptureEvent.java +27 -0
  57. data/src/main/java/monkstone/videoevent/{VideoInterface.java → MovieEvent.java} +11 -27
  58. data/src/main/java/monkstone/videoevent/package-info.java +1 -1
  59. data/src/main/java/processing/awt/PGraphicsJava2D.java +781 -285
  60. data/src/main/java/processing/awt/PImageAWT.java +377 -0
  61. data/src/main/java/processing/awt/PShapeJava2D.java +56 -52
  62. data/src/main/java/processing/awt/PSurfaceAWT.java +309 -209
  63. data/src/main/java/processing/awt/ShimAWT.java +581 -0
  64. data/src/main/java/processing/core/PApplet.java +4510 -4503
  65. data/src/main/java/processing/core/PConstants.java +477 -447
  66. data/src/main/java/processing/core/PFont.java +914 -880
  67. data/src/main/java/processing/core/PGraphics.java +193 -177
  68. data/src/main/java/processing/core/PImage.java +611 -309
  69. data/src/main/java/processing/core/PMatrix.java +172 -159
  70. data/src/main/java/processing/core/PMatrix2D.java +478 -415
  71. data/src/main/java/processing/core/PMatrix3D.java +762 -735
  72. data/src/main/java/processing/core/PShape.java +2888 -2652
  73. data/src/main/java/processing/core/PShapeOBJ.java +97 -92
  74. data/src/main/java/processing/core/PShapeSVG.java +1705 -1490
  75. data/src/main/java/processing/core/PStyle.java +40 -37
  76. data/src/main/java/processing/core/PSurface.java +139 -97
  77. data/src/main/java/processing/core/PSurfaceNone.java +296 -218
  78. data/src/main/java/processing/core/PVector.java +997 -965
  79. data/src/main/java/processing/core/ThinkDifferent.java +15 -13
  80. data/src/main/java/processing/data/DoubleDict.java +756 -710
  81. data/src/main/java/processing/data/DoubleList.java +749 -696
  82. data/src/main/java/processing/data/FloatDict.java +748 -702
  83. data/src/main/java/processing/data/FloatList.java +751 -697
  84. data/src/main/java/processing/data/IntDict.java +720 -673
  85. data/src/main/java/processing/data/IntList.java +699 -633
  86. data/src/main/java/processing/data/JSONArray.java +931 -873
  87. data/src/main/java/processing/data/JSONObject.java +1262 -1165
  88. data/src/main/java/processing/data/JSONTokener.java +351 -341
  89. data/src/main/java/processing/data/LongDict.java +710 -663
  90. data/src/main/java/processing/data/LongList.java +701 -635
  91. data/src/main/java/processing/data/Sort.java +37 -41
  92. data/src/main/java/processing/data/StringDict.java +525 -486
  93. data/src/main/java/processing/data/StringList.java +626 -580
  94. data/src/main/java/processing/data/Table.java +3690 -3510
  95. data/src/main/java/processing/data/TableRow.java +182 -183
  96. data/src/main/java/processing/data/XML.java +957 -883
  97. data/src/main/java/processing/dxf/RawDXF.java +404 -0
  98. data/src/main/java/processing/event/Event.java +87 -67
  99. data/src/main/java/processing/event/KeyEvent.java +48 -41
  100. data/src/main/java/processing/event/MouseEvent.java +88 -113
  101. data/src/main/java/processing/event/TouchEvent.java +10 -6
  102. data/src/main/java/processing/javafx/PGraphicsFX2D.java +20 -345
  103. data/src/main/java/processing/javafx/PSurfaceFX.java +149 -121
  104. data/src/main/java/processing/net/Client.java +744 -0
  105. data/src/main/java/processing/net/Server.java +388 -0
  106. data/src/main/java/processing/opengl/FontTexture.java +289 -270
  107. data/src/main/java/processing/opengl/FrameBuffer.java +386 -364
  108. data/src/main/java/processing/opengl/LinePath.java +547 -500
  109. data/src/main/java/processing/opengl/LineStroker.java +588 -581
  110. data/src/main/java/processing/opengl/PGL.java +3047 -2914
  111. data/src/main/java/processing/opengl/PGraphics2D.java +408 -315
  112. data/src/main/java/processing/opengl/PGraphics3D.java +107 -72
  113. data/src/main/java/processing/opengl/PGraphicsOpenGL.java +12378 -12075
  114. data/src/main/java/processing/opengl/PJOGL.java +1753 -1670
  115. data/src/main/java/processing/opengl/PShader.java +1266 -1257
  116. data/src/main/java/processing/opengl/PShapeOpenGL.java +4678 -4580
  117. data/src/main/java/processing/opengl/PSurfaceJOGL.java +1114 -1027
  118. data/src/main/java/processing/opengl/Texture.java +1492 -1401
  119. data/src/main/java/processing/opengl/VertexBuffer.java +57 -55
  120. data/test/create_test.rb +21 -20
  121. data/test/deglut_spec_test.rb +4 -2
  122. data/test/helper_methods_test.rb +49 -20
  123. data/test/math_tool_test.rb +39 -32
  124. data/test/native_folder.rb +47 -0
  125. data/test/respond_to_test.rb +3 -2
  126. data/test/sketches/key_event.rb +2 -2
  127. data/test/sketches/library/my_library/my_library.rb +3 -0
  128. data/test/test_helper.rb +2 -0
  129. data/test/vecmath_spec_test.rb +35 -22
  130. data/vendors/Rakefile +33 -62
  131. metadata +56 -48
  132. data/src/main/java/processing/core/util/image/ImageLoadFacade.java +0 -161
  133. data/src/main/java/processing/core/util/image/ImageSaveFacade.java +0 -169
  134. data/src/main/java/processing/core/util/image/constants/TifConstants.java +0 -45
  135. data/src/main/java/processing/core/util/image/load/AwtImageLoadStrategy.java +0 -80
  136. data/src/main/java/processing/core/util/image/load/Base64StringImageLoadStrategy.java +0 -73
  137. data/src/main/java/processing/core/util/image/load/FallbackImageLoadStrategy.java +0 -70
  138. data/src/main/java/processing/core/util/image/load/ImageIoImageLoadStrategy.java +0 -132
  139. data/src/main/java/processing/core/util/image/load/ImageLoadStrategy.java +0 -48
  140. data/src/main/java/processing/core/util/image/load/ImageLoadUtil.java +0 -45
  141. data/src/main/java/processing/core/util/image/load/TgaImageLoadStrategy.java +0 -255
  142. data/src/main/java/processing/core/util/image/load/TiffImageLoadStrategy.java +0 -98
  143. data/src/main/java/processing/core/util/image/save/ImageSaveStrategy.java +0 -49
  144. data/src/main/java/processing/core/util/image/save/ImageSaveUtil.java +0 -48
  145. data/src/main/java/processing/core/util/image/save/ImageWriterImageSaveStrategy.java +0 -179
  146. data/src/main/java/processing/core/util/image/save/SaveImageException.java +0 -41
  147. data/src/main/java/processing/core/util/image/save/TgaImageSaveStrategy.java +0 -198
  148. data/src/main/java/processing/core/util/image/save/TiffImageSaveStrategy.java +0 -91
  149. data/src/main/java/processing/core/util/image/save/TiffNakedFilenameImageSaveStrategy.java +0 -57
  150. data/src/main/java/processing/core/util/io/InputFactory.java +0 -285
  151. data/src/main/java/processing/core/util/io/PathUtil.java +0 -109
  152. data/src/main/java/processing/opengl/shaders/LightVert-brcm.glsl +0 -154
  153. data/src/main/java/processing/opengl/shaders/LightVert-vc4.glsl +0 -154
  154. data/src/main/java/processing/opengl/shaders/TexLightVert-brcm.glsl +0 -160
  155. data/src/main/java/processing/opengl/shaders/TexLightVert-vc4.glsl +0 -160
@@ -1,9 +1,10 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require 'java'
3
4
  require_relative 'test_helper'
4
5
  require_relative '../lib/propane'
5
6
 
6
- METHODS = %i(
7
+ METHODS = %i[
7
8
  alpha
8
9
  ambient
9
10
  ambient_light
@@ -182,7 +183,7 @@ METHODS = %i(
182
183
  update_pixels
183
184
  vertex
184
185
  width
185
- )
186
+ ].freeze
186
187
 
187
188
  class TestSketch < Propane::App
188
189
  def settings
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env jruby
2
- require 'propane'
2
+ # frozen_string_literal: true
3
3
 
4
+ require 'propane'
4
5
 
5
6
  class CustomProxySketch < Propane::App
6
-
7
7
  # A simple demonstration of vanilla processing 'reflection' methods using
8
8
  # propane :library_proxy. See my_library.rb code for the guts.
9
9
  load_libraries :library_proxy, :my_library
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This class demonstrates how by inheriting from the abstract class LibraryProxy
2
4
  # we can access 'keyEvent' and 'draw' (Note we need a draw method even
3
5
  # though can be empty)
@@ -20,6 +22,7 @@ class MyLibrary < LibraryProxy
20
22
  def keyEvent(e) # NB: need camel case for reflection to work
21
23
  return unless e.get_action == KeyEvent::PRESS
22
24
  return if e.get_key > 122 # else we can't use :chr
25
+
23
26
  case e.get_key.chr.upcase
24
27
  when 'S'
25
28
  app.send :hide, false
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  gem 'minitest'
2
4
  require 'minitest/pride'
3
5
  require 'minitest/autorun'
@@ -1,14 +1,14 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'test_helper'
2
4
  require 'java'
3
5
  require_relative '../lib/propane'
4
6
 
5
7
  Java::Monkstone::PropaneLibrary.load(JRuby.runtime)
6
8
 
7
-
8
9
  Dir.chdir(File.dirname(__FILE__))
9
-
10
+ # Vecmath Test class
10
11
  class VecmathTest < Minitest::Test
11
-
12
12
  # duck for Vec2D constructor
13
13
  Point = Struct.new(:x, :y)
14
14
  # duck for Vec3D constructor
@@ -17,12 +17,11 @@ class VecmathTest < Minitest::Test
17
17
  Pointless = Struct.new(:a, :b)
18
18
  # non-duck to test fail
19
19
  Pointless3 = Struct.new(:a, :b, :c)
20
- def setup
21
-
22
- end
20
+ def setup; end
23
21
 
24
22
  def test_equals
25
- x, y = 1.0000001, 1.01
23
+ x = 1.0000001
24
+ y = 1.01
26
25
  a = Vec2D.new(x, y)
27
26
  assert_equal(a.to_a, [x, y], 'Failed to return Vec2D as an Array')
28
27
  end
@@ -34,7 +33,8 @@ class VecmathTest < Minitest::Test
34
33
  end
35
34
 
36
35
  def test_copy_equals
37
- x, y = 1.0000001, 1.01
36
+ x = 1.0000001
37
+ y = 1.01
38
38
  a = Vec2D.new(x, y)
39
39
  b = a.copy
40
40
  assert_equal(a.to_a, b.to_a, 'Failed deep copy')
@@ -47,20 +47,23 @@ class VecmathTest < Minitest::Test
47
47
  end
48
48
 
49
49
  def test_constructor_fixnum
50
- val = Point.new(1, 8) # duck type fixnum
50
+ # duck type fixnum
51
+ val = Point.new(1, 8)
51
52
  expected = Vec2D.new(val)
52
53
  assert_equal(expected, Vec2D.new(1.0, 8.0), 'Failed duck type constructor fixnum')
53
54
  end
54
55
 
55
56
  def test_failed_duck_type
56
- val = Pointless.new(1.0, 8.0) # non duck type
57
+ # non duck type
58
+ val = Pointless.new(1.0, 8.0)
57
59
  assert_raises TypeError do
58
60
  Vec2D.new(val)
59
61
  end
60
62
  end
61
63
 
62
64
  def test_copy_not_equals
63
- x, y = 1.0000001, 1.01
65
+ x = 1.0000001
66
+ y = 1.01
64
67
  a = Vec2D.new(x, y)
65
68
  b = a.copy
66
69
  b *= 0
@@ -121,7 +124,7 @@ class VecmathTest < Minitest::Test
121
124
 
122
125
  def test_random
123
126
  a = Vec2D.random
124
- assert a.kind_of? Vec2D
127
+ assert a.is_a? Vec2D
125
128
  assert_in_epsilon(a.mag, 1.0)
126
129
  end
127
130
 
@@ -133,7 +136,7 @@ class VecmathTest < Minitest::Test
133
136
 
134
137
  def test_mag
135
138
  a = Vec2D.new(-3, -4)
136
- assert_in_epsilon(a.mag, 5, 0.001,'Failed to return magnitude of vector')
139
+ assert_in_epsilon(a.mag, 5, 0.001, 'Failed to return magnitude of vector')
137
140
  end
138
141
 
139
142
  def test_mag_variant
@@ -233,14 +236,16 @@ class VecmathTest < Minitest::Test
233
236
  end
234
237
 
235
238
  def test_rotate
236
- x, y = 20, 10
239
+ x = 20
240
+ y = 10
237
241
  b = Vec2D.new(x, y)
238
242
  a = b.rotate(Math::PI / 2)
239
243
  assert_equal(a, Vec2D.new(-10, 20), 'Failed to rotate vector by scalar radians')
240
244
  end
241
245
 
242
246
  def test_hash_index
243
- x, y = 10, 20
247
+ x = 10
248
+ y = 20
244
249
  b = Vec2D.new(x, y)
245
250
  assert_equal(b[:x], x, 'Failed to hash index')
246
251
  end
@@ -275,7 +280,7 @@ class VecmathTest < Minitest::Test
275
280
  a = Vec2D.new(200, 0)
276
281
  b = Vec2D.new(0, 200)
277
282
  # Expected result is an area, twice that of the triangle created by the vectors
278
- assert_equal((a).cross(b).abs, 40_000.0, 'Failed area test using 2D vector cross product')
283
+ assert_equal(a.cross(b).abs, 40_000.0, 'Failed area test using 2D vector cross product')
279
284
  end
280
285
 
281
286
  def test_cross_non_zero # Could be used to calculate area of triangle
@@ -294,7 +299,9 @@ class VecmathTest < Minitest::Test
294
299
  end
295
300
 
296
301
  def test_equals3
297
- x, y, z = 1.0000001, 1.01, 0.0
302
+ x = 1.0000001
303
+ y = 1.01
304
+ z = 0.0
298
305
  a = Vec3D.new(x, y)
299
306
  assert_equal(a.to_a, [x, y, z], 'Failed to return Vec3D as an Array')
300
307
  end
@@ -325,14 +332,18 @@ class VecmathTest < Minitest::Test
325
332
  end
326
333
 
327
334
  def test_copy_equals3
328
- x, y, z = 1.0000001, 1.01, 1
335
+ x = 1.0000001
336
+ y = 1.01
337
+ z = 1
329
338
  a = Vec3D.new(x, y, z)
330
339
  b = a.copy
331
340
  assert_equal(a.to_a, b.to_a, 'Failed deep copy')
332
341
  end
333
342
 
334
343
  def test_copy_not_equals3
335
- x, y, z = 1.0000001, 1.01, 6.0
344
+ x = 1.0000001
345
+ y = 1.01
346
+ z = 6.0
336
347
  a = Vec3D.new(x, y, z)
337
348
  b = a.copy
338
349
  b *= 0
@@ -377,13 +388,13 @@ class VecmathTest < Minitest::Test
377
388
 
378
389
  def test_random3
379
390
  a = Vec3D.random
380
- assert a.kind_of? Vec3D
391
+ assert a.is_a? Vec3D
381
392
  assert_in_epsilon(a.mag, 1.0)
382
393
  end
383
394
 
384
395
  def test_assign_value3
385
396
  a = Vec3D.new(3, 5)
386
- a.x=23
397
+ a.x = 23
387
398
  assert_equal(a.x, 23, 'Failed to assign x value')
388
399
  end
389
400
 
@@ -512,7 +523,9 @@ class VecmathTest < Minitest::Test
512
523
  end
513
524
 
514
525
  def test_hash_key3
515
- x, y, z = 10, 20, 50
526
+ x = 10
527
+ y = 20
528
+ z = 50
516
529
  b = Vec3D.new(x, y, z)
517
530
  assert_equal(b[:x], x, 'Failed hash key access')
518
531
  assert_equal(b[:y], y, 'Failed hash key access')
@@ -1,93 +1,76 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require 'rake/clean'
3
4
 
4
- WARNING = <<-EOS
5
+ WARNING = <<-WGET
5
6
  WARNING: you may not have wget installed, you could just download
6
7
  the correct version of propane-examples (see EXAMPLES vendors directory)
7
- EOS
8
- SOUND = 'sound.zip'.freeze
9
- SOUND_VERSION = 'v1.3.2' # version 1.3.2
10
- GLVIDEO = 'processing-glvideo.zip'
11
- VIDEO = 'video-2.zip'
12
- VIDEO_VERSION = '2' # version 1.0.1
13
- EXAMPLES = '2.5'.freeze
8
+ WGET
9
+ SOUND = 'sound.zip'
10
+ PROCESSING_GITHUB = 'https://github.com/processing'
11
+ PROPANE_EXAMPLES = 'https://github.com/ruby-processing/propane-examples'
12
+ VIDEO = 'video.zip'
13
+ DOWNLOAD = 'releases/download/latest'
14
+ EXAMPLES = '2.9'
14
15
  HOME_DIR = ENV['HOME']
15
- MAC_OR_LINUX = /linux|mac|darwin/ =~ RbConfig::CONFIG['host_os']
16
+ LIBRARY = File.join(HOME_DIR, '.propane', 'libraries')
17
+ MAC_OR_LINUX = /linux|mac|darwin/.match?(RbConfig::CONFIG['host_os'])
16
18
 
17
- CLOBBER.include(EXAMPLES, SOUND, GLVIDEO, VIDEO)
19
+ CLOBBER.include(EXAMPLES, SOUND, VIDEO)
18
20
 
19
21
  desc 'download, and copy propane examples'
20
22
  task default: [:download_and_copy_samples]
21
23
 
22
24
  desc 'download and copy examples to user home'
23
- task download_and_copy_samples: [:download_examples, :copy_examples]
25
+ task download_and_copy_samples: %i[download_examples copy_examples]
24
26
 
25
27
  task :download_examples
26
28
  file_name = MAC_OR_LINUX.nil? ? "#{EXAMPLES}.zip" : "#{EXAMPLES}.tar.gz"
27
- wget_base = 'wget https://github.com/ruby-processing/propane-examples'
29
+ wget_base = ['wget', PROPANE_EXAMPLES].join(' ')
28
30
  wget_string = [wget_base, 'archive', file_name].join('/')
29
31
  file file_name do
30
32
  begin
31
33
  sh wget_string
32
- rescue
34
+ rescue StandardError
33
35
  warn(WARNING)
34
36
  end
35
37
  end
36
38
 
37
39
  desc 'download and copy sound library to ~/.propane'
38
- task download_and_copy_sound: [:init_dir, :download_sound, :copy_sound, :clobber]
40
+ task download_and_copy_sound: %i[init_dir download_sound copy_sound clobber]
39
41
 
40
42
  desc 'download and copy video library to ~/.propane'
41
- task download_and_copy_video: [:init_dir, :download_video, :copy_video, :clobber]
42
-
43
- desc 'download and copy glvideo library to ~/.propane'
44
- task download_and_copy_glvideo: [:init_dir, :download_glvideo, :copy_glvideo, :clobber]
45
-
43
+ task download_and_copy_video: %i[init_dir download_video copy_video clobber]
46
44
 
47
45
  desc 'download sound library'
48
46
  task :download_sound do
49
- wget_base = 'wget https://github.com/processing/processing-sound'
50
- wget_string = [wget_base, 'releases/download', SOUND_VERSION, SOUND].join('/')
47
+ wget_base = ['wget', PROCESSING_GITHUB].join(' ')
48
+ wget_string = [wget_base, 'processing-sound', DOWNLOAD, SOUND].join('/')
51
49
  begin
52
50
  sh wget_string
53
- rescue
51
+ rescue StandardError
54
52
  warn(WARNING)
55
53
  end
56
54
  end
57
55
 
58
- desc 'download glvideo library'
59
- task :download_glvideo do
60
- wget_base = 'wget https://github.com/gohai/processing-glvideo'
61
- wget_string = [wget_base, 'releases/download/latest', GLVIDEO].join('/')
62
- begin
63
- sh wget_string
64
- rescue
65
- warn(WARNING)
66
- end
56
+ desc 'initialize ~/.propane directories'
57
+ task :init_dir do
58
+ FileUtils.mkdir_p LIBRARY unless File.exist? LIBRARY
67
59
  end
68
60
 
69
61
  desc 'download video library'
70
62
  task :download_video do
71
- wget_base = 'wget https://github.com/processing/processing-video'
72
- wget_string = [wget_base, 'releases/download', VIDEO_VERSION, VIDEO].join('/')
63
+ wget_base = ['wget', PROCESSING_GITHUB].join(' ')
64
+ wget_string = [wget_base, 'processing-video', DOWNLOAD, VIDEO].join('/')
73
65
  begin
74
66
  sh wget_string
75
- rescue
67
+ rescue StandardError
76
68
  warn(WARNING)
77
69
  end
78
70
  end
79
71
 
80
- desc 'initialize ~/.propane directories'
81
- task :init_dir do
82
- unless File.exist? "#{HOME_DIR}/.propane/libraries"
83
- sh "mkdir -p ~/.propane"
84
- sh "mkdir -p ~/.propane/libraries"
85
- end
86
- end
87
-
88
-
89
72
  desc 'copy examples'
90
- task :copy_examples => file_name do
73
+ task copy_examples: file_name do
91
74
  if MAC_OR_LINUX.nil?
92
75
  sh "unzip #{EXAMPLES}.zip"
93
76
  else
@@ -99,29 +82,17 @@ task :copy_examples => file_name do
99
82
  end
100
83
 
101
84
  desc 'copy sound library'
102
- task :copy_sound => SOUND do
103
- directory "~/.propane"
104
- directory "~/.propane/libraries"
85
+ task copy_sound: SOUND do
105
86
  sh "unzip #{SOUND}"
106
- sh "rm -r #{HOME_DIR}/.propane/libraries/sound" if File.exist? "#{HOME_DIR}/.propane/libraries/sound"
107
- sh "cp -r sound #{HOME_DIR}/.propane/libraries"
87
+ sh "rm -r #{LIBRARY}/sound" if File.exist? "#{LIBRARY}/sound"
88
+ sh "cp -r sound #{LIBRARY}"
108
89
  sh 'rm -r sound'
109
- sh 'rm -r __MACOSX'
110
90
  end
111
91
 
112
92
  desc 'copy video library'
113
- task :copy_video => VIDEO do
93
+ task copy_video: VIDEO do
114
94
  sh "unzip #{VIDEO}"
115
- sh "rm -r #{HOME_DIR}/.propane/libraries/video" if File.exist? "#{HOME_DIR}/.propane/libraries/video"
116
- sh "cp -r video #{HOME_DIR}/.propane/libraries/video"
95
+ sh "rm -r #{LIBRARY}/video" if File.exist? "#{LIBRARY}/video"
96
+ sh "cp -r video #{LIBRARY}"
117
97
  sh 'rm -r video'
118
98
  end
119
-
120
- desc 'copy glvideo library'
121
- task :copy_glvideo => GLVIDEO do
122
- directory "~/.propane/libraries/glvideo"
123
- sh "unzip #{GLVIDEO}"
124
- sh "rm -r #{HOME_DIR}/.propane/libraries/glvideo" if File.exist? "#{HOME_DIR}/.propane/libraries/glvideo"
125
- sh "cp -r glvideo #{HOME_DIR}/.propane/libraries/glvideo"
126
- sh 'rm -r glvideo'
127
- end
metadata CHANGED
@@ -1,63 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: propane
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.0
4
+ version: 3.7.0.pre
5
5
  platform: java
6
6
  authors:
7
7
  - monkstone
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-01 00:00:00.000000000 Z
11
+ date: 2021-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rake
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '12.3'
18
+ version: 0.1.0
19
+ - - ">="
20
+ - !ruby/object:Gem::Version
21
+ version: 0.1.3
22
+ name: jruby-openssl
20
23
  type: :development
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: '12.3'
29
+ version: 0.1.0
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 0.1.3
27
33
  - !ruby/object:Gem::Dependency
28
- name: minitest
29
34
  requirement: !ruby/object:Gem::Requirement
30
35
  requirements:
31
36
  - - "~>"
32
37
  - !ruby/object:Gem::Version
33
- version: '5.11'
38
+ version: '5.14'
39
+ name: minitest
34
40
  type: :development
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '5.11'
46
+ version: '5.14'
41
47
  - !ruby/object:Gem::Dependency
42
- name: arcball
43
48
  requirement: !ruby/object:Gem::Requirement
44
49
  requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: 1.0.0
48
50
  - - "~>"
49
51
  - !ruby/object:Gem::Version
50
- version: '1.0'
52
+ version: '12.3'
53
+ name: rake
51
54
  type: :runtime
52
55
  prerelease: false
53
56
  version_requirements: !ruby/object:Gem::Requirement
54
57
  requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '12.3'
61
+ - !ruby/object:Gem::Dependency
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - "~>"
65
+ - !ruby/object:Gem::Version
66
+ version: '1.0'
55
67
  - - ">="
56
68
  - !ruby/object:Gem::Version
57
- version: 1.0.0
69
+ version: 1.0.2
70
+ name: arcball
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
58
75
  - - "~>"
59
76
  - !ruby/object:Gem::Version
60
77
  version: '1.0'
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: 1.0.2
61
81
  description: " A batteries included version of processing in ruby targetting jdk11.\n"
62
82
  email:
63
83
  - mamba2928@yahoo.co.uk
@@ -83,15 +103,16 @@ files:
83
103
  - lib/.gitignore
84
104
  - lib/PROCESSING_LICENSE.txt
85
105
  - lib/export.txt
106
+ - lib/gluegen-rt-natives-ios-arm64.jar
86
107
  - lib/gluegen-rt-natives-linux-amd64.jar
87
108
  - lib/gluegen-rt-natives-macosx-universal.jar
88
109
  - lib/gluegen-rt-natives-windows-amd64.jar
89
110
  - lib/gluegen-rt.jar
111
+ - lib/jogl-all-natives-ios-arm64.jar
90
112
  - lib/jogl-all-natives-linux-amd64.jar
91
- - lib/jogl-all-natives-macosx-universal.jar
92
113
  - lib/jogl-all-natives-windows-amd64.jar
93
114
  - lib/jogl-all.jar
94
- - lib/propane-3.4.0.jar
115
+ - lib/propane-3.7.0.pre.jar
95
116
  - lib/propane.rb
96
117
  - lib/propane/app.rb
97
118
  - lib/propane/creators/sketch_class.rb
@@ -107,11 +128,14 @@ files:
107
128
  - lib/propane/runner.rb
108
129
  - lib/propane/version.rb
109
130
  - library/boids/boids.rb
131
+ - library/color_group/color_group.rb
110
132
  - library/control_panel/control_panel.rb
133
+ - library/dxf/dxf.rb
111
134
  - library/file_chooser/chooser.rb
112
135
  - library/file_chooser/file_chooser.rb
113
136
  - library/library_proxy/README.md
114
137
  - library/library_proxy/library_proxy.rb
138
+ - library/net/net.rb
115
139
  - library/simplex_noise/simplex_noise.rb
116
140
  - library/slider/slider.rb
117
141
  - library/vector_utils/vector_utils.rb
@@ -149,11 +173,14 @@ files:
149
173
  - src/main/java/monkstone/vecmath/vec2/package-info.java
150
174
  - src/main/java/monkstone/vecmath/vec3/Vec3.java
151
175
  - src/main/java/monkstone/vecmath/vec3/package-info.java
152
- - src/main/java/monkstone/videoevent/VideoInterface.java
176
+ - src/main/java/monkstone/videoevent/CaptureEvent.java
177
+ - src/main/java/monkstone/videoevent/MovieEvent.java
153
178
  - src/main/java/monkstone/videoevent/package-info.java
154
179
  - src/main/java/processing/awt/PGraphicsJava2D.java
180
+ - src/main/java/processing/awt/PImageAWT.java
155
181
  - src/main/java/processing/awt/PShapeJava2D.java
156
182
  - src/main/java/processing/awt/PSurfaceAWT.java
183
+ - src/main/java/processing/awt/ShimAWT.java
157
184
  - src/main/java/processing/core/PApplet.java
158
185
  - src/main/java/processing/core/PConstants.java
159
186
  - src/main/java/processing/core/PFont.java
@@ -170,26 +197,6 @@ files:
170
197
  - src/main/java/processing/core/PSurfaceNone.java
171
198
  - src/main/java/processing/core/PVector.java
172
199
  - src/main/java/processing/core/ThinkDifferent.java
173
- - src/main/java/processing/core/util/image/ImageLoadFacade.java
174
- - src/main/java/processing/core/util/image/ImageSaveFacade.java
175
- - src/main/java/processing/core/util/image/constants/TifConstants.java
176
- - src/main/java/processing/core/util/image/load/AwtImageLoadStrategy.java
177
- - src/main/java/processing/core/util/image/load/Base64StringImageLoadStrategy.java
178
- - src/main/java/processing/core/util/image/load/FallbackImageLoadStrategy.java
179
- - src/main/java/processing/core/util/image/load/ImageIoImageLoadStrategy.java
180
- - src/main/java/processing/core/util/image/load/ImageLoadStrategy.java
181
- - src/main/java/processing/core/util/image/load/ImageLoadUtil.java
182
- - src/main/java/processing/core/util/image/load/TgaImageLoadStrategy.java
183
- - src/main/java/processing/core/util/image/load/TiffImageLoadStrategy.java
184
- - src/main/java/processing/core/util/image/save/ImageSaveStrategy.java
185
- - src/main/java/processing/core/util/image/save/ImageSaveUtil.java
186
- - src/main/java/processing/core/util/image/save/ImageWriterImageSaveStrategy.java
187
- - src/main/java/processing/core/util/image/save/SaveImageException.java
188
- - src/main/java/processing/core/util/image/save/TgaImageSaveStrategy.java
189
- - src/main/java/processing/core/util/image/save/TiffImageSaveStrategy.java
190
- - src/main/java/processing/core/util/image/save/TiffNakedFilenameImageSaveStrategy.java
191
- - src/main/java/processing/core/util/io/InputFactory.java
192
- - src/main/java/processing/core/util/io/PathUtil.java
193
200
  - src/main/java/processing/data/DoubleDict.java
194
201
  - src/main/java/processing/data/DoubleList.java
195
202
  - src/main/java/processing/data/FloatDict.java
@@ -207,12 +214,15 @@ files:
207
214
  - src/main/java/processing/data/Table.java
208
215
  - src/main/java/processing/data/TableRow.java
209
216
  - src/main/java/processing/data/XML.java
217
+ - src/main/java/processing/dxf/RawDXF.java
210
218
  - src/main/java/processing/event/Event.java
211
219
  - src/main/java/processing/event/KeyEvent.java
212
220
  - src/main/java/processing/event/MouseEvent.java
213
221
  - src/main/java/processing/event/TouchEvent.java
214
222
  - src/main/java/processing/javafx/PGraphicsFX2D.java
215
223
  - src/main/java/processing/javafx/PSurfaceFX.java
224
+ - src/main/java/processing/net/Client.java
225
+ - src/main/java/processing/net/Server.java
216
226
  - src/main/java/processing/opengl/FontTexture.java
217
227
  - src/main/java/processing/opengl/FrameBuffer.java
218
228
  - src/main/java/processing/opengl/LinePath.java
@@ -237,8 +247,6 @@ files:
237
247
  - src/main/java/processing/opengl/shaders/ColorFrag.glsl
238
248
  - src/main/java/processing/opengl/shaders/ColorVert.glsl
239
249
  - src/main/java/processing/opengl/shaders/LightFrag.glsl
240
- - src/main/java/processing/opengl/shaders/LightVert-brcm.glsl
241
- - src/main/java/processing/opengl/shaders/LightVert-vc4.glsl
242
250
  - src/main/java/processing/opengl/shaders/LightVert.glsl
243
251
  - src/main/java/processing/opengl/shaders/LineFrag.glsl
244
252
  - src/main/java/processing/opengl/shaders/LineVert.glsl
@@ -247,8 +255,6 @@ files:
247
255
  - src/main/java/processing/opengl/shaders/PointVert.glsl
248
256
  - src/main/java/processing/opengl/shaders/TexFrag.glsl
249
257
  - src/main/java/processing/opengl/shaders/TexLightFrag.glsl
250
- - src/main/java/processing/opengl/shaders/TexLightVert-brcm.glsl
251
- - src/main/java/processing/opengl/shaders/TexLightVert-vc4.glsl
252
258
  - src/main/java/processing/opengl/shaders/TexLightVert.glsl
253
259
  - src/main/java/processing/opengl/shaders/TexVert.glsl
254
260
  - src/main/resources/icon/icon-1024.png
@@ -264,6 +270,7 @@ files:
264
270
  - test/deglut_spec_test.rb
265
271
  - test/helper_methods_test.rb
266
272
  - test/math_tool_test.rb
273
+ - test/native_folder.rb
267
274
  - test/respond_to_test.rb
268
275
  - test/sketches/key_event.rb
269
276
  - test/sketches/library/my_library/my_library.rb
@@ -275,7 +282,7 @@ licenses:
275
282
  - GPL-3.0
276
283
  - LGPL-2.0
277
284
  metadata: {}
278
- post_install_message:
285
+ post_install_message:
279
286
  rdoc_options: []
280
287
  require_paths:
281
288
  - lib
@@ -286,13 +293,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
286
293
  version: '0'
287
294
  required_rubygems_version: !ruby/object:Gem::Requirement
288
295
  requirements:
289
- - - ">="
296
+ - - ">"
290
297
  - !ruby/object:Gem::Version
291
- version: '0'
298
+ version: 1.3.1
292
299
  requirements:
293
- - java runtime >= 11.0.2+
294
- rubygems_version: 3.0.4
295
- signing_key:
300
+ - java runtime >= 11.0.7+
301
+ rubygems_version: 3.0.6
302
+ signing_key:
296
303
  specification_version: 4
297
304
  summary: ruby implementation of processing-4.0 on MacOS, linux and windows (64bit
298
305
  only)
@@ -301,6 +308,7 @@ test_files:
301
308
  - test/deglut_spec_test.rb
302
309
  - test/helper_methods_test.rb
303
310
  - test/math_tool_test.rb
311
+ - test/native_folder.rb
304
312
  - test/respond_to_test.rb
305
313
  - test/sketches/key_event.rb
306
314
  - test/sketches/library/my_library/my_library.rb