propane 3.3.1-java → 3.6.0-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 (157) hide show
  1. checksums.yaml +4 -4
  2. data/.mvn/extensions.xml +1 -2
  3. data/.mvn/wrapper/MavenWrapperDownloader.java +117 -0
  4. data/.mvn/wrapper/maven-wrapper.properties +2 -3
  5. data/.travis.yml +9 -0
  6. data/CHANGELOG.md +17 -5
  7. data/Gemfile +2 -0
  8. data/README.md +17 -8
  9. data/Rakefile +16 -30
  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 +21 -15
  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/mvnw +127 -51
  38. data/mvnw.cmd +182 -145
  39. data/pom.rb +53 -50
  40. data/pom.xml +17 -8
  41. data/propane.gemspec +13 -11
  42. data/src/main/java/monkstone/ColorUtil.java +13 -1
  43. data/src/main/java/monkstone/MathToolModule.java +253 -203
  44. data/src/main/java/monkstone/PropaneLibrary.java +2 -2
  45. data/src/main/java/monkstone/fastmath/Deglut.java +1 -1
  46. data/src/main/java/monkstone/filechooser/Chooser.java +2 -1
  47. data/src/main/java/monkstone/noise/SimplexNoise.java +2 -2
  48. data/src/main/java/monkstone/slider/CustomHorizontalSlider.java +1 -1
  49. data/src/main/java/monkstone/slider/CustomVerticalSlider.java +1 -1
  50. data/src/main/java/monkstone/slider/SimpleHorizontalSlider.java +1 -1
  51. data/src/main/java/monkstone/slider/SimpleVerticalSlider.java +1 -1
  52. data/src/main/java/monkstone/slider/SliderBar.java +1 -1
  53. data/src/main/java/monkstone/slider/SliderGroup.java +1 -1
  54. data/src/main/java/monkstone/slider/WheelHandler.java +7 -6
  55. data/src/main/java/monkstone/vecmath/package-info.java +1 -1
  56. data/src/main/java/monkstone/vecmath/vec2/Vec2.java +2 -2
  57. data/src/main/java/monkstone/vecmath/vec3/Vec3.java +1 -1
  58. data/src/main/java/monkstone/videoevent/CaptureEvent.java +27 -0
  59. data/src/main/java/monkstone/videoevent/{VideoInterface.java → MovieEvent.java} +11 -27
  60. data/src/main/java/monkstone/videoevent/package-info.java +1 -1
  61. data/src/main/java/processing/awt/PGraphicsJava2D.java +2164 -1661
  62. data/src/main/java/processing/awt/PImageAWT.java +377 -0
  63. data/src/main/java/processing/awt/PShapeJava2D.java +280 -268
  64. data/src/main/java/processing/awt/PSurfaceAWT.java +942 -829
  65. data/src/main/java/processing/awt/ShimAWT.java +581 -0
  66. data/src/main/java/processing/core/PApplet.java +831 -824
  67. data/src/main/java/processing/core/PConstants.java +477 -447
  68. data/src/main/java/processing/core/PFont.java +914 -880
  69. data/src/main/java/processing/core/PGraphics.java +229 -213
  70. data/src/main/java/processing/core/PImage.java +620 -318
  71. data/src/main/java/processing/core/PMatrix.java +172 -159
  72. data/src/main/java/processing/core/PMatrix2D.java +478 -409
  73. data/src/main/java/processing/core/PMatrix3D.java +762 -735
  74. data/src/main/java/processing/core/PShape.java +2888 -2652
  75. data/src/main/java/processing/core/PShapeOBJ.java +436 -415
  76. data/src/main/java/processing/core/PShapeSVG.java +1702 -1479
  77. data/src/main/java/processing/core/PStyle.java +40 -37
  78. data/src/main/java/processing/core/PSurface.java +139 -97
  79. data/src/main/java/processing/core/PSurfaceNone.java +296 -208
  80. data/src/main/java/processing/core/PVector.java +997 -965
  81. data/src/main/java/processing/core/ThinkDifferent.java +12 -17
  82. data/src/main/java/processing/data/DoubleDict.java +756 -710
  83. data/src/main/java/processing/data/DoubleList.java +749 -696
  84. data/src/main/java/processing/data/FloatDict.java +748 -702
  85. data/src/main/java/processing/data/FloatList.java +751 -697
  86. data/src/main/java/processing/data/IntDict.java +720 -673
  87. data/src/main/java/processing/data/IntList.java +699 -633
  88. data/src/main/java/processing/data/JSONArray.java +931 -873
  89. data/src/main/java/processing/data/JSONObject.java +1262 -1165
  90. data/src/main/java/processing/data/JSONTokener.java +351 -341
  91. data/src/main/java/processing/data/LongDict.java +710 -663
  92. data/src/main/java/processing/data/LongList.java +701 -635
  93. data/src/main/java/processing/data/Sort.java +37 -41
  94. data/src/main/java/processing/data/StringDict.java +525 -486
  95. data/src/main/java/processing/data/StringList.java +626 -580
  96. data/src/main/java/processing/data/Table.java +3690 -3510
  97. data/src/main/java/processing/data/TableRow.java +182 -183
  98. data/src/main/java/processing/data/XML.java +957 -883
  99. data/src/main/java/processing/dxf/RawDXF.java +404 -0
  100. data/src/main/java/processing/event/Event.java +87 -66
  101. data/src/main/java/processing/event/KeyEvent.java +48 -41
  102. data/src/main/java/processing/event/MouseEvent.java +88 -113
  103. data/src/main/java/processing/event/TouchEvent.java +10 -6
  104. data/src/main/java/processing/javafx/PGraphicsFX2D.java +20 -345
  105. data/src/main/java/processing/javafx/PSurfaceFX.java +149 -121
  106. data/src/main/java/processing/net/Client.java +744 -0
  107. data/src/main/java/processing/net/Server.java +388 -0
  108. data/src/main/java/processing/opengl/FontTexture.java +289 -270
  109. data/src/main/java/processing/opengl/FrameBuffer.java +386 -364
  110. data/src/main/java/processing/opengl/LinePath.java +547 -500
  111. data/src/main/java/processing/opengl/LineStroker.java +588 -581
  112. data/src/main/java/processing/opengl/PGL.java +3047 -2914
  113. data/src/main/java/processing/opengl/PGraphics2D.java +408 -315
  114. data/src/main/java/processing/opengl/PGraphics3D.java +107 -72
  115. data/src/main/java/processing/opengl/PGraphicsOpenGL.java +12378 -12075
  116. data/src/main/java/processing/opengl/PJOGL.java +1753 -1670
  117. data/src/main/java/processing/opengl/PShader.java +1266 -1257
  118. data/src/main/java/processing/opengl/PShapeOpenGL.java +4678 -4580
  119. data/src/main/java/processing/opengl/PSurfaceJOGL.java +1114 -1027
  120. data/src/main/java/processing/opengl/Texture.java +1492 -1401
  121. data/src/main/java/processing/opengl/VertexBuffer.java +57 -55
  122. data/test/create_test.rb +21 -20
  123. data/test/deglut_spec_test.rb +4 -2
  124. data/test/helper_methods_test.rb +49 -20
  125. data/test/math_tool_test.rb +39 -32
  126. data/test/native_folder.rb +47 -0
  127. data/test/respond_to_test.rb +3 -2
  128. data/test/sketches/key_event.rb +2 -2
  129. data/test/sketches/library/my_library/my_library.rb +3 -0
  130. data/test/test_helper.rb +2 -0
  131. data/test/vecmath_spec_test.rb +35 -22
  132. data/vendors/Rakefile +33 -62
  133. metadata +54 -45
  134. data/src/main/java/processing/core/util/image/ImageLoadFacade.java +0 -161
  135. data/src/main/java/processing/core/util/image/ImageSaveFacade.java +0 -169
  136. data/src/main/java/processing/core/util/image/constants/TifConstants.java +0 -45
  137. data/src/main/java/processing/core/util/image/load/AwtImageLoadStrategy.java +0 -80
  138. data/src/main/java/processing/core/util/image/load/Base64StringImageLoadStrategy.java +0 -73
  139. data/src/main/java/processing/core/util/image/load/FallbackImageLoadStrategy.java +0 -70
  140. data/src/main/java/processing/core/util/image/load/ImageIoImageLoadStrategy.java +0 -132
  141. data/src/main/java/processing/core/util/image/load/ImageLoadStrategy.java +0 -48
  142. data/src/main/java/processing/core/util/image/load/ImageLoadUtil.java +0 -45
  143. data/src/main/java/processing/core/util/image/load/TgaImageLoadStrategy.java +0 -255
  144. data/src/main/java/processing/core/util/image/load/TiffImageLoadStrategy.java +0 -98
  145. data/src/main/java/processing/core/util/image/save/ImageSaveStrategy.java +0 -49
  146. data/src/main/java/processing/core/util/image/save/ImageSaveUtil.java +0 -48
  147. data/src/main/java/processing/core/util/image/save/ImageWriterImageSaveStrategy.java +0 -179
  148. data/src/main/java/processing/core/util/image/save/SaveImageException.java +0 -41
  149. data/src/main/java/processing/core/util/image/save/TgaImageSaveStrategy.java +0 -198
  150. data/src/main/java/processing/core/util/image/save/TiffImageSaveStrategy.java +0 -91
  151. data/src/main/java/processing/core/util/image/save/TiffNakedFilenameImageSaveStrategy.java +0 -57
  152. data/src/main/java/processing/core/util/io/InputFactory.java +0 -285
  153. data/src/main/java/processing/core/util/io/PathUtil.java +0 -109
  154. data/src/main/java/processing/opengl/shaders/LightVert-brcm.glsl +0 -154
  155. data/src/main/java/processing/opengl/shaders/LightVert-vc4.glsl +0 -154
  156. data/src/main/java/processing/opengl/shaders/TexLightVert-brcm.glsl +0 -160
  157. 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.3.1
