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.
- checksums.yaml +4 -4
- data/.mvn/extensions.xml +1 -2
- data/.mvn/wrapper/MavenWrapperDownloader.java +2 -2
- data/.mvn/wrapper/maven-wrapper.properties +2 -2
- data/.travis.yml +2 -2
- data/CHANGELOG.md +12 -0
- data/Gemfile +2 -0
- data/README.md +17 -8
- data/Rakefile +10 -11
- data/bin/propane +3 -1
- data/lib/propane.rb +6 -4
- data/lib/propane/app.rb +20 -10
- data/lib/propane/creators/sketch_class.rb +7 -1
- data/lib/propane/creators/sketch_factory.rb +4 -2
- data/lib/propane/creators/sketch_writer.rb +1 -0
- data/lib/propane/helper_methods.rb +23 -24
- data/lib/propane/helpers/numeric.rb +2 -0
- data/lib/propane/helpers/version_error.rb +1 -0
- data/lib/propane/library.rb +5 -1
- data/lib/propane/library_loader.rb +2 -0
- data/lib/propane/native_folder.rb +10 -9
- data/lib/propane/native_loader.rb +3 -0
- data/lib/propane/runner.rb +14 -6
- data/lib/propane/version.rb +2 -1
- data/library/boids/boids.rb +21 -11
- data/library/color_group/color_group.rb +28 -0
- data/library/control_panel/control_panel.rb +8 -5
- data/library/dxf/dxf.rb +6 -0
- data/library/file_chooser/chooser.rb +10 -9
- data/library/file_chooser/file_chooser.rb +10 -9
- data/library/library_proxy/library_proxy.rb +2 -0
- data/library/net/net.rb +7 -0
- data/library/simplex_noise/simplex_noise.rb +2 -0
- data/library/slider/slider.rb +23 -22
- data/library/vector_utils/vector_utils.rb +4 -0
- data/library/video_event/video_event.rb +4 -1
- data/pom.rb +37 -36
- data/pom.xml +7 -7
- data/propane.gemspec +16 -12
- data/src/main/java/monkstone/ColorUtil.java +13 -1
- data/src/main/java/monkstone/MathToolModule.java +253 -203
- data/src/main/java/monkstone/PropaneLibrary.java +2 -2
- data/src/main/java/monkstone/fastmath/Deglut.java +1 -1
- data/src/main/java/monkstone/filechooser/Chooser.java +2 -1
- data/src/main/java/monkstone/noise/SimplexNoise.java +2 -2
- data/src/main/java/monkstone/slider/CustomHorizontalSlider.java +1 -1
- data/src/main/java/monkstone/slider/CustomVerticalSlider.java +1 -1
- data/src/main/java/monkstone/slider/SimpleHorizontalSlider.java +1 -1
- data/src/main/java/monkstone/slider/SimpleVerticalSlider.java +1 -1
- data/src/main/java/monkstone/slider/SliderBar.java +1 -1
- data/src/main/java/monkstone/slider/SliderGroup.java +1 -1
- data/src/main/java/monkstone/slider/WheelHandler.java +7 -6
- data/src/main/java/monkstone/vecmath/package-info.java +1 -1
- data/src/main/java/monkstone/vecmath/vec2/Vec2.java +1 -1
- data/src/main/java/monkstone/vecmath/vec3/Vec3.java +3 -3
- data/src/main/java/monkstone/videoevent/CaptureEvent.java +27 -0
- data/src/main/java/monkstone/videoevent/{VideoInterface.java → MovieEvent.java} +11 -27
- data/src/main/java/monkstone/videoevent/package-info.java +1 -1
- data/src/main/java/processing/awt/PGraphicsJava2D.java +781 -285
- data/src/main/java/processing/awt/PImageAWT.java +377 -0
- data/src/main/java/processing/awt/PShapeJava2D.java +56 -52
- data/src/main/java/processing/awt/PSurfaceAWT.java +309 -209
- data/src/main/java/processing/awt/ShimAWT.java +581 -0
- data/src/main/java/processing/core/PApplet.java +4510 -4503
- data/src/main/java/processing/core/PConstants.java +477 -447
- data/src/main/java/processing/core/PFont.java +914 -880
- data/src/main/java/processing/core/PGraphics.java +193 -177
- data/src/main/java/processing/core/PImage.java +611 -309
- data/src/main/java/processing/core/PMatrix.java +172 -159
- data/src/main/java/processing/core/PMatrix2D.java +478 -415
- data/src/main/java/processing/core/PMatrix3D.java +762 -735
- data/src/main/java/processing/core/PShape.java +2888 -2652
- data/src/main/java/processing/core/PShapeOBJ.java +97 -92
- data/src/main/java/processing/core/PShapeSVG.java +1705 -1490
- data/src/main/java/processing/core/PStyle.java +40 -37
- data/src/main/java/processing/core/PSurface.java +139 -97
- data/src/main/java/processing/core/PSurfaceNone.java +296 -218
- data/src/main/java/processing/core/PVector.java +997 -965
- data/src/main/java/processing/core/ThinkDifferent.java +15 -13
- data/src/main/java/processing/data/DoubleDict.java +756 -710
- data/src/main/java/processing/data/DoubleList.java +749 -696
- data/src/main/java/processing/data/FloatDict.java +748 -702
- data/src/main/java/processing/data/FloatList.java +751 -697
- data/src/main/java/processing/data/IntDict.java +720 -673
- data/src/main/java/processing/data/IntList.java +699 -633
- data/src/main/java/processing/data/JSONArray.java +931 -873
- data/src/main/java/processing/data/JSONObject.java +1262 -1165
- data/src/main/java/processing/data/JSONTokener.java +351 -341
- data/src/main/java/processing/data/LongDict.java +710 -663
- data/src/main/java/processing/data/LongList.java +701 -635
- data/src/main/java/processing/data/Sort.java +37 -41
- data/src/main/java/processing/data/StringDict.java +525 -486
- data/src/main/java/processing/data/StringList.java +626 -580
- data/src/main/java/processing/data/Table.java +3690 -3510
- data/src/main/java/processing/data/TableRow.java +182 -183
- data/src/main/java/processing/data/XML.java +957 -883
- data/src/main/java/processing/dxf/RawDXF.java +404 -0
- data/src/main/java/processing/event/Event.java +87 -67
- data/src/main/java/processing/event/KeyEvent.java +48 -41
- data/src/main/java/processing/event/MouseEvent.java +88 -113
- data/src/main/java/processing/event/TouchEvent.java +10 -6
- data/src/main/java/processing/javafx/PGraphicsFX2D.java +20 -345
- data/src/main/java/processing/javafx/PSurfaceFX.java +149 -121
- data/src/main/java/processing/net/Client.java +744 -0
- data/src/main/java/processing/net/Server.java +388 -0
- data/src/main/java/processing/opengl/FontTexture.java +289 -270
- data/src/main/java/processing/opengl/FrameBuffer.java +386 -364
- data/src/main/java/processing/opengl/LinePath.java +547 -500
- data/src/main/java/processing/opengl/LineStroker.java +588 -581
- data/src/main/java/processing/opengl/PGL.java +3047 -2914
- data/src/main/java/processing/opengl/PGraphics2D.java +408 -315
- data/src/main/java/processing/opengl/PGraphics3D.java +107 -72
- data/src/main/java/processing/opengl/PGraphicsOpenGL.java +12378 -12075
- data/src/main/java/processing/opengl/PJOGL.java +1753 -1670
- data/src/main/java/processing/opengl/PShader.java +1266 -1257
- data/src/main/java/processing/opengl/PShapeOpenGL.java +4678 -4580
- data/src/main/java/processing/opengl/PSurfaceJOGL.java +1114 -1027
- data/src/main/java/processing/opengl/Texture.java +1492 -1401
- data/src/main/java/processing/opengl/VertexBuffer.java +57 -55
- data/test/create_test.rb +21 -20
- data/test/deglut_spec_test.rb +4 -2
- data/test/helper_methods_test.rb +49 -20
- data/test/math_tool_test.rb +39 -32
- data/test/native_folder.rb +47 -0
- data/test/respond_to_test.rb +3 -2
- data/test/sketches/key_event.rb +2 -2
- data/test/sketches/library/my_library/my_library.rb +3 -0
- data/test/test_helper.rb +2 -0
- data/test/vecmath_spec_test.rb +35 -22
- data/vendors/Rakefile +33 -62
- metadata +56 -48
- data/src/main/java/processing/core/util/image/ImageLoadFacade.java +0 -161
- data/src/main/java/processing/core/util/image/ImageSaveFacade.java +0 -169
- data/src/main/java/processing/core/util/image/constants/TifConstants.java +0 -45
- data/src/main/java/processing/core/util/image/load/AwtImageLoadStrategy.java +0 -80
- data/src/main/java/processing/core/util/image/load/Base64StringImageLoadStrategy.java +0 -73
- data/src/main/java/processing/core/util/image/load/FallbackImageLoadStrategy.java +0 -70
- data/src/main/java/processing/core/util/image/load/ImageIoImageLoadStrategy.java +0 -132
- data/src/main/java/processing/core/util/image/load/ImageLoadStrategy.java +0 -48
- data/src/main/java/processing/core/util/image/load/ImageLoadUtil.java +0 -45
- data/src/main/java/processing/core/util/image/load/TgaImageLoadStrategy.java +0 -255
- data/src/main/java/processing/core/util/image/load/TiffImageLoadStrategy.java +0 -98
- data/src/main/java/processing/core/util/image/save/ImageSaveStrategy.java +0 -49
- data/src/main/java/processing/core/util/image/save/ImageSaveUtil.java +0 -48
- data/src/main/java/processing/core/util/image/save/ImageWriterImageSaveStrategy.java +0 -179
- data/src/main/java/processing/core/util/image/save/SaveImageException.java +0 -41
- data/src/main/java/processing/core/util/image/save/TgaImageSaveStrategy.java +0 -198
- data/src/main/java/processing/core/util/image/save/TiffImageSaveStrategy.java +0 -91
- data/src/main/java/processing/core/util/image/save/TiffNakedFilenameImageSaveStrategy.java +0 -57
- data/src/main/java/processing/core/util/io/InputFactory.java +0 -285
- data/src/main/java/processing/core/util/io/PathUtil.java +0 -109
- data/src/main/java/processing/opengl/shaders/LightVert-brcm.glsl +0 -154
- data/src/main/java/processing/opengl/shaders/LightVert-vc4.glsl +0 -154
- data/src/main/java/processing/opengl/shaders/TexLightVert-brcm.glsl +0 -160
- data/src/main/java/processing/opengl/shaders/TexLightVert-vc4.glsl +0 -160
data/test/respond_to_test.rb
CHANGED
@@ -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
|
data/test/sketches/key_event.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
#!/usr/bin/env jruby
|
2
|
-
|
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
|
data/test/test_helper.rb
CHANGED
data/test/vecmath_spec_test.rb
CHANGED
@@ -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
|
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
|
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
|
-
|
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
|
-
|
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
|
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.
|
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
|
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
|
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(
|
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
|
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
|
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
|
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.
|
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
|
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')
|
data/vendors/Rakefile
CHANGED
@@ -1,93 +1,76 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'rake/clean'
|
3
4
|
|
4
|
-
WARNING = <<-
|
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
|
-
|
8
|
-
SOUND = 'sound.zip'
|
9
|
-
|
10
|
-
|
11
|
-
VIDEO = 'video
|
12
|
-
|
13
|
-
EXAMPLES = '2.
|
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
|
-
|
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,
|
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: [
|
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
|
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: [
|
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: [
|
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
|
50
|
-
wget_string = [wget_base, '
|
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 '
|
59
|
-
task :
|
60
|
-
|
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
|
72
|
-
wget_string = [wget_base, '
|
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 :
|
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 :
|
103
|
-
directory "~/.propane"
|
104
|
-
directory "~/.propane/libraries"
|
85
|
+
task copy_sound: SOUND do
|
105
86
|
sh "unzip #{SOUND}"
|
106
|
-
sh "rm -r #{
|
107
|
-
sh "cp -r sound #{
|
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 :
|
93
|
+
task copy_video: VIDEO do
|
114
94
|
sh "unzip #{VIDEO}"
|
115
|
-
sh "rm -r #{
|
116
|
-
sh "cp -r 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
|
+
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:
|
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:
|
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:
|
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.
|
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.
|
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: '
|
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.
|
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.
|
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/
|
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:
|
298
|
+
version: 1.3.1
|
292
299
|
requirements:
|
293
|
-
- java runtime >= 11.0.
|
294
|
-
rubygems_version: 3.0.
|
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
|