propane 3.1.0.pre-java → 3.2.0-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. data/.mvn/wrapper/maven-wrapper.properties +1 -0
  3. data/CHANGELOG.md +1 -5
  4. data/README.md +23 -12
  5. data/Rakefile +23 -12
  6. data/lib/propane/helpers/version_error.rb +6 -0
  7. data/lib/propane/runner.rb +12 -0
  8. data/lib/propane/version.rb +1 -1
  9. data/library/slider/slider.rb +1 -1
  10. data/mvnw +234 -0
  11. data/mvnw.cmd +145 -0
  12. data/pom.xml +28 -27
  13. data/propane.gemspec +2 -2
  14. data/src/main/java/japplemenubar/JAppleMenuBar.java +41 -47
  15. data/src/main/java/monkstone/ColorUtil.java +1 -1
  16. data/src/main/java/monkstone/MathToolModule.java +12 -11
  17. data/src/main/java/monkstone/PropaneLibrary.java +9 -10
  18. data/src/main/java/monkstone/core/LibraryProxy.java +124 -113
  19. data/src/main/java/monkstone/fastmath/Deglut.java +86 -89
  20. data/src/main/java/monkstone/filechooser/Chooser.java +7 -13
  21. data/src/main/java/monkstone/noise/SimplexNoise.java +0 -1
  22. data/src/main/java/monkstone/slider/CustomHorizontalSlider.java +4 -4
  23. data/src/main/java/monkstone/slider/CustomVerticalSlider.java +1 -1
  24. data/src/main/java/monkstone/slider/SimpleHorizontalSlider.java +9 -9
  25. data/src/main/java/monkstone/slider/SimpleSlider.java +0 -9
  26. data/src/main/java/monkstone/slider/SimpleVerticalSlider.java +11 -13
  27. data/src/main/java/monkstone/slider/Slider.java +1 -1
  28. data/src/main/java/monkstone/slider/SliderBar.java +1 -1
  29. data/src/main/java/monkstone/slider/SliderGroup.java +1 -1
  30. data/src/main/java/monkstone/slider/WheelHandler.java +8 -9
  31. data/src/main/java/monkstone/vecmath/AppRender.java +2 -2
  32. data/src/main/java/monkstone/vecmath/ShapeRender.java +2 -2
  33. data/src/main/java/monkstone/vecmath/package-info.java +2 -2
  34. data/src/main/java/monkstone/vecmath/vec2/Vec2.java +2 -2
  35. data/src/main/java/monkstone/vecmath/vec3/Vec3.java +1 -1
  36. data/src/main/java/monkstone/videoevent/VideoInterface.java +11 -5
  37. data/src/main/java/monkstone/videoevent/package-info.java +2 -2
  38. data/src/main/java/processing/awt/PGraphicsJava2D.java +1742 -2243
  39. data/src/main/java/processing/awt/PShapeJava2D.java +268 -270
  40. data/src/main/java/processing/awt/PSurfaceAWT.java +821 -920
  41. data/src/main/java/processing/core/DesktopHandler.java +94 -0
  42. data/src/main/java/processing/core/PApplet.java +14170 -14082
  43. data/src/main/java/processing/core/PConstants.java +447 -473
  44. data/src/main/java/processing/core/PFont.java +867 -873
  45. data/src/main/java/processing/core/PGraphics.java +7193 -7428
  46. data/src/main/java/processing/core/PImage.java +3051 -3117
  47. data/src/main/java/processing/core/PMatrix.java +159 -172
  48. data/src/main/java/processing/core/PMatrix2D.java +403 -444
  49. data/src/main/java/processing/core/PMatrix3D.java +735 -749
  50. data/src/main/java/processing/core/PShape.java +2651 -2793
  51. data/src/main/java/processing/core/PShapeOBJ.java +415 -422
  52. data/src/main/java/processing/core/PShapeSVG.java +1466 -1475
  53. data/src/main/java/processing/core/PStyle.java +37 -40
  54. data/src/main/java/processing/core/PSurface.java +98 -103
  55. data/src/main/java/processing/core/PSurfaceNone.java +208 -236
  56. data/src/main/java/processing/core/PVector.java +961 -990
  57. data/src/main/java/processing/data/DoubleDict.java +709 -753
  58. data/src/main/java/processing/data/DoubleList.java +695 -748
  59. data/src/main/java/processing/data/FloatDict.java +702 -746
  60. data/src/main/java/processing/data/FloatList.java +697 -751
  61. data/src/main/java/processing/data/IntDict.java +673 -718
  62. data/src/main/java/processing/data/IntList.java +633 -699
  63. data/src/main/java/processing/data/JSONArray.java +873 -931
  64. data/src/main/java/processing/data/JSONObject.java +1165 -1262
  65. data/src/main/java/processing/data/JSONTokener.java +341 -351
  66. data/src/main/java/processing/data/LongDict.java +662 -707
  67. data/src/main/java/processing/data/LongList.java +634 -700
  68. data/src/main/java/processing/data/Sort.java +41 -37
  69. data/src/main/java/processing/data/StringDict.java +486 -522
  70. data/src/main/java/processing/data/StringList.java +580 -624
  71. data/src/main/java/processing/data/Table.java +3508 -3686
  72. data/src/main/java/processing/data/TableRow.java +183 -182
  73. data/src/main/java/processing/data/XML.java +883 -957
  74. data/src/main/java/processing/event/Event.java +66 -87
  75. data/src/main/java/processing/event/KeyEvent.java +41 -48
  76. data/src/main/java/processing/event/MouseEvent.java +93 -103
  77. data/src/main/java/processing/event/TouchEvent.java +6 -10
  78. data/src/main/java/processing/javafx/PGraphicsFX2D.java +5 -69
  79. data/src/main/java/processing/javafx/PSurfaceFX.java +2 -7
  80. data/src/main/java/processing/opengl/FontTexture.java +270 -290
  81. data/src/main/java/processing/opengl/FrameBuffer.java +363 -375
  82. data/src/main/java/processing/opengl/LinePath.java +500 -543
  83. data/src/main/java/processing/opengl/LineStroker.java +582 -593
  84. data/src/main/java/processing/opengl/PGL.java +2881 -2904
  85. data/src/main/java/processing/opengl/PGraphics2D.java +315 -408
  86. data/src/main/java/processing/opengl/PGraphics3D.java +72 -107
  87. data/src/main/java/processing/opengl/PGraphicsOpenGL.java +12043 -12230
  88. data/src/main/java/processing/opengl/PJOGL.java +1681 -1745
  89. data/src/main/java/processing/opengl/PShader.java +1257 -1260
  90. data/src/main/java/processing/opengl/PShapeOpenGL.java +4599 -4662
  91. data/src/main/java/processing/opengl/PSurfaceJOGL.java +1030 -1047
  92. data/src/main/java/processing/opengl/Texture.java +1397 -1462
  93. data/src/main/java/processing/opengl/VertexBuffer.java +55 -57
  94. data/src/main/resources/icon/icon-1024.png +0 -0
  95. data/src/main/resources/icon/icon-128.png +0 -0
  96. data/src/main/resources/icon/icon-16.png +0 -0
  97. data/src/main/resources/icon/icon-256.png +0 -0
  98. data/src/main/resources/icon/icon-32.png +0 -0
  99. data/src/main/resources/icon/icon-48.png +0 -0
  100. data/src/main/resources/icon/icon-512.png +0 -0
  101. data/src/main/resources/icon/icon-64.png +0 -0
  102. data/vendors/Rakefile +1 -1
  103. metadata +12 -8
  104. data/src/main/java/processing/core/ThinkDifferent.java +0 -70