4
+ version: 3.6.0
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-05-05 00:00:00.000000000 Z
11
+ date: 2020-12-13 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.10'
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.10'
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
@@ -70,7 +90,9 @@ files:
70
90
  - ".github/ISSUE_TEMPLATE.md"
71
91
  - ".gitignore"
72
92
  - ".mvn/extensions.xml"
93
+ - ".mvn/wrapper/MavenWrapperDownloader.java"
73
94
  - ".mvn/wrapper/maven-wrapper.properties"
95
+ - ".travis.yml"
74
96
  - ".yardopts"
75
97
  - CHANGELOG.md
76
98
  - Gemfile
@@ -89,7 +111,7 @@ files:
89
111
  - lib/jogl-all-natives-macosx-universal.jar
90
112
  - lib/jogl-all-natives-windows-amd64.jar
91
113
  - lib/jogl-all.jar
92
- - lib/propane-3.3.0.jar
114
+ - lib/propane-3.6.0.jar
93
115
  - lib/propane.rb
94
116
  - lib/propane/app.rb
95
117
  - lib/propane/creators/sketch_class.rb
@@ -105,11 +127,14 @@ files:
105
127
  - lib/propane/runner.rb
106
128
  - lib/propane/version.rb
107
129
  - library/boids/boids.rb
