picrate 0.5.0-java → 0.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 (97) hide show
  1. checksums.yaml +4 -4
  2. data/.mvn/wrapper/maven-wrapper.properties +1 -1
  3. data/CHANGELOG.md +3 -1
  4. data/README.md +1 -1
  5. data/Rakefile +8 -6
  6. data/docs/_editors/geany.md +5 -4
  7. data/docs/_editors/vim.md +6 -0
  8. data/docs/_includes/head.html +1 -0
  9. data/docs/_libraries/control_panel.md +2 -2
  10. data/docs/_libraries/gl_video.md +21 -0
  11. data/docs/_posts/2018-05-06-getting_started.md +10 -9
  12. data/docs/_posts/2018-05-06-install_jruby.md +19 -2
  13. data/docs/_posts/2018-06-26-auto_install_picrate.md +19 -4
  14. data/docs/_posts/2018-11-18-building-gem.md +18 -0
  15. data/docs/_posts/2018-11-27-getting_started_geany.md +38 -0
  16. data/docs/about.md +21 -10
  17. data/docs/assets/android-chrome-192x192.png +0 -0
  18. data/docs/assets/android-chrome-512x512.png +0 -0
  19. data/docs/assets/favicon.ico +0 -0
  20. data/docs/assets/geany.png +0 -0
  21. data/docs/assets/jwishy_picrate.png +0 -0
  22. data/docs/assets/picrate.svg +251 -0
  23. data/docs/index.html +8 -14
  24. data/lib/picrate/runner.rb +6 -2
  25. data/lib/picrate/version.rb +1 -1
  26. data/library/boids/boids.rb +10 -13
  27. data/mvnw +234 -0
  28. data/picrate.gemspec +2 -1
  29. data/pom.rb +1 -1
  30. data/pom.xml +1 -1
  31. data/src/main/java/japplemenubar/JAppleMenuBar.java +10 -2
  32. data/src/main/java/monkstone/ColorUtil.java +11 -1
  33. data/src/main/java/monkstone/MathToolModule.java +1 -0
  34. data/src/main/java/monkstone/PicrateLibrary.java +1 -0
  35. data/src/main/java/monkstone/fastmath/Deglut.java +1 -0
  36. data/src/main/java/monkstone/noise/SimplexNoise.java +3 -3
  37. data/src/main/java/monkstone/slider/CustomHorizontalSlider.java +1 -1
  38. data/src/main/java/monkstone/slider/CustomVerticalSlider.java +1 -1
  39. data/src/main/java/monkstone/slider/SimpleHorizontalSlider.java +1 -1
  40. data/src/main/java/monkstone/slider/SimpleSlider.java +8 -8
  41. data/src/main/java/monkstone/slider/SimpleVerticalSlider.java +1 -1
  42. data/src/main/java/monkstone/slider/Slider.java +3 -3
  43. data/src/main/java/monkstone/slider/SliderBar.java +1 -1
  44. data/src/main/java/monkstone/slider/SliderGroup.java +1 -1
  45. data/src/main/java/monkstone/vecmath/AppRender.java +1 -0
  46. data/src/main/java/monkstone/vecmath/JRender.java +1 -0
  47. data/src/main/java/monkstone/vecmath/ShapeRender.java +1 -0
  48. data/src/main/java/monkstone/vecmath/vec2/Vec2.java +8 -0
  49. data/src/main/java/monkstone/vecmath/vec3/Vec3.java +1 -0
  50. data/src/main/java/processing/awt/PGraphicsJava2D.java +85 -16
  51. data/src/main/java/processing/awt/PSurfaceAWT.java +1 -1
  52. data/src/main/java/processing/core/PApplet.java +18 -12
  53. data/src/main/java/processing/core/PShape.java +1182 -305
  54. data/src/main/java/processing/core/PStyle.java +1 -1
  55. data/src/main/java/processing/core/PSurface.java +1 -1
  56. data/src/main/java/processing/data/FloatDict.java +196 -54
  57. data/src/main/java/processing/data/FloatList.java +167 -54
  58. data/src/main/java/processing/data/IntDict.java +211 -56
  59. data/src/main/java/processing/data/IntList.java +185 -52
  60. data/src/main/java/processing/data/JSONArray.java +69 -20
  61. data/src/main/java/processing/data/JSONObject.java +53 -12
  62. data/src/main/java/processing/data/Sort.java +40 -10
  63. data/src/main/java/processing/data/StringDict.java +159 -49
  64. data/src/main/java/processing/data/StringList.java +147 -42
  65. data/src/main/java/processing/data/Table.java +778 -223
  66. data/src/main/java/processing/data/TableRow.java +26 -2
  67. data/src/main/java/processing/data/XML.java +190 -50
  68. data/src/main/java/processing/event/Event.java +93 -0
  69. data/src/main/java/processing/event/KeyEvent.java +55 -13
  70. data/src/main/java/processing/event/MouseEvent.java +77 -1
  71. data/src/main/java/processing/event/TouchEvent.java +14 -1
  72. data/src/main/java/processing/javafx/PGraphicsFX2D.java +8 -0
  73. data/src/main/java/processing/opengl/FrameBuffer.java +228 -66
  74. data/src/main/java/processing/opengl/LinePath.java +131 -27
  75. data/src/main/java/processing/opengl/LineStroker.java +30 -5
  76. data/src/main/java/processing/opengl/PGL.java +4066 -865
  77. data/src/main/java/processing/opengl/PGraphics2D.java +38 -10
  78. data/src/main/java/processing/opengl/PGraphics3D.java +38 -6
  79. data/src/main/java/processing/opengl/PGraphicsOpenGL.java +1980 -474
  80. data/src/main/java/processing/opengl/PJOGL.java +1460 -248
  81. data/src/main/java/processing/opengl/PShader.java +904 -217
  82. data/src/main/java/processing/opengl/PShapeOpenGL.java +1811 -487
  83. data/src/main/java/processing/opengl/PSurfaceJOGL.java +278 -71
  84. data/src/main/java/processing/opengl/Texture.java +610 -135
  85. data/src/main/java/processing/opengl/VertexBuffer.java +45 -9
  86. data/src/main/resources/icon/icon-1024.png +0 -0
  87. data/src/main/resources/icon/icon-128.png +0 -0
  88. data/src/main/resources/icon/icon-16.png +0 -0
  89. data/src/main/resources/icon/icon-256.png +0 -0
  90. data/src/main/resources/icon/icon-32.png +0 -0
  91. data/src/main/resources/icon/icon-48.png +0 -0
  92. data/src/main/resources/icon/icon-512.png +0 -0
  93. data/src/main/resources/icon/icon-64.png +0 -0
  94. data/vendors/Rakefile +1 -1
  95. metadata +13 -6
  96. data/docs/assets/circle_collisions.png +0 -0
  97. data/docs/favicon.ico +0 -0
@@ -25,16 +25,27 @@ import processing.core.PApplet;
25
25
  * @see StringList
26
26
  */
27
27
  public class IntList implements Iterable<Integer> {
28
- protected int count;
29
- protected int[] data;
30
28
 
29
+ /**
30
+ *
31
+ */
32
+ protected int count;
31
33
 
32
- public IntList() {
34
+ /**
35
+ *
36
+ */
37
+ protected int[] data;
38
+
39
+ /**
40
+ *
41
+ */
42
+ public IntList() {
33
43
  data = new int[10];
34
44
  }
35
45
 
36
46
 
37
47
  /**
48
+ * @param length
38
49
  * @nowebref
39
50
  */
40
51
  public IntList(int length) {
@@ -43,6 +54,7 @@ public class IntList implements Iterable<Integer> {
43
54
 
44
55
 
45
56
  /**
57
+ * @param source
46
58
  * @nowebref
47
59
  */
48
60
  public IntList(int[] source) {
@@ -53,9 +65,9 @@ public class IntList implements Iterable<Integer> {
53
65
 
54
66
 
55
67
  /**
56
- * Construct an IntList from an iterable pile of objects.
57
- * For instance, a float array, an array of strings, who knows).
68
+ * Construct an IntList from an iterable pile of objects.For instance, a float array, an array of strings, who knows).
58
69
  * Un-parseable or null values will be set to 0.
70
+ * @param iter
59
71
  * @nowebref
60
72
  */
61
73
  public IntList(Iterable<Object> iter) {
@@ -74,8 +86,8 @@ public class IntList implements Iterable<Integer> {
74
86
 
75
87
 
76
88
  /**
77
- * Construct an IntList from a random pile of objects.
78
- * Un-parseable or null values will be set to zero.
89
+ * Construct an IntList from a random pile of objects.Un-parseable or null values will be set to zero.
90
+ * @param items
79
91
  */
80
92
  public IntList(Object... items) {
81
93
  final int missingValue = 0; // nuts, can't be last/final/second arg
@@ -96,13 +108,22 @@ public class IntList implements Iterable<Integer> {
96
108
  }
97
109
  }
98
110
 
99
-
100
- static public IntList fromRange(int stop) {
111
+ /**
112
+ *
113
+ * @param stop
114
+ * @return
115
+ */
116
+ static public IntList fromRange(int stop) {
101
117
  return fromRange(0, stop);
102
118
  }
103
119
 
104
-
105
- static public IntList fromRange(int start, int stop) {
120
+ /**
121
+ *
122
+ * @param start
123
+ * @param stop
124
+ * @return
125
+ */
126
+ static public IntList fromRange(int start, int stop) {
106
127
  int count = stop - start;
107
128
  IntList newbie = new IntList(count);
108
129
  for (int i = 0; i < count; i++) {
@@ -128,6 +149,7 @@ public class IntList implements Iterable<Integer> {
128
149
  /**
129
150
  * Get the length of the list.
130
151
  *
152
+ * @return
131
153
  * @webref intlist:method
132
154
  * @brief Get the length of the list
133
155
  */
@@ -135,8 +157,11 @@ public class IntList implements Iterable<Integer> {
135
157
  return count;
136
158
  }
137
159
 
138
-
139
- public void resize(int length) {
160
+ /**
161
+ *
162
+ * @param length
163
+ */
164
+ public void resize(int length) {
140
165
  if (length > data.length) {
141
166
  int[] temp = new int[length];
142
167
  System.arraycopy(data, 0, temp, 0, count);
@@ -163,6 +188,8 @@ public class IntList implements Iterable<Integer> {
163
188
  /**
164
189
  * Get an entry at a particular index.
165
190
  *
191
+ * @param index
192
+ * @return
166
193
  * @webref intlist:method
167
194
  * @brief Get an entry at a particular index
168
195
  */
@@ -175,10 +202,12 @@ public class IntList implements Iterable<Integer> {
175
202
 
176
203
 
177
204
  /**
178
- * Set the entry at a particular index. If the index is past the length of
179
- * the list, it'll expand the list to accommodate, and fill the intermediate
180
- * entries with 0s.
205
+ * Set the entry at a particular index.If the index is past the length of
206
+ the list, it'll expand the list to accommodate, and fill the intermediate
207
+ entries with 0s.
181
208
  *
209
+ * @param index
210
+ * @param what
182
211
  * @webref intlist:method
183
212
  * @brief Set the entry at a particular index
184
213
  */
@@ -194,13 +223,17 @@ public class IntList implements Iterable<Integer> {
194
223
  }
195
224
 
196
225
 
197
- /** Just an alias for append(), but matches pop() */
226
+ /** Just an alias for append(), but matches pop()
227
+ * @param value */
198
228
  public void push(int value) {
199
229
  append(value);
200
230
  }
201
231
 
202
-
203
- public int pop() {
232
+ /**
233
+ *
234
+ * @return
235
+ */
236
+ public int pop() {
204
237
  if (count == 0) {
205
238
  throw new RuntimeException("Can't call pop() on an empty list");
206
239
  }
@@ -213,6 +246,8 @@ public class IntList implements Iterable<Integer> {
213
246
  /**
214
247
  * Remove an element from the specified index
215
248
  *
249
+ * @param index
250
+ * @return
216
251
  * @webref intlist:method
217
252
  * @brief Remove an element from the specified index
218
253
  */
@@ -238,6 +273,12 @@ public class IntList implements Iterable<Integer> {
238
273
 
239
274
  // Remove the first instance of a particular value,
240
275
  // and return the index at which it was found.
276
+
277
+ /**
278
+ *
279
+ * @param value
280
+ * @return
281
+ */
241
282
  public int removeValue(int value) {
242
283
  int index = index(value);
243
284
  if (index != -1) {
@@ -250,6 +291,12 @@ public class IntList implements Iterable<Integer> {
250
291
 
251
292
  // Remove all instances of a particular value,
252
293
  // and return the number of values found and removed
294
+
295
+ /**
296
+ *
297
+ * @param value
298
+ * @return
299
+ */
253
300
  public int removeValues(int value) {
254
301
  int ii = 0;
255
302
  for (int i = 0; i < count; i++) {
@@ -266,6 +313,7 @@ public class IntList implements Iterable<Integer> {
266
313
  /**
267
314
  * Add a new entry to the list.
268
315
  *
316
+ * @param value
269
317
  * @webref intlist:method
270
318
  * @brief Add a new entry to the list
271
319
  */
@@ -276,22 +324,29 @@ public class IntList implements Iterable<Integer> {
276
324
  data[count++] = value;
277
325
  }
278
326
 
279
-
280
- public void append(int[] values) {
327
+ /**
328
+ *
329
+ * @param values
330
+ */
331
+ public void append(int[] values) {
281
332
  for (int v : values) {
282
333
  append(v);
283
334
  }
284
335
  }
285
336
 
286
-
287
- public void append(IntList list) {
337
+ /**
338
+ *
339
+ * @param list
340
+ */
341
+ public void append(IntList list) {
288
342
  for (int v : list.values()) { // will concat the list...
289
343
  append(v);
290
344
  }
291
345
  }
292
346
 
293
347
 
294
- /** Add this value, but only if it's not already in the list. */
348
+ /** Add this value, but only if it's not already in the list.
349
+ * @param value */
295
350
  public void appendUnique(int value) {
296
351
  if (!hasValue(value)) {
297
352
  append(value);
@@ -328,6 +383,12 @@ public class IntList implements Iterable<Integer> {
328
383
  // }
329
384
  // }
330
385
 
386
+ /**
387
+ *
388
+ * @param index
389
+ * @param value
390
+ */
391
+
331
392
 
332
393
  public void insert(int index, int value) {
333
394
  insert(index, new int[] { value });
@@ -335,6 +396,12 @@ public class IntList implements Iterable<Integer> {
335
396
 
336
397
 
337
398
  // same as splice
399
+
400
+ /**
401
+ *
402
+ * @param index
403
+ * @param values
404
+ */
338
405
  public void insert(int index, int[] values) {
339
406
  if (index < 0) {
340
407
  throw new IllegalArgumentException("insert() index cannot be negative: it was " + index);
@@ -362,8 +429,12 @@ public class IntList implements Iterable<Integer> {
362
429
  data = temp;
363
430
  }
364
431
 
365
-
366
- public void insert(int index, IntList list) {
432
+ /**
433
+ *
434
+ * @param index
435
+ * @param list
436
+ */
437
+ public void insert(int index, IntList list) {
367
438
  insert(index, list.values());
368
439
  }
369
440
 
@@ -411,7 +482,9 @@ public class IntList implements Iterable<Integer> {
411
482
  // }
412
483
 
413
484
 
414
- /** Return the first index of a particular value. */
485
+ /** Return the first index of a particular value.
486
+ * @param what
487
+ * @return */
415
488
  public int index(int what) {
416
489
  /*
417
490
  if (indexCache != null) {
@@ -441,6 +514,8 @@ public class IntList implements Iterable<Integer> {
441
514
  // }
442
515
 
443
516
  /**
517
+ * @param value
518
+ * @return
444
519
  * @webref intlist:method
445
520
  * @brief Check if a number is a part of the list
446
521
  */
@@ -458,6 +533,7 @@ public class IntList implements Iterable<Integer> {
458
533
  }
459
534
 
460
535
  /**
536
+ * @param index
461
537
  * @webref intlist:method
462
538
  * @brief Add one to a value
463
539
  */
@@ -477,6 +553,8 @@ public class IntList implements Iterable<Integer> {
477
553
 
478
554
 
479
555
  /**
556
+ * @param index
557
+ * @param amount
480
558
  * @webref intlist:method
481
559
  * @brief Add to a value
482
560
  */
@@ -489,6 +567,8 @@ public class IntList implements Iterable<Integer> {
489
567
  }
490
568
 
491
569
  /**
570
+ * @param index
571
+ * @param amount
492
572
  * @webref intlist:method
493
573
  * @brief Subtract from a value
494
574
  */
@@ -501,6 +581,8 @@ public class IntList implements Iterable<Integer> {
501
581
  }
502
582
 
503
583
  /**
584
+ * @param index
585
+ * @param amount
504
586
  * @webref intlist:method
505
587
  * @brief Multiply a value
506
588
  */
@@ -513,6 +595,8 @@ public class IntList implements Iterable<Integer> {
513
595
  }
514
596
 
515
597
  /**
598
+ * @param index
599
+ * @param amount
516
600
  * @webref intlist:method
517
601
  * @brief Divide a value
518
602
  */
@@ -536,6 +620,7 @@ public class IntList implements Iterable<Integer> {
536
620
 
537
621
 
538
622
  /**
623
+ * @return
539
624
  * @webref intlist:method
540
625
  * @brief Return the smallest value
541
626
  */
@@ -551,6 +636,11 @@ public class IntList implements Iterable<Integer> {
551
636
 
552
637
  // returns the index of the minimum value.
553
638
  // if there are ties, it returns the first one found.
639
+
640
+ /**
641
+ *
642
+ * @return
643
+ */
554
644
  public int minIndex() {
555
645
  checkMinMax("minIndex");
556
646
  int value = data[0];
@@ -566,6 +656,7 @@ public class IntList implements Iterable<Integer> {
566
656
 
567
657
 
568
658
  /**
659
+ * @return
569
660
  * @webref intlist:method
570
661
  * @brief Return the largest value
571
662
  */
@@ -581,6 +672,11 @@ public class IntList implements Iterable<Integer> {
581
672
 
582
673
  // returns the index of the maximum value.
583
674
  // if there are ties, it returns the first one found.
675
+
676
+ /**
677
+ *
678
+ * @return
679
+ */
584
680
  public int maxIndex() {
585
681
  checkMinMax("maxIndex");
586
682
  int value = data[0];
@@ -594,8 +690,11 @@ public class IntList implements Iterable<Integer> {
594
690
  return index;
595
691
  }
596
692
 
597
-
598
- public int sum() {
693
+ /**
694
+ *
695
+ * @return
696
+ */
697
+ public int sum() {
599
698
  long amount = sumLong();
600
699
  if (amount > Integer.MAX_VALUE) {
601
700
  throw new RuntimeException("sum() exceeds " + Integer.MAX_VALUE + ", use sumLong()");
@@ -606,8 +705,11 @@ public class IntList implements Iterable<Integer> {
606
705
  return (int) amount;
607
706
  }
608
707
 
609
-
610
- public long sumLong() {
708
+ /**
709
+ *
710
+ * @return
711
+ */
712
+ public long sumLong() {
611
713
  long sum = 0;
612
714
  for (int i = 0; i < count; i++) {
613
715
  sum += data[i];
@@ -710,6 +812,7 @@ public class IntList implements Iterable<Integer> {
710
812
  /**
711
813
  * Randomize the list order using the random() function from the specified
712
814
  * sketch, allowing shuffle() to use its current randomSeed() setting.
815
+ * @param sketch
713
816
  */
714
817
  public void shuffle(PApplet sketch) {
715
818
  int num = count;
@@ -722,8 +825,11 @@ public class IntList implements Iterable<Integer> {
722
825
  }
723
826
  }
724
827
 
725
-
726
- public IntList copy() {
828
+ /**
829
+ *
830
+ * @return
831
+ */
832
+ public IntList copy() {
727
833
  IntList outgoing = new IntList(data);
728
834
  outgoing.count = count;
729
835
  return outgoing;
@@ -731,17 +837,21 @@ public class IntList implements Iterable<Integer> {
731
837
 
732
838
 
733
839
  /**
734
- * Returns the actual array being used to store the data. For advanced users,
735
- * this is the fastest way to access a large list. Suitable for iterating
736
- * with a for() loop, but modifying the list will have terrible consequences.
840
+ * Returns the actual array being used to store the data.For advanced users,
841
+ this is the fastest way to access a large list. Suitable for iterating
842
+ with a for() loop, but modifying the list will have terrible consequences.
843
+ * @return
737
844
  */
738
845
  public int[] values() {
739
846
  crop();
740
847
  return data;
741
848
  }
742
849
 
743
-
744
- @Override
850
+ /**
851
+ *
852
+ * @return
853
+ */
854
+ @Override
745
855
  public Iterator<Integer> iterator() {
746
856
  // public Iterator<Integer> valueIterator() {
747
857
  return new Iterator<Integer>() {
@@ -776,9 +886,10 @@ public class IntList implements Iterable<Integer> {
776
886
 
777
887
 
778
888
  /**
779
- * Copy values into the specified array. If the specified array is null or
780
- * not the same size, a new array will be allocated.
889
+ * Copy values into the specified array.If the specified array is null or
890
+ not the same size, a new array will be allocated.
781
891
  * @param array
892
+ * @return
782
893
  */
783
894
  public int[] array(int[] array) {
784
895
  if (array == null || array.length != count) {
@@ -833,10 +944,11 @@ public class IntList implements Iterable<Integer> {
833
944
 
834
945
 
835
946
  /**
836
- * Returns a normalized version of this array. Called getPercent() for
837
- * consistency with the Dict classes. It's a getter method because it needs
838
- * to returns a new list (because IntList/Dict can't do percentages or
839
- * normalization in place on int values).
947
+ * Returns a normalized version of this array.Called getPercent() for
948
+ consistency with the Dict classes. It's a getter method because it needs
949
+ to returns a new list (because IntList/Dict can't do percentages or
950
+ normalization in place on int values).
951
+ * @return
840
952
  */
841
953
  public FloatList getPercent() {
842
954
  double sum = 0;
@@ -864,20 +976,35 @@ public class IntList implements Iterable<Integer> {
864
976
  // return outgoing;
865
977
  // }
866
978
 
979
+ /**
980
+ *
981
+ * @param start
982
+ * @return
983
+ */
984
+
867
985
 
868
986
  public IntList getSubset(int start) {
869
987
  return getSubset(start, count - start);
870
988
  }
871
989
 
872
-
873
- public IntList getSubset(int start, int num) {
990
+ /**
991
+ *
992
+ * @param start
993
+ * @param num
994
+ * @return
995
+ */
996
+ public IntList getSubset(int start, int num) {
874
997
  int[] subset = new int[num];
875
998
  System.arraycopy(data, start, subset, 0, num);
876
999
  return new IntList(subset);
877
1000
  }
878
1001
 
879
-
880
- public String join(String separator) {
1002
+ /**
1003
+ *
1004
+ * @param separator
1005
+ * @return
1006
+ */
1007
+ public String join(String separator) {
881
1008
  if (count == 0) {
882
1009
  return "";
883
1010
  }
@@ -890,8 +1017,10 @@ public class IntList implements Iterable<Integer> {
890
1017
  return sb.toString();
891
1018
  }
892
1019
 
893
-
894
- public void print() {
1020
+ /**
1021
+ *
1022
+ */
1023
+ public void print() {
895
1024
  for (int i = 0; i < count; i++) {
896
1025
  System.out.format("[%d] %d%n", i, data[i]);
897
1026
  }
@@ -900,13 +1029,17 @@ public class IntList implements Iterable<Integer> {
900
1029
 
901
1030
  /**
902
1031
  * Return this dictionary as a String in JSON format.
1032
+ * @return
903
1033
  */
904
1034
  public String toJSON() {
905
1035
  return "[ " + join(", ") + " ]";
906
1036
  }
907
1037
 
908
-
909
- @Override
1038
+ /**
1039
+ *
1040
+ * @return
1041
+ */
1042
+ @Override
910
1043
  public String toString() {
911
1044
  return getClass().getSimpleName() + " size=" + size() + " " + toJSON();
912
1045
  }