@@ -0,0 +1,145 @@
1
+ @REM ----------------------------------------------------------------------------
2
+ @REM Licensed to the Apache Software Foundation (ASF) under one
3
+ @REM or more contributor license agreements. See the NOTICE file
4
+ @REM distributed with this work for additional information
5
+ @REM regarding copyright ownership. The ASF licenses this file
6
+ @REM to you under the Apache License, Version 2.0 (the
7
+ @REM "License"); you may not use this file except in compliance
8
+ @REM with the License. You may obtain a copy of the License at
9
+ @REM
10
+ @REM http://www.apache.org/licenses/LICENSE-2.0
11
+ @REM
12
+ @REM Unless required by applicable law or agreed to in writing,
13
+ @REM software distributed under the License is distributed on an
14
+ @REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ @REM KIND, either express or implied. See the License for the
16
+ @REM specific language governing permissions and limitations
17
+ @REM under the License.
18
+ @REM ----------------------------------------------------------------------------
19
+
20
+ @REM ----------------------------------------------------------------------------
21
+ @REM Maven2 Start Up Batch script
22
+ @REM
23
+ @REM Required ENV vars:
24
+ @REM JAVA_HOME - location of a JDK home dir
25
+ @REM
26
+ @REM Optional ENV vars
27
+ @REM M2_HOME - location of maven2's installed home dir
28
+ @REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
29
+ @REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
30
+ @REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
31
+ @REM e.g. to debug Maven itself, use
32
+ @REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
33
+ @REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
34
+ @REM ----------------------------------------------------------------------------
35
+
36
+ @REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
37
+ @echo off
38
+ @REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
39
+ @if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
40
+
41
+ @REM set %HOME% to equivalent of $HOME
42
+ if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
43
+
44
+ @REM Execute a user defined script before this one
45
+ if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
46
+ @REM check for pre script, once with legacy .bat ending and once with .cmd ending
47
+ if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
48
+ if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
49
+ :skipRcPre
50
+
51
+ @setlocal
52
+
53
+ set ERROR_CODE=0
54
+
55
+ @REM To isolate internal variables from possible post scripts, we use another setlocal
56
+ @setlocal
57
+
58
+ @REM ==== START VALIDATION ====
59
+ if not "%JAVA_HOME%" == "" goto OkJHome
60
+
61
+ echo.
62
+ echo Error: JAVA_HOME not found in your environment. >&2
63
+ echo Please set the JAVA_HOME variable in your environment to match the >&2
64
+ echo location of your Java installation. >&2
65
+ echo.
66
+ goto error
67
+
68
+ :OkJHome
69
+ if exist "%JAVA_HOME%\bin\java.exe" goto init
70
+
71
+ echo.
72
+ echo Error: JAVA_HOME is set to an invalid directory. >&2
73
+ echo JAVA_HOME = "%JAVA_HOME%" >&2
74
+ echo Please set the JAVA_HOME variable in your environment to match the >&2
75
+ echo location of your Java installation. >&2
76
+ echo.
77
+ goto error
78
+
79
+ @REM ==== END VALIDATION ====
80
+
81
+ :init
82
+
83
+ set MAVEN_CMD_LINE_ARGS=%MAVEN_CONFIG% %*
84
+
85
+ @REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
86
+ @REM Fallback to current working directory if not found.
87
+
88
+ set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
89
+ IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
90
+
91
+ set EXEC_DIR=%CD%
92
+ set WDIR=%EXEC_DIR%
93
+ :findBaseDir
94
+ IF EXIST "%WDIR%"\.mvn goto baseDirFound
95
+ cd ..
96
+ IF "%WDIR%"=="%CD%" goto baseDirNotFound
97
+ set WDIR=%CD%
98
+ goto findBaseDir
99
+
100
+ :baseDirFound
101
+ set MAVEN_PROJECTBASEDIR=%WDIR%
102
+ cd "%EXEC_DIR%"
103
+ goto endDetectBaseDir
104
+
105
+ :baseDirNotFound
106
+ set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
107
+ cd "%EXEC_DIR%"
108
+
109
+ :endDetectBaseDir
110
+
111
+ IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
112
+
113
+ @setlocal EnableExtensions EnableDelayedExpansion
114
+ for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
115
+ @endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
116
+
117
+ :endReadAdditionalConfig
118
+
119
+ SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
120
+
121
+ set WRAPPER_JAR=""%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar""
122
+ set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
123
+
124
+ %MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
125
+ if ERRORLEVEL 1 goto error
126
+ goto end
127
+
128
+ :error
129
+ set ERROR_CODE=1
130
+
131
+ :end
132
+ @endlocal & set ERROR_CODE=%ERROR_CODE%
133
+
134
+ if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
135
+ @REM check for post script, once with legacy .bat ending and once with .cmd ending
136
+ if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
137
+ if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
138
+ :skipRcPost
139
+
140
+ @REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
141
+ if "%MAVEN_BATCH_PAUSE%" == "on" pause
142
+
143
+ if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
144
+
145
+ exit /B %ERROR_CODE%
data/pom.xml CHANGED
@@ -4,7 +4,7 @@
4
4
  <modelVersion>4.0.0</modelVersion>