130
+ - library/color_group/color_group.rb
108
131
  - library/control_panel/control_panel.rb
132
+ - library/dxf/dxf.rb
109
133
  - library/file_chooser/chooser.rb
110
134
  - library/file_chooser/file_chooser.rb
111
135
  - library/library_proxy/README.md
112
136
  - library/library_proxy/library_proxy.rb
137
+ - library/net/net.rb
113
138
  - library/simplex_noise/simplex_noise.rb
114
139
  - library/slider/slider.rb
115
140
  - library/vector_utils/vector_utils.rb
@@ -147,11 +172,14 @@ files:
147
172
  - src/main/java/monkstone/vecmath/vec2/package-info.java
148
173
  - src/main/java/monkstone/vecmath/vec3/Vec3.java
149
174
  - src/main/java/monkstone/vecmath/vec3/package-info.java
150
- - src/main/java/monkstone/videoevent/VideoInterface.java
175
+ - src/main/java/monkstone/videoevent/CaptureEvent.java
176
+ - src/main/java/monkstone/videoevent/MovieEvent.java
151
177
  - src/main/java/monkstone/videoevent/package-info.java
152
178
  - src/main/java/processing/awt/PGraphicsJava2D.java
179
+ - src/main/java/processing/awt/PImageAWT.java
153
180
  - src/main/java/processing/awt/PShapeJava2D.java
154
181
  - src/main/java/processing/awt/PSurfaceAWT.java
182
+ - src/main/java/processing/awt/ShimAWT.java
155
183
  - src/main/java/processing/core/PApplet.java
156
184
  - src/main/java/processing/core/PConstants.java
157
185
  - src/main/java/processing/core/PFont.java
@@ -168,26 +196,6 @@ files:
168
196
  - src/main/java/processing/core/PSurfaceNone.java
169
197
  - src/main/java/processing/core/PVector.java
170
198
  - src/main/java/processing/core/ThinkDifferent.java
171
- - src/main/java/processing/core/util/image/ImageLoadFacade.java
172
- - src/main/java/processing/core/util/image/ImageSaveFacade.java
173
- - src/main/java/processing/core/util/image/constants/TifConstants.java
174
- - src/main/java/processing/core/util/image/load/AwtImageLoadStrategy.java
175
- - src/main/java/processing/core/util/image/load/Base64StringImageLoadStrategy.java
176
- - src/main/java/processing/core/util/image/load/FallbackImageLoadStrategy.java
177
- - src/main/java/processing/core/util/image/load/ImageIoImageLoadStrategy.java
178
- - src/main/java/processing/core/util/image/load/ImageLoadStrategy.java
179
- - src/main/java/processing/core/util/image/load/ImageLoadUtil.java
180
- - src/main/java/processing/core/util/image/load/TgaImageLoadStrategy.java
181
- - src/main/java/processing/core/util/image/load/TiffImageLoadStrategy.java
182
- - src/main/java/processing/core/util/image/save/ImageSaveStrategy.java
183
- - src/main/java/processing/core/util/image/save/ImageSaveUtil.java
184
- - src/main/java/processing/core/util/image/save/ImageWriterImageSaveStrategy.java
185
- - src/main/java/processing/core/util/image/save/SaveImageException.java
186
- - src/main/java/processing/core/util/image/save/TgaImageSaveStrategy.java
187
- - src/main/java/processing/core/util/image/save/TiffImageSaveStrategy.java
188
- - src/main/java/processing/core/util/image/save/TiffNakedFilenameImageSaveStrategy.java
189
- - src/main/java/processing/core/util/io/InputFactory.java
190
- - src/main/java/processing/core/util/io/PathUtil.java
191
199
  - src/main/java/processing/data/DoubleDict.java
