geomerative 1.1.0-java → 2.0.0-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.mvn/extensions.xml +1 -1
  4. data/.mvn/wrapper/maven-wrapper.properties +1 -1
  5. data/CHANGELOG.md +3 -0
  6. data/COPYING.md +1 -1
  7. data/README.md +0 -1
  8. data/Rakefile +2 -15
  9. data/docs/_includes/header.html +6 -6
  10. data/docs/_includes/icon-github.svg +3 -1
  11. data/docs/_includes/icon-twitter.svg +3 -1
  12. data/docs/_includes/navigation.html +18 -18
  13. data/docs/_sass/_base.scss +79 -79
  14. data/docs/_sass/_layout.scss +137 -137
  15. data/docs/_sass/_syntax-highlighting.scss +64 -64
  16. data/docs/index.html +18 -18
  17. data/examples/data/bot1.svg +1 -1
  18. data/examples/data/lion.svg +156 -156
  19. data/examples/data/ruby.svg +1 -1
  20. data/geomerative.gemspec +1 -2
  21. data/lib/geomerative/version.rb +1 -1
  22. data/mvnw +234 -0
  23. data/mvnw.cmd +145 -0
  24. data/pom.rb +14 -13
  25. data/pom.xml +14 -13
  26. data/src/geomerative/FastRClip.java +2149 -2156
  27. data/src/geomerative/RClip.java +2237 -2539
  28. data/src/geomerative/RClosest.java +33 -31
  29. data/src/geomerative/RCommand.java +1750 -1758
  30. data/src/geomerative/RContour.java +290 -292
  31. data/src/geomerative/RFont.java +277 -246
  32. data/src/geomerative/RG.java +722 -727
  33. data/src/geomerative/RGeomElem.java +967 -960
  34. data/src/geomerative/RGroup.java +508 -467
  35. data/src/geomerative/RMatrix.java +304 -289
  36. data/src/geomerative/RMesh.java +241 -229
  37. data/src/geomerative/RPath.java +924 -925
  38. data/src/geomerative/RPoint.java +391 -391
  39. data/src/geomerative/RPolygon.java +998 -988
  40. data/src/geomerative/RRectangle.java +43 -52
  41. data/src/geomerative/RSVG.java +480 -516
  42. data/src/geomerative/RShape.java +1767 -1777
  43. data/src/geomerative/RStrip.java +173 -176
  44. data/src/geomerative/RStyle.java +197 -194
  45. data/src/org/apache/batik/svggen/font/Font.java +141 -142
  46. data/src/org/apache/batik/svggen/font/Glyph.java +102 -71
  47. data/src/org/apache/batik/svggen/font/Point.java +12 -12
  48. data/src/org/apache/batik/svggen/font/RandomAccessFileEmulator.java +14 -12
  49. data/src/org/apache/batik/svggen/font/table/ClassDef.java +12 -12
  50. data/src/org/apache/batik/svggen/font/table/ClassDefFormat1.java +27 -24
  51. data/src/org/apache/batik/svggen/font/table/ClassDefFormat2.java +20 -17
  52. data/src/org/apache/batik/svggen/font/table/CmapFormat.java +43 -43
  53. data/src/org/apache/batik/svggen/font/table/CmapFormat0.java +33 -26
  54. data/src/org/apache/batik/svggen/font/table/CmapFormat2.java +25 -20
  55. data/src/org/apache/batik/svggen/font/table/CmapFormat4.java +106 -96
  56. data/src/org/apache/batik/svggen/font/table/CmapFormat6.java +36 -32
  57. data/src/org/apache/batik/svggen/font/table/CmapIndexEntry.java +69 -49
  58. data/src/org/apache/batik/svggen/font/table/CmapTable.java +50 -50
  59. data/src/org/apache/batik/svggen/font/table/Coverage.java +19 -19
  60. data/src/org/apache/batik/svggen/font/table/CoverageFormat1.java +30 -27
  61. data/src/org/apache/batik/svggen/font/table/CoverageFormat2.java +26 -24
  62. data/src/org/apache/batik/svggen/font/table/CvtTable.java +16 -16
  63. data/src/org/apache/batik/svggen/font/table/Device.java +32 -32
  64. data/src/org/apache/batik/svggen/font/table/DirectoryEntry.java +39 -39
  65. data/src/org/apache/batik/svggen/font/table/Feature.java +26 -23
  66. data/src/org/apache/batik/svggen/font/table/FeatureList.java +37 -35
  67. data/src/org/apache/batik/svggen/font/table/FeatureRecord.java +22 -22
  68. data/src/org/apache/batik/svggen/font/table/FeatureTags.java +4 -3
  69. data/src/org/apache/batik/svggen/font/table/FpgmTable.java +9 -9
  70. data/src/org/apache/batik/svggen/font/table/GlyfCompositeComp.java +134 -132
  71. data/src/org/apache/batik/svggen/font/table/GlyfCompositeDescript.java +123 -122
  72. data/src/org/apache/batik/svggen/font/table/GlyfDescript.java +44 -44
  73. data/src/org/apache/batik/svggen/font/table/GlyfSimpleDescript.java +110 -109
  74. data/src/org/apache/batik/svggen/font/table/GlyfTable.java +46 -46
  75. data/src/org/apache/batik/svggen/font/table/GlyphDescription.java +25 -13
  76. data/src/org/apache/batik/svggen/font/table/GposTable.java +26 -23
  77. data/src/org/apache/batik/svggen/font/table/GsubTable.java +85 -82
  78. data/src/org/apache/batik/svggen/font/table/HeadTable.java +131 -131
  79. data/src/org/apache/batik/svggen/font/table/HheaTable.java +80 -80
  80. data/src/org/apache/batik/svggen/font/table/HmtxTable.java +50 -49
  81. data/src/org/apache/batik/svggen/font/table/KernSubtable.java +29 -27
  82. data/src/org/apache/batik/svggen/font/table/KernSubtableFormat0.java +35 -32
  83. data/src/org/apache/batik/svggen/font/table/KernSubtableFormat2.java +28 -26
  84. data/src/org/apache/batik/svggen/font/table/KernTable.java +36 -31
  85. data/src/org/apache/batik/svggen/font/table/KerningPair.java +27 -23
  86. data/src/org/apache/batik/svggen/font/table/LangSys.java +28 -26
  87. data/src/org/apache/batik/svggen/font/table/LangSysRecord.java +22 -22
  88. data/src/org/apache/batik/svggen/font/table/Ligature.java +24 -24
  89. data/src/org/apache/batik/svggen/font/table/LigatureSet.java +24 -24
  90. data/src/org/apache/batik/svggen/font/table/LigatureSubst.java +9 -9
  91. data/src/org/apache/batik/svggen/font/table/LigatureSubstFormat1.java +30 -30
  92. data/src/org/apache/batik/svggen/font/table/LocaTable.java +37 -37
  93. data/src/org/apache/batik/svggen/font/table/Lookup.java +41 -40
  94. data/src/org/apache/batik/svggen/font/table/LookupList.java +34 -34
  95. data/src/org/apache/batik/svggen/font/table/LookupSubtableFactory.java +7 -5
  96. data/src/org/apache/batik/svggen/font/table/MaxpTable.java +96 -96
  97. data/src/org/apache/batik/svggen/font/table/NameRecord.java +64 -65
  98. data/src/org/apache/batik/svggen/font/table/NameTable.java +33 -33
  99. data/src/org/apache/batik/svggen/font/table/Os2Table.java +196 -196
  100. data/src/org/apache/batik/svggen/font/table/Panose.java +14 -12
  101. data/src/org/apache/batik/svggen/font/table/PostTable.java +338 -338
  102. data/src/org/apache/batik/svggen/font/table/PrepTable.java +9 -9
  103. data/src/org/apache/batik/svggen/font/table/Program.java +15 -15
  104. data/src/org/apache/batik/svggen/font/table/RangeRecord.java +26 -25
  105. data/src/org/apache/batik/svggen/font/table/Script.java +38 -38
  106. data/src/org/apache/batik/svggen/font/table/ScriptList.java +42 -42
  107. data/src/org/apache/batik/svggen/font/table/ScriptRecord.java +22 -22
  108. data/src/org/apache/batik/svggen/font/table/ScriptTags.java +2 -1
  109. data/src/org/apache/batik/svggen/font/table/SingleSubst.java +15 -16
  110. data/src/org/apache/batik/svggen/font/table/SingleSubstFormat1.java +33 -33
  111. data/src/org/apache/batik/svggen/font/table/SingleSubstFormat2.java +32 -32
  112. data/src/org/apache/batik/svggen/font/table/Table.java +171 -170
  113. data/src/org/apache/batik/svggen/font/table/TableDirectory.java +55 -55
  114. data/src/org/apache/batik/svggen/font/table/TableFactory.java +92 -93
  115. metadata +10 -11
  116. data/.travis.yml +0 -9
