propane 3.5.0-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 (53) hide show
  1. checksums.yaml +4 -4
  2. data/.mvn/extensions.xml +1 -1
  3. data/.mvn/wrapper/MavenWrapperDownloader.java +1 -1
  4. data/.mvn/wrapper/maven-wrapper.properties +2 -2
  5. data/.travis.yml +1 -1
  6. data/CHANGELOG.md +3 -1
  7. data/README.md +5 -13
  8. data/Rakefile +1 -1
  9. data/lib/propane.rb +2 -1
  10. data/lib/propane/helper_methods.rb +0 -1
  11. data/lib/propane/runner.rb +2 -0
  12. data/lib/propane/version.rb +1 -1
  13. data/pom.rb +43 -43
  14. data/pom.xml +4 -4
  15. data/propane.gemspec +4 -3
  16. data/src/main/java/japplemenubar/JAppleMenuBar.java +3 -3
  17. data/src/main/java/processing/awt/PGraphicsJava2D.java +8 -17
  18. data/src/main/java/processing/awt/PImageAWT.java +123 -6
  19. data/src/main/java/processing/awt/PShapeJava2D.java +1 -0
  20. data/src/main/java/processing/awt/PSurfaceAWT.java +9 -7
  21. data/src/main/java/processing/awt/ShimAWT.java +2 -1
  22. data/src/main/java/processing/core/PApplet.java +4605 -6014
  23. data/src/main/java/processing/core/PConstants.java +5 -5
  24. data/src/main/java/processing/core/PFont.java +5 -17
  25. data/src/main/java/processing/core/PGraphics.java +308 -320
  26. data/src/main/java/processing/core/PImage.java +1440 -1537
  27. data/src/main/java/processing/core/PMatrix2D.java +24 -7
  28. data/src/main/java/processing/core/PMatrix3D.java +12 -5
  29. data/src/main/java/processing/core/PShape.java +155 -173
  30. data/src/main/java/processing/core/PShapeOBJ.java +2 -0
  31. data/src/main/java/processing/core/PShapeSVG.java +632 -611
  32. data/src/main/java/processing/core/PSurface.java +15 -10
  33. data/src/main/java/processing/core/PSurfaceNone.java +8 -4
  34. data/src/main/java/processing/core/PVector.java +35 -28
  35. data/src/main/java/processing/data/Table.java +20 -20
  36. data/src/main/java/processing/data/XML.java +1 -1
  37. data/src/main/java/processing/event/Event.java +1 -1
  38. data/src/main/java/processing/event/MouseEvent.java +7 -6
  39. data/src/main/java/processing/javafx/PGraphicsFX2D.java +20 -345
  40. data/src/main/java/processing/javafx/PSurfaceFX.java +127 -125
  41. data/src/main/java/processing/opengl/FrameBuffer.java +2 -4
  42. data/src/main/java/processing/opengl/LinePath.java +4 -0
  43. data/src/main/java/processing/opengl/LineStroker.java +2 -6
  44. data/src/main/java/processing/opengl/PGL.java +72 -45
  45. data/src/main/java/processing/opengl/PGraphicsOpenGL.java +106 -60
  46. data/src/main/java/processing/opengl/PJOGL.java +15 -3
  47. data/src/main/java/processing/opengl/PShader.java +26 -47
  48. data/src/main/java/processing/opengl/PShapeOpenGL.java +1041 -1001
  49. data/src/main/java/processing/opengl/PSurfaceJOGL.java +211 -208
  50. data/src/main/java/processing/opengl/Texture.java +7 -4
  51. data/src/main/java/processing/opengl/VertexBuffer.java +2 -2
  52. data/vendors/Rakefile +22 -33
  53. metadata +38 -18