192
200
  - src/main/java/processing/data/DoubleList.java
193
201
  - src/main/java/processing/data/FloatDict.java
@@ -205,12 +213,15 @@ files:
205
213
  - src/main/java/processing/data/Table.java
206
214
  - src/main/java/processing/data/TableRow.java
207
215
  - src/main/java/processing/data/XML.java
216
+ - src/main/java/processing/dxf/RawDXF.java
208
217
  - src/main/java/processing/event/Event.java
209
218
  - src/main/java/processing/event/KeyEvent.java
210
219
  - src/main/java/processing/event/MouseEvent.java
211
220
  - src/main/java/processing/event/TouchEvent.java
212
221
  - src/main/java/processing/javafx/PGraphicsFX2D.java
213
222
  - src/main/java/processing/javafx/PSurfaceFX.java
223
+ - src/main/java/processing/net/Client.java
224
+ - src/main/java/processing/net/Server.java
214
225
  - src/main/java/processing/opengl/FontTexture.java
215
226
  - src/main/java/processing/opengl/FrameBuffer.java
216
227
  - src/main/java/processing/opengl/LinePath.java
@@ -235,8 +246,6 @@ files:
235
246
  - src/main/java/processing/opengl/shaders/ColorFrag.glsl
236
247
  - src/main/java/processing/opengl/shaders/ColorVert.glsl
237
248
  - src/main/java/processing/opengl/shaders/LightFrag.glsl
238
- - src/main/java/processing/opengl/shaders/LightVert-brcm.glsl
239
- - src/main/java/processing/opengl/shaders/LightVert-vc4.glsl
240
249
  - src/main/java/processing/opengl/shaders/LightVert.glsl
241
250
  - src/main/java/processing/opengl/shaders/LineFrag.glsl
242
251
  - src/main/java/processing/opengl/shaders/LineVert.glsl
@@ -245,8 +254,6 @@ files:
245
254
  - src/main/java/processing/opengl/shaders/PointVert.glsl
246
255
  - src/main/java/processing/opengl/shaders/TexFrag.glsl
247
256
  - src/main/java/processing/opengl/shaders/TexLightFrag.glsl
248
- - src/main/java/processing/opengl/shaders/TexLightVert-brcm.glsl
249
- - src/main/java/processing/opengl/shaders/TexLightVert-vc4.glsl
250
257
  - src/main/java/processing/opengl/shaders/TexLightVert.glsl
251
258
  - src/main/java/processing/opengl/shaders/TexVert.glsl
252
259
  - src/main/resources/icon/icon-1024.png
@@ -262,6 +269,7 @@ files:
262
269
  - test/deglut_spec_test.rb
263
270
  - test/helper_methods_test.rb
264
271
  - test/math_tool_test.rb
272
+ - test/native_folder.rb
265
273
  - test/respond_to_test.rb
266
274
  - test/sketches/key_event.rb
267
275
  - test/sketches/library/my_library/my_library.rb
@@ -273,7 +281,7 @@ licenses:
273
281
  - GPL-3.0
274
282
  - LGPL-2.0
275
283
  metadata: {}
276
- post_install_message:
284
+ post_install_message:
277
285
  rdoc_options: []
278
286
  require_paths:
279
287
  - lib
@@ -288,9 +296,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
288
296
  - !ruby/object:Gem::Version
289
297
  version: '0'
290
298
  requirements:
291
- - java runtime >= 11.0.1+
292
- rubygems_version: 3.0.3
293
- signing_key:
299
+ - java runtime >= 11.0.2+
300
+ rubygems_version: 3.0.6
301
+ signing_key:
294
302
  specification_version: 4
295
303
  summary: ruby implementation of processing-4.0 on MacOS, linux and windows (64bit
296
304
  only)
@@ -299,6 +307,7 @@ test_files:
299
307
  - test/deglut_spec_test.rb
300
308
  - test/helper_methods_test.rb
301
309
  - test/math_tool_test.rb
310
+ - test/native_folder.rb
302
311
  - test/respond_to_test.rb
303
312
  - test/sketches/key_event.rb
304
313
  - test/sketches/library/my_library/my_library.rb