5
5
  <groupId>propane</groupId>
6
6
  <artifactId>propane</artifactId>
7
- <version>3.1.0</version>
7
+ <version>3.2.0</version>
8
8
  <name>propane</name>
9
9
  <description>An integrated processing-core (somewhat hacked), with additional java code for a jruby version of processing.</description>
10
10
  <url>https://github.com/monkstone/propane</url>
@@ -64,19 +64,20 @@
64
64
  <properties>
65
65
  <jogl.version>2.3.2</jogl.version>
66
66
  <jruby.api>http://jruby.org/apidocs/</jruby.api>
67
+ <!--<maven.compiler.release>8</maven.compiler.release>-->
68
+ <maven.compiler.source>1.8</maven.compiler.source>
69
+ <maven.compiler.target>1.8</maven.compiler.target>
67
70
  <polyglot.dump.pom>pom.xml</polyglot.dump.pom>
68
71
  <processing.api>http://processing.github.io/processing-javadocs/core/</processing.api>
69
72
  <project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
70
73
  <propane.basedir>${project.basedir}</propane.basedir>
71
74
  <source.directory>src</source.directory>
72
- <maven.compiler.source>11</maven.compiler.source>
73
- <maven.compiler.target>11</maven.compiler.target>
74
75
  </properties>