@@ -143,8 +143,9 @@ public class Texture implements PConstants {
143
143
 
144
144
 
145
145
  /**
146
- * Creates an instance of PTexture with size width x height. The texture is
147
- * initialized (empty) to that size.
146
+ * Creates an instance of PTexture with size width x height.The texture is
147
+ initialized (empty) to that size.
148
+ * @param pg
148
149
  * @param width int
149
150
  * @param height int
150
151
  */
@@ -155,7 +156,8 @@ public class Texture implements PConstants {
155
156
 
156
157
  /**
157
158
  * Creates an instance of PTexture with size width x height and with the
158
- * specified parameters. The texture is initialized (empty) to that size.
159
+ * specified parameters.The texture is initialized (empty) to that size.
160
+ * @param pg
159
161
  * @param width int
160
162
  * @param height int
161
163
  * @param params Parameters
@@ -436,7 +438,8 @@ public class Texture implements PConstants {
436
438
 
437
439
 
438
440
  /**
439
- * Copy texture to pixels. Involves video memory to main memory transfer (slow).
441
+ * Copy texture to pixels.Involves video memory to main memory transfer (slow).
442
+ * @param pixels
440
443
  */
441
444
  public void get(int[] pixels) {
442
445
  if (pixels == null) {
@@ -57,12 +57,12 @@ public class VertexBuffer {
57
57
  init();
58
58
  }
59
59
 
60
- protected void create() {
60
+ protected final void create() {
61
61
  context = pgl.getCurrentContext();
62
62
  glres = new GLResourceVertexBuffer(this);
63
63
  }
64
64
 
65
- protected void init() {
65
+ protected final void init() {
66
66
  int size = index ? ncoords * INIT_INDEX_BUFFER_SIZE * elementSize :
67
67
  ncoords * INIT_VERTEX_BUFFER_SIZE * elementSize;
68
68
  pgl.bindBuffer(target, glId);
@@ -7,15 +7,16 @@ WARNING = <<-WGET
7
7
  the correct version of propane-examples (see EXAMPLES vendors directory)
8
8
  WGET
9
9
  SOUND = 'sound.zip'
10
- SOUND_VERSION = 'v1.3.2' # version 1.3.2
11
- GLVIDEO = 'processing-glvideo.zip'
12
- VIDEO = 'video-2.0-beta4.zip'
13
- VIDEO_VERSION = 'r6-v2.0-beta4'
14
- EXAMPLES = '2.8'
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'
15
15
  HOME_DIR = ENV['HOME']
16
+ LIBRARY = File.join(HOME_DIR, '.propane', 'libraries')
16
17
  MAC_OR_LINUX = /linux|mac|darwin/.match?(RbConfig::CONFIG['host_os'])
17
18
 
18
- CLOBBER.include(EXAMPLES, SOUND, GLVIDEO, VIDEO)
19
+ CLOBBER.include(EXAMPLES, SOUND, VIDEO)
19
20
 
20
21
  desc 'download, and copy propane examples'
21
22
  task default: [:download_and_copy_samples]
@@ -25,7 +26,7 @@ task download_and_copy_samples: %i[download_examples copy_examples]
25
26
 
26
27
  task :download_examples
27
28
  file_name = MAC_OR_LINUX.nil? ? "#{EXAMPLES}.zip" : "#{EXAMPLES}.tar.gz"
28
- wget_base = 'wget https://github.com/ruby-processing/propane-examples'
29
+ wget_base = ['wget', PROPANE_EXAMPLES].join(' ')
29
30
  wget_string = [wget_base, 'archive', file_name].join('/')
30
31
  file file_name do
31
32
  begin
@@ -43,8 +44,8 @@ task download_and_copy_video: %i[init_dir download_video copy_video clobber]
43
44
 
44
45
  desc 'download sound library'
45
46
  task :download_sound do
46
- wget_base = 'wget https://github.com/processing/processing-sound'
47
- 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('/')
48
49
  begin
49
50
  sh wget_string
50
51
  rescue StandardError
@@ -52,10 +53,15 @@ task :download_sound do
52
53
  end
53
54
  end
54
55
 
56
+ desc 'initialize ~/.propane directories'
57
+ task :init_dir do
58
+ FileUtils.mkdir_p LIBRARY unless File.exist? LIBRARY
59
+ end
60
+
55
61
  desc 'download video library'
56
62
  task :download_video do
57
- wget_base = 'wget https://github.com/processing/processing-video'
58
- 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('/')
59
65
  begin
60
66
  sh wget_string
61
67
  rescue StandardError
@@ -63,14 +69,6 @@ task :download_video do
63
69
  end
64
70
  end
65
71
 
66
- desc 'initialize ~/.propane directories'
67
- task :init_dir do
68
- unless File.exist? "#{HOME_DIR}/.propane/libraries"
69
- sh 'mkdir -p ~/.propane'
70
- sh 'mkdir -p ~/.propane/libraries'
71
- end
72
- end
73
-
74
72
  desc 'copy examples'
75
73
  task copy_examples: file_name do
76
74
  if MAC_OR_LINUX.nil?
@@ -78,32 +76,23 @@ task copy_examples: file_name do
78
76
  else
79
77
  sh "tar xzvf #{EXAMPLES}.tar.gz"
80
78
  end
81
- if File.exist? "#{HOME_DIR}/propane_samples"
82
- sh "rm -r #{HOME_DIR}/propane_samples"
83
- end
79
+ sh "rm -r #{HOME_DIR}/propane_samples" if File.exist? "#{HOME_DIR}/propane_samples"
84
80
  sh "cp -r propane-examples-#{EXAMPLES} #{HOME_DIR}/propane_samples"
85
81
  sh "rm -r propane-examples-#{EXAMPLES}"
86
82
  end
87
83
 
88
84
  desc 'copy sound library'
89
85
  task copy_sound: SOUND do
90
- directory '~/.propane'
91
- directory '~/.propane/libraries'
92
86
  sh "unzip #{SOUND}"
93
- if File.exist? "#{HOME_DIR}/.propane/libraries/sound"
94
- sh "rm -r #{HOME_DIR}/.propane/libraries/sound"
95
- end
96
- 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}"
97
89
  sh 'rm -r sound'
98
- sh 'rm -r __MACOSX'
99
90
  end
100
91
 
101
92
  desc 'copy video library'
102
93
  task copy_video: VIDEO do
103
94
  sh "unzip #{VIDEO}"
104
- if File.exist? "#{HOME_DIR}/.propane/libraries/video"
105
- sh "rm -r #{HOME_DIR}/.propane/libraries/video"
106
- end
107
- 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}"
108
97
  sh 'rm -r video'
109
98
  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.5.0
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: 2020-04-04 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: minitest
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '5.11'
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: '5.11'
29
+ version: 0.1.0
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 0.1.3
27
33
  - !ruby/object:Gem::Dependency
28
- name: rake
29
34
  requirement: !ruby/object:Gem::Requirement
30
35
  requirements:
31
36
  - - "~>"
32
37
  - !ruby/object:Gem::Version
33
- version: '12.3'
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: '12.3'
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
@@ -91,7 +111,7 @@ files:
91
111
  - lib/jogl-all-natives-macosx-universal.jar
92
112
  - lib/jogl-all-natives-windows-amd64.jar
93
113
  - lib/jogl-all.jar
94
- - lib/propane-3.5.0.jar
114
+ - lib/propane-3.6.0.jar
95
115
  - lib/propane.rb
96
116
  - lib/propane/app.rb
97
117
  - lib/propane/creators/sketch_class.rb
@@ -261,7 +281,7 @@ licenses:
261
281
  - GPL-3.0
262
282
  - LGPL-2.0
263
283
  metadata: {}
264
- post_install_message:
284
+ post_install_message:
265
285
  rdoc_options: []
266
286
  require_paths:
267
287
  - lib
@@ -278,7 +298,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
278
298
  requirements:
279
299
  - java runtime >= 11.0.2+
280
300
  rubygems_version: 3.0.6
281
- signing_key:
301
+ signing_key:
282
302
  specification_version: 4
283
303
  summary: ruby implementation of processing-4.0 on MacOS, linux and windows (64bit
284
304
  only)