propane 3.4.0-java → 3.7.0.pre-java

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 (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