75
76
  <dependencies>
76
77
  <dependency>
77
78
  <groupId>org.jruby</groupId>
78
79
  <artifactId>jruby</artifactId>
79
- <version>9.2.5.0</version>
80
+ <version>9.2.6.0</version>
80
81
  <type>pom</type>
81
82
  </dependency>
82
83
  <dependency>
@@ -130,30 +131,30 @@
130
131
  <artifactId>maven-compiler-plugin</artifactId>
131
132
  <version>3.8.0</version>
132
133
  <configuration>
133
- <release>11</release>
134
- </configuration>
135
- </plugin>
136
- <plugin>
137
- <artifactId>maven-javadoc-plugin</artifactId>
138
- <version>3.0.1</version>
139
- <configuration>
140
- <detectOfflineLinks>false</detectOfflineLinks>
141
- <links>
142
- <link>${jruby.api}</link>
143
- <link>${processing.api}</link>
144
- </links>
134
+ <release>11</release>
145
135
  </configuration>
146
136
  </plugin>
147
137
  <plugin>
148
- <artifactId>maven-jar-plugin</artifactId>
149
- <version>3.1.0</version>
150
- <configuration>
151
- <archive>
152
- <manifestFile>MANIFEST.MF</manifestFile>
153
- </archive>
154
- </configuration>
155
- </plugin>
156
- </plugins>
157
- </pluginManagement>
158
- </build>
138
+ <artifactId>maven-javadoc-plugin</artifactId>
139
+ <version>3.0.1</version>
140
+ <configuration>
141
+ <detectOfflineLinks>false</detectOfflineLinks>
142
+ <links>
143
+ <link>${jruby.api}</link>
144
+ <link>${processing.api}</link>
145
+ </links>
146
+ </configuration>
147
+ </plugin>
148
+ <plugin>
149
+ <artifactId>maven-jar-plugin</artifactId>
150
+ <version>3.1.0</version>
151
+ <configuration>
152
+ <archive>
153
+ <manifestFile>MANIFEST.MF</manifestFile>
154
+ </archive>
155
+ </configuration>
156
+ </plugin>
157
+ </plugins>
158
+ </pluginManagement>
159
+ </build>
159
160
  </project>
@@ -12,10 +12,10 @@ Gem::Specification.new do |gem|
12
12
  gem.description = <<-EOS
13
13
  A batteries included version of processing in ruby targetting jdk11.
14
14
  EOS
15
- gem.summary = %q{ruby wrapper for processing-3.4 on MacOS, linux and windows (64bit only)}
15
+ gem.summary = %q{ruby wrapper for processing-3.5 on MacOS, linux and windows (64bit only)}
16
16
  gem.homepage = 'https://ruby-processing.github.io/propane/'
17
17
  gem.files = `git ls-files`.split($/)
18
- gem.files << 'lib/propane-3.1.0.jar'
18
+ gem.files << 'lib/propane-3.2.0.jar'
19
19
  gem.files << 'lib/gluegen-rt.jar'
20
20
  gem.files << 'lib/jogl-all.jar'
21
21
  gem.files << 'lib/gluegen-rt-natives-linux-amd64.jar'
@@ -16,71 +16,65 @@
16
16
  Public License along with this library; if not, write to the
17
17
  Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
18
  Boston, MA 02111-1307 USA
19
- */
19
+ */
20
20
  package japplemenubar;
21
21
 
22
22
  import java.io.*;
23
23
 
24
24
  import processing.core.PApplet;
25
25
 
26
-
27
26
  /**
28
- * Starting point for the application. General initialization should be done
29
- * inside the ApplicationController's init() method. If certain kinds of
30
- * non-Swing initialization takes too long, it should happen in a new Thread
31
- * and off the Swing event dispatch thread (EDT).
32
- *
27
+ * Starting point for the application. General initialization should be done
28
+ * inside the ApplicationController's init() method. If certain kinds of
29
+ * non-Swing initialization takes too long, it should happen in a new Thread and
30
+ * off the Swing event dispatch thread (EDT).
31
+ *
33
32
  * @author hansi
34
33
  */
35
34
  public class JAppleMenuBar {
36
- static JAppleMenuBar instance;
37
- static final String FILENAME = "libjAppleMenuBar.jnilib";
38
-
39
- static {
40
- try {
41
- File temp = File.createTempFile("processing", "menubar");
42
- temp.delete(); // remove the file itself
43
- temp.mkdirs(); // create a directory out of it
44
- temp.deleteOnExit();
45
35
 
46
- File jnilibFile = new File(temp, FILENAME);
47
- InputStream input = JAppleMenuBar.class.getResourceAsStream(FILENAME);
48
- if (input != null) {
49
- if (PApplet.saveStream(jnilibFile, input)) {
50
- System.load(jnilibFile.getAbsolutePath());
51
- instance = new JAppleMenuBar();
36
+ static JAppleMenuBar instance;
37
+ static final String FILENAME = "libjAppleMenuBar.jnilib";
38
+
39
+ static {
40
+ try {
41
+ File temp = File.createTempFile("processing", "menubar");
42
+ temp.delete(); // remove the file itself
43
+ temp.mkdirs(); // create a directory out of it
44
+ temp.deleteOnExit();
52
45
 
53
- } else {
54
- sadness("Problem saving " + FILENAME + " for full screen use.");
55
- }
56
- } else {
57
- sadness("Could not load " + FILENAME + " from core.jar");
58
- }
59
- } catch (IOException e) {
60
- sadness("Unknown error, here's the stack trace.");
61
- e.printStackTrace();
62
- }
63
- }
64
-
65
-
66
- static void sadness(String msg) {
67
- System.err.println("Full screen mode disabled. " + msg);
68
- }
46
+ File jnilibFile = new File(temp, FILENAME);
47
+ InputStream input = JAppleMenuBar.class.getResourceAsStream(FILENAME);
48
+ if (input != null) {
49
+ if (PApplet.saveStream(jnilibFile, input)) {
50
+ System.load(jnilibFile.getAbsolutePath());
51
+ instance = new JAppleMenuBar();
52
+
53
+ } else {
54
+ sadness("Problem saving " + FILENAME + " for full screen use.");
55
+ }
56
+ } else {
57
+ sadness("Could not load " + FILENAME + " from core.jar");
58
+ }
59
+ } catch (IOException e) {
60
+ sadness("Unknown error, here's the stack trace.");
61
+ e.printStackTrace();
62
+ }
63
+ }
64
+
65
+ static void sadness(String msg) {
66
+ System.err.println("Full screen mode disabled. " + msg);
67
+ }
69
68
 
70
-
71
69
  // static public void show() {
72
70
  // instance.setVisible(true);
73
71
  // }
72
+ static public void hide() {
73
+ instance.setVisible(false, false);
74
+ }
74
75
 
75
-
76
- static public void hide() {
77
- instance.setVisible(false, false);
78
- }
79
-
80
-
81
- public native void setVisible(boolean visibility, boolean kioskMode);
76
+ public native void setVisible(boolean visibility, boolean kioskMode);
82
77
 
83
-
84
78
  // public void setVisible(boolean visibility) {
85
79
  // // Keep original API in-tact. Default kiosk-mode to off.
86
80
  // setVisible(visibility, false);
@@ -3,7 +3,7 @@
3
3
  * in their sketches. Includes a method to efficiently convert an array of web
4
4
  * strings to an array of color int, and another to convert an array of color
5
5
  * int to a string that can be used in ruby code (to generate web color array).
6
- * Copyright (c) 2015-18 Martin Prout.
6
+ * Copyright (c) 2015-19 Martin Prout.
7
7
  * This utility is free software; you can redistribute it and/or modify
8
8
  * it under the terms of the GNU Lesser General Public License as published by
9
9
  * the Free Software Foundation; either version 2.1 of the License, or (at
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * The purpose of this tool is to allow propane users to use an alternative
3
3
  * to processing.org map, lerp and norm methods in their sketches
4
- * Copyright (c) 2015-18 Martin Prout. This tool is free software; you can
4
+ * Copyright (c) 2015-19 Martin Prout. This tool is free software; you can
5
5
  * redistribute it and/or modify it under the terms of the GNU Lesser General
6
6
  * Public License as published by the Free Software Foundation; either version
7
7
  * 2.1 of the License, or (at your option) any later version.
@@ -175,7 +175,8 @@ public class MathToolModule {
175
175
  }
176
176
  return mapMt(context, value, start, stop, 0, 1.0);
177
177
  }
178
- // start2 + (stop2 - start2) * ((value - start1) / (stop1 - start1));
178
+ // start2 + (stop2 - start2) * ((value - start1) / (stop1 - start1));
179
+
179
180
  static final RubyFloat mapMt(ThreadContext context, double value, double first1, double last1, double first2, double last2) {
180
181
  double result = first2 + (last2 - first2) * ((value - first1) / (last1 - first1));
181
182
  return context.runtime.newFloat(result);
@@ -218,17 +219,17 @@ public class MathToolModule {
218
219
  int column = (int) args[1].toJava(Integer.class);
219
220
  int rowStep = 1;
220
221
  int colStep = 1;
221
- if (args.length == 4){
222
- rowStep = (int) args[2].toJava(Integer.class);
223
- colStep = (int) args[3].toJava(Integer.class);
222
+ if (args.length == 4) {
223
+ rowStep = (int) args[2].toJava(Integer.class);
224
+ colStep = (int) args[3].toJava(Integer.class);
224
225
  }
225
226
  if (block.isGiven()) {
226
- int tempRow = row / rowStep;
227
- for (int z = 0; z < (tempRow * (column / colStep)); z++){
228
- int x = z % tempRow;
229
- int y = z / tempRow;
230
- block.yieldSpecific(context, context.runtime.newFixnum(x * rowStep), context.runtime.newFixnum(y * colStep));
231
- }
227
+ int tempRow = row / rowStep;
228
+ for (int z = 0; z < (tempRow * (column / colStep)); z++) {
229
+ int x = z % tempRow;
230
+ int y = z / tempRow;
231
+ block.yieldSpecific(context, context.runtime.newFixnum(x * rowStep), context.runtime.newFixnum(y * colStep));
232
+ }
232
233
  }
233
234
  return context.nil;
234
235
 
@@ -1,13 +1,12 @@
1
1
  /**
2
- * The purpose of this class is to load the MathTool into ruby-processing runtime
3
- * Copyright (C) 2015-18 Martin Prout. This code is free software; you can
2
+ * The purpose of this class is to load the MathTool into ruby-processing runtime
3
+ * Copyright (C) 2015-19 Martin Prout. This code is free software; you can
4
4
  * redistribute it and/or modify it under the terms of the GNU Lesser General
5
- * Public License as published by the Free Software Foundation; either version
5
+ * Public License as published by the Free Software Foundation; either version
6
6
  * 2.1 of the License, or (at your option) any later version.
7
- *
7
+ *
8
8
  * Obtain a copy of the license at http://www.gnu.org/licenses/lgpl-2.1.html
9
9
  */
10
-
11
10
  package monkstone;
12
11
 
13
12
  import java.io.IOException;
@@ -21,8 +20,8 @@ import org.jruby.runtime.load.Library;
21
20
  *
22
21
  * @author Martin Prout
23
22
  */
24
- public class PropaneLibrary implements Library{
25
-
23
+ public class PropaneLibrary implements Library {
24
+
26
25
  /**
27
26
  *
28
27
  * @param runtime
@@ -32,8 +31,8 @@ public class PropaneLibrary implements Library{
32
31
  Deglut.createDeglut(runtime);
33
32
  Vec2.createVec2(runtime);
34
33
  Vec3.createVec3(runtime);
35
- }
36
-
34
+ }
35
+
37
36
  /**
38
37
  *
39
38
  * @param runtime
@@ -43,5 +42,5 @@ public class PropaneLibrary implements Library{
43
42
  @Override
44
43
  public void load(final Ruby runtime, boolean wrap) throws IOException {
45
44
  load(runtime);
46
- }
45
+ }
47
46
  }