aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com/jogamp/graph/curve
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2014-03-15 07:02:35 +0100
committerSven Gothel <[email protected]>2014-03-15 07:02:35 +0100
commit0b61e9a2641e38475a330303e49f6becf99158e1 (patch)
tree4d4bd7ead74950ce7df84d184519873bd83bf660 /src/jogl/classes/com/jogamp/graph/curve
parente4641e304fbc64a5d185a39c6ca6357cc678e013 (diff)
Bug 801: Remove Vertex.Factory from AffineTransform ; Add AABBox tranformed resize.
Diffstat (limited to 'src/jogl/classes/com/jogamp/graph/curve')
-rw-r--r--src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java8
-rw-r--r--src/jogl/classes/com/jogamp/graph/curve/Region.java16
-rw-r--r--src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java2
3 files changed, 13 insertions, 13 deletions
diff --git a/src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java b/src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java
index 0d3a61fac..63183bf68 100644
--- a/src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java
+++ b/src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java
@@ -332,7 +332,7 @@ public class OutlineShape implements Comparable<OutlineShape> {
final Outline lo = getLastOutline();
lo.addVertex(v);
if( 0 == ( dirtyBits & DIRTY_BOUNDS ) ) {
- bbox.resize(lo.getBounds());
+ bbox.resize(v.getCoord());
}
// vertices.add(v); // FIXME: can do and remove DIRTY_VERTICES ?
dirtyBits |= DIRTY_TRIANGLES | DIRTY_VERTICES;
@@ -347,7 +347,7 @@ public class OutlineShape implements Comparable<OutlineShape> {
final Outline lo = getLastOutline();
lo.addVertex(position, v);
if( 0 == ( dirtyBits & DIRTY_BOUNDS ) ) {
- bbox.resize(lo.getBounds());
+ bbox.resize(v.getCoord());
}
dirtyBits |= DIRTY_TRIANGLES | DIRTY_VERTICES;
}
@@ -653,11 +653,11 @@ public class OutlineShape implements Comparable<OutlineShape> {
* Note: Triangulated data is lost in returned instance!
* </p>
*/
- public OutlineShape transform(AffineTransform t) {
+ public final OutlineShape transform(final AffineTransform t) {
final OutlineShape newOutlineShape = new OutlineShape(vertexFactory);
final int osize = outlines.size();
for(int i=0; i<osize; i++) {
- newOutlineShape.addOutline( outlines.get(i).transform(t) );
+ newOutlineShape.addOutline( outlines.get(i).transform(t, vertexFactory) );
}
return newOutlineShape;
}
diff --git a/src/jogl/classes/com/jogamp/graph/curve/Region.java b/src/jogl/classes/com/jogamp/graph/curve/Region.java
index 853c837f5..bb0ed09d1 100644
--- a/src/jogl/classes/com/jogamp/graph/curve/Region.java
+++ b/src/jogl/classes/com/jogamp/graph/curve/Region.java
@@ -202,12 +202,12 @@ public abstract class Region {
* The optional {@link AffineTransform} is applied to the bounding-box beforehand.
* </p>
*/
- public final void addOutlineShape(final OutlineShape shape, final AffineTransform transform) {
+ public final void addOutlineShape(final OutlineShape shape, final AffineTransform t) {
if( null != frustum ) {
final AABBox shapeBox = shape.getBounds();
final AABBox shapeBoxT;
- if( null != transform ) {
- transform.transform(shapeBox, tmpBox);
+ if( null != t ) {
+ t.transform(shapeBox, tmpBox);
shapeBoxT = tmpBox;
} else {
shapeBoxT = shapeBox;
@@ -222,7 +222,7 @@ public abstract class Region {
final List<Triangle> trisIn = shape.getTriangles(OutlineShape.VerticesState.QUADRATIC_NURBS);
final ArrayList<Vertex> vertsIn = shape.getVertices();
if(DEBUG_INSTANCE) {
- System.err.println("Region.addOutlineShape().0: tris: "+trisIn.size()+", verts "+vertsIn.size()+", transform "+transform);
+ System.err.println("Region.addOutlineShape().0: tris: "+trisIn.size()+", verts "+vertsIn.size()+", transform "+t);
}
final int idxOffset = numVertices;
int vertsVNewIdxCount = 0, vertsTMovIdxCount = 0, vertsTNewIdxCount = 0, tris = 0;
@@ -232,7 +232,7 @@ public abstract class Region {
System.err.println("Region.addOutlineShape(): Processing Vertices");
}
for(int i=0; i<vertsIn.size(); i++) {
- pushNewVertexImpl(vertsIn.get(i), transform);
+ pushNewVertexImpl(vertsIn.get(i), t);
vertsVNewIdxCount++;
}
if(DEBUG_INSTANCE) {
@@ -261,9 +261,9 @@ public abstract class Region {
if(Region.DEBUG_INSTANCE) {
System.err.println("T["+i+"]: New Idx "+numVertices);
}
- pushNewVertexIdxImpl(triInVertices[0], transform);
- pushNewVertexIdxImpl(triInVertices[1], transform);
- pushNewVertexIdxImpl(triInVertices[2], transform);
+ pushNewVertexIdxImpl(triInVertices[0], t);
+ pushNewVertexIdxImpl(triInVertices[1], t);
+ pushNewVertexIdxImpl(triInVertices[2], t);
vertsTNewIdxCount+=3;
}
tris++;
diff --git a/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java b/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java
index 0721c4726..140e03cfb 100644
--- a/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java
+++ b/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java
@@ -128,7 +128,7 @@ public class TextRegionUtil {
public final void visit(final OutlineShape shape, final AffineTransform t) {
region.addOutlineShape(shape, t);
} };
- processString(visitor, new AffineTransform(vertexFactory), font, pixelSize, str);
+ processString(visitor, new AffineTransform(), font, pixelSize, str);
}
/**