@@ -23,16 +23,16 @@ package org.apache.batik.svggen.font;
23
23
  */
24
24
  public class Point {
25
25
 
26
- public int x = 0;
27
- public int y = 0;
28
- public boolean onCurve = true;
29
- public boolean endOfContour = false;
30
- public boolean touched = false;
31
-
32
- public Point(int x, int y, boolean onCurve, boolean endOfContour) {
33
- this.x = x;
34
- this.y = y;
35
- this.onCurve = onCurve;
36
- this.endOfContour = endOfContour;
37
- }
26
+ public int x = 0;
27
+ public int y = 0;
28
+ public boolean onCurve = true;
29
+ public boolean endOfContour = false;
30
+ public boolean touched = false;
31
+
32
+ public Point(int x, int y, boolean onCurve, boolean endOfContour) {
33
+ this.x = x;
34
+ this.y = y;
35
+ this.onCurve = onCurve;
36
+ this.endOfContour = endOfContour;
37
+ }
38
38
  }
@@ -1,15 +1,17 @@
1
1
  package org.apache.batik.svggen.font;
2
2
 
3
- import java.io.*;
4
-
5
- public class RandomAccessFileEmulator extends DataInputStream{
6
-
7
- public RandomAccessFileEmulator(byte[] byteArray, String accesMode){
8
- super(new ByteArrayInputStream(byteArray));
9
- }
10
-
11
- public void seek(long n) throws IOException{
12
- reset();
13
- skip(n);
14
- }
3
+ import java.io.ByteArrayInputStream;
4
+ import java.io.DataInputStream;
5
+ import java.io.IOException;
6
+
7
+ public class RandomAccessFileEmulator extends DataInputStream {
8
+
9
+ public RandomAccessFileEmulator(byte[] byteArray, String accesMode) {
10
+ super(new ByteArrayInputStream(byteArray));
11
+ }
12
+
13
+ public void seek(long n) throws IOException {
14
+ reset();
15
+ skip(n);
16
+ }
15
17
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,16 +27,16 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public abstract class ClassDef {
29
29
 
30
- public abstract int getFormat();
31
-
32
- protected static ClassDef read(RandomAccessFileEmulator raf) throws IOException {
33
- ClassDef c = null;
34
- int format = raf.readUnsignedShort();
35
- if (format == 1) {
36
- c = new ClassDefFormat1(raf);
37
- } else if (format == 2) {
38
- c = new ClassDefFormat2(raf);
39
- }
40
- return c;
30
+ public abstract int getFormat();
31
+
32
+ protected static ClassDef read(RandomAccessFileEmulator raf) throws IOException {
33
+ ClassDef c = null;
34
+ int format = raf.readUnsignedShort();
35
+ if (format == 1) {
36
+ c = new ClassDefFormat1(raf);
37
+ } else if (format == 2) {
38
+ c = new ClassDefFormat2(raf);
41
39
  }
40
+ return c;
41
+ }
42
42
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,29 +27,32 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class ClassDefFormat1 extends ClassDef {
29
29
 
30
- private final int startGlyph;
31
- private final int glyphCount;
32
- private final int[] classValues;
33
-
34
- /** Creates new ClassDefFormat1
35
- * @param raf
36
- * @throws java.io.IOException */
37
- public ClassDefFormat1(RandomAccessFileEmulator raf) throws IOException {
38
- startGlyph = raf.readUnsignedShort();
39
- glyphCount = raf.readUnsignedShort();
40
- classValues = new int[glyphCount];
41
- for (int i = 0; i < glyphCount; i++) {
42
- classValues[i] = raf.readUnsignedShort();
43
- }
44
- }
45
-
46
- /**
47
- *
48
- * @return
49
- */
50
- @Override
51
- public int getFormat() {
52
- return 1;
30
+ private final int startGlyph;
31
+ private final int glyphCount;
32
+ private final int[] classValues;
33
+
34
+ /**
35
+ * Creates new ClassDefFormat1
36
+ *
37
+ * @param raf
38
+ * @throws java.io.IOException
39
+ */
40
+ public ClassDefFormat1(RandomAccessFileEmulator raf) throws IOException {
41
+ startGlyph = raf.readUnsignedShort();
42
+ glyphCount = raf.readUnsignedShort();
43
+ classValues = new int[glyphCount];
44
+ for (int i = 0; i < glyphCount; i++) {
45
+ classValues[i] = raf.readUnsignedShort();
53
46
  }
47
+ }
48
+
49
+ /**
50
+ *
51
+ * @return
52
+ */
53
+ @Override
54
+ public int getFormat() {
55
+ return 1;
56
+ }
54
57
 
55
58
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,23 +27,26 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class ClassDefFormat2 extends ClassDef {
29
29
 
30
- private final int classRangeCount;
31
- private final RangeRecord[] classRangeRecords;
32
-
33
- /** Creates new ClassDefFormat2
34
- * @param raf
35
- * @throws java.io.IOException */
36
- public ClassDefFormat2(RandomAccessFileEmulator raf) throws IOException {
37
- classRangeCount = raf.readUnsignedShort();
38
- classRangeRecords = new RangeRecord[classRangeCount];
39
- for (int i = 0; i < classRangeCount; i++) {
40
- classRangeRecords[i] = new RangeRecord(raf);
41
- }
30
+ private final int classRangeCount;
31
+ private final RangeRecord[] classRangeRecords;
32
+
33
+ /**
34
+ * Creates new ClassDefFormat2
35
+ *
36
+ * @param raf
37
+ * @throws java.io.IOException
38
+ */
39
+ public ClassDefFormat2(RandomAccessFileEmulator raf) throws IOException {
40
+ classRangeCount = raf.readUnsignedShort();
41
+ classRangeRecords = new RangeRecord[classRangeCount];
42
+ for (int i = 0; i < classRangeCount; i++) {
43
+ classRangeRecords[i] = new RangeRecord(raf);
42
44
  }
45
+ }
43
46
 
44
- @Override
45
- public int getFormat() {
46
- return 2;
47
- }
47
+ @Override
48
+ public int getFormat() {
49
+ return 2;
50
+ }
48
51
 
49
52
  }
@@ -18,8 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
22
-
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
23
22
 
24
23
  /**
25
24
  * @version $Id: CmapFormat.java,v 1.4 2004/09/01 09:35:23 deweese Exp $
@@ -27,55 +26,56 @@ import org.apache.batik.svggen.font.*;
27
26
  */
28
27
  public abstract class CmapFormat {
29
28
 
30
- protected int format;
31
- protected int length;
32
- protected int version;
29
+ protected int format;
30
+ protected int length;
31
+ protected int version;
33
32
 
34
- protected CmapFormat(RandomAccessFileEmulator raf) throws IOException {
35
- length = raf.readUnsignedShort();
36
- version = raf.readUnsignedShort();
37
- }
33
+ protected CmapFormat(RandomAccessFileEmulator raf) throws IOException {
34
+ length = raf.readUnsignedShort();
35
+ version = raf.readUnsignedShort();
36
+ }
38
37
 
39
- protected static CmapFormat create(int format, RandomAccessFileEmulator raf)
38
+ protected static CmapFormat create(int format, RandomAccessFileEmulator raf)
40
39
  throws IOException {
41
- switch(format) {
42
- case 0:
43
- return new CmapFormat0(raf);
44
- case 2:
45
- return new CmapFormat2(raf);
46
- case 4:
47
- return new CmapFormat4(raf);
48
- case 6:
49
- return new CmapFormat6(raf);
50
- }
51
- return null;
40
+ switch (format) {
41
+ case 0:
42
+ return new CmapFormat0(raf);
43
+ case 2:
44
+ return new CmapFormat2(raf);
45
+ case 4:
46
+ return new CmapFormat4(raf);
47
+ case 6:
48
+ return new CmapFormat6(raf);
52
49
  }
50
+ return null;
51
+ }
53
52
 
54
- public int getFormat() {
55
- return format;
56
- }
53
+ public int getFormat() {
54
+ return format;
55
+ }
57
56
 
58
- public int getLength() {
59
- return length;
60
- }
57
+ public int getLength() {
58
+ return length;
59
+ }
61
60
 
62
- public int getVersion() {
63
- return version;
64
- }
61
+ public int getVersion() {
62
+ return version;
63
+ }
65
64
 
66
- public abstract int mapCharCode(int charCode);
65
+ public abstract int mapCharCode(int charCode);
67
66
 
68
- public abstract int getFirst();
69
- public abstract int getLast();
67
+ public abstract int getFirst();
70
68
 
71
- @Override
72
- public String toString() {
73
- return new StringBuilder()
74
- .append("format: ")
75
- .append(format)
76
- .append(", length: ")
77
- .append(length)
78
- .append(", version: ")
79
- .append(version).toString();
80
- }
69
+ public abstract int getLast();
70
+
71
+ @Override
72
+ public String toString() {
73
+ return new StringBuilder()
74
+ .append("format: ")
75
+ .append(format)
76
+ .append(", length: ")
77
+ .append(length)
78
+ .append(", version: ")
79
+ .append(version).toString();
80
+ }
81
81
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  * Simple Macintosh cmap table, mapping only the ASCII character set to glyphs.
@@ -28,33 +28,40 @@ import org.apache.batik.svggen.font.*;
28
28
  */
29
29
  public class CmapFormat0 extends CmapFormat {
30
30
 
31
- private final int[] glyphIdArray = new int[256];
32
- private int first, last;
33
-
34
- protected CmapFormat0(RandomAccessFileEmulator raf) throws IOException {
35
- super(raf);
36
- format = 0;
37
- first = -1;
38
- for (int i = 0; i < 256; i++) {
39
- glyphIdArray[i] = raf.readUnsignedByte();
40
- if (glyphIdArray[i] > 0) {
41
- if (first == -1) first = i;
42
- last = i;
43
- }
31
+ private final int[] glyphIdArray = new int[256];
32
+ private int first, last;
33
+
34
+ protected CmapFormat0(RandomAccessFileEmulator raf) throws IOException {
35
+ super(raf);
36
+ format = 0;
37
+ first = -1;
38
+ for (int i = 0; i < 256; i++) {
39
+ glyphIdArray[i] = raf.readUnsignedByte();
40
+ if (glyphIdArray[i] > 0) {
41
+ if (first == -1) {
42
+ first = i;
44
43
  }
44
+ last = i;
45
+ }
45
46
  }
47
+ }
46
48
 
47
- @Override
48
- public int getFirst() { return first; }
49
- @Override
50
- public int getLast() { return last; }
51
-
52
- @Override
53
- public int mapCharCode(int charCode) {
54
- if (0 <= charCode && charCode < 256) {
55
- return glyphIdArray[charCode];
56
- } else {
57
- return 0;
58
- }
49
+ @Override
50
+ public int getFirst() {
51
+ return first;
52
+ }
53
+
54
+ @Override
55
+ public int getLast() {
56
+ return last;
57
+ }
58
+
59
+ @Override
60
+ public int mapCharCode(int charCode) {
61
+ if (0 <= charCode && charCode < 256) {
62
+ return glyphIdArray[charCode];
63
+ } else {
64
+ return 0;
59
65
  }
66
+ }
60
67
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  * @version $Id: CmapFormat2.java,v 1.4 2004/09/01 09:35:23 deweese Exp $
@@ -26,23 +26,28 @@ import org.apache.batik.svggen.font.*;
26
26
  */
27
27
  public class CmapFormat2 extends CmapFormat {
28
28
 
29
- private final short[] subHeaderKeys = new short[256];
30
- private int[] subHeaders1;
31
- private int[] subHeaders2;
32
- private short[] glyphIndexArray;
33
-
34
- protected CmapFormat2(RandomAccessFileEmulator raf) throws IOException {
35
- super(raf);
36
- format = 2;
37
- }
38
-
39
- @Override
40
- public int getFirst() { return 0; }
41
- @Override
42
- public int getLast() { return 0; }
43
-
44
- @Override
45
- public int mapCharCode(int charCode) {
46
- return 0;
47
- }
29
+ private final short[] subHeaderKeys = new short[256];
30
+ private int[] subHeaders1;
31
+ private int[] subHeaders2;
32
+ private short[] glyphIndexArray;
33
+
34
+ protected CmapFormat2(RandomAccessFileEmulator raf) throws IOException {
35
+ super(raf);
36
+ format = 2;
37
+ }
38
+
39
+ @Override
40
+ public int getFirst() {
41
+ return 0;
42
+ }
43
+
44
+ @Override
45
+ public int getLast() {
46
+ return 0;
47
+ }
48
+
49
+ @Override
50
+ public int mapCharCode(int charCode) {
51
+ return 0;
52
+ }
48
53
  }