From 7cd27e4daf27b730908f0b929385bffc2fa3c41d Mon Sep 17 00:00:00 2001
From: Rami Santina <rami.santina@gmail.com>
Date: Fri, 8 Apr 2011 17:31:17 +0300
Subject: Added getBounds impl to region, returning AABBox

---
 src/jogl/classes/com/jogamp/graph/curve/Region.java | 3 +++
 1 file changed, 3 insertions(+)

(limited to 'src/jogl/classes/com')

diff --git a/src/jogl/classes/com/jogamp/graph/curve/Region.java b/src/jogl/classes/com/jogamp/graph/curve/Region.java
index 051cb1c38..40161f067 100755
--- a/src/jogl/classes/com/jogamp/graph/curve/Region.java
+++ b/src/jogl/classes/com/jogamp/graph/curve/Region.java
@@ -29,6 +29,7 @@ package com.jogamp.graph.curve;
 
 import java.util.ArrayList;
 
+import com.jogamp.graph.geom.AABBox;
 import com.jogamp.graph.geom.Triangle;
 import com.jogamp.graph.geom.Vertex;
 import com.jogamp.opengl.util.PMVMatrix;
@@ -117,6 +118,8 @@ public interface Region {
 	 */
 	public void destroy();
 	
+	public AABBox getBounds(); 
+	
 	public boolean isFlipped();
 	
 	/** Set if the y coordinate of the region should be flipped
-- 
cgit v1.2.3


From 65c77a5a8375df3c15fcf36384b700ca03c485f9 Mon Sep 17 00:00:00 2001
From: Rami Santina <rami.santina@gmail.com>
Date: Fri, 8 Apr 2011 17:35:18 +0300
Subject: Fix: AABBox setLow/setHigh call resize; removes possible call error

---
 src/jogl/classes/com/jogamp/graph/geom/AABBox.java | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

(limited to 'src/jogl/classes/com')

diff --git a/src/jogl/classes/com/jogamp/graph/geom/AABBox.java b/src/jogl/classes/com/jogamp/graph/geom/AABBox.java
index 8cd06329e..17a805b31 100644
--- a/src/jogl/classes/com/jogamp/graph/geom/AABBox.java
+++ b/src/jogl/classes/com/jogamp/graph/geom/AABBox.java
@@ -57,8 +57,8 @@ public class AABBox {
 	public AABBox(float lx, float ly, float lz,
 			float hx, float hy, float hz)
 	{
-		setLow(lx, ly, lz);
-		setHigh(hx, hy, hz);
+		resize(lx, ly, lz);
+		resize(hx, hy, hz);
 
 		computeCenter();
 	}
@@ -69,8 +69,8 @@ public class AABBox {
 	 */
 	public AABBox(float[] low, float[] high)
 	{
-		this.low = low;
-		this.high = high;
+		resize(low[0],low[1],low[2]);
+		resize(high[0],high[1],high[2]);
 
 		computeCenter();
 	}
-- 
cgit v1.2.3


From deca38fce30548d0ee624b7c747daacafca37f24 Mon Sep 17 00:00:00 2001
From: Rami Santina <rami.santina@gmail.com>
Date: Fri, 8 Apr 2011 17:41:45 +0300
Subject: TextRenderer - createString exposed; Renderer - added scale();

createString function is now public to be able to create a string
without initializing textRenderer. Temp change, should be cleaned up.

added missing scale transformation to renderer pmvmatrix;

added glyphstring.getBounds() so not to use font.getStringBounds.
since it Would be a redundant call.
---
 src/jogl/classes/com/jogamp/graph/curve/opengl/Renderer.java     | 7 +++++++
 src/jogl/classes/com/jogamp/graph/curve/opengl/TextRenderer.java | 2 +-
 src/jogl/classes/jogamp/graph/curve/text/GlyphString.java        | 5 +++++
 3 files changed, 13 insertions(+), 1 deletion(-)

(limited to 'src/jogl/classes/com')

diff --git a/src/jogl/classes/com/jogamp/graph/curve/opengl/Renderer.java b/src/jogl/classes/com/jogamp/graph/curve/opengl/Renderer.java
index 57eeb016f..c9661b52a 100644
--- a/src/jogl/classes/com/jogamp/graph/curve/opengl/Renderer.java
+++ b/src/jogl/classes/com/jogamp/graph/curve/opengl/Renderer.java
@@ -124,6 +124,13 @@ public abstract class Renderer {
             st.glUniform(gl, mgl_PMVMatrix);
         }
     }
+    
+    public void scale(GL2ES2 gl, float x, float y, float z) {
+        pmvMatrix.glScalef(x, y, z);
+        if(initialized && null != gl && st.inUse()) {
+            st.glUniform(gl, mgl_PMVMatrix);
+        }
+    }
 
     public void resetModelview(GL2ES2 gl) {
         pmvMatrix.glMatrixMode(GLMatrixFunc.GL_MODELVIEW);
diff --git a/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRenderer.java b/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRenderer.java
index 45f78fc23..44d9a9be3 100644
--- a/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRenderer.java
+++ b/src/jogl/classes/com/jogamp/graph/curve/opengl/TextRenderer.java
@@ -49,7 +49,7 @@ public abstract class TextRenderer extends Renderer {
      * @param sharpness parameter for Region generation of the resulting GlyphString
      * @return the resulting GlyphString inclusive the generated region
      */
-    protected GlyphString createString(GL2ES2 gl, Font font, int size, String str, float sharpness) {
+    public GlyphString createString(GL2ES2 gl, Font font, int size, String str, float sharpness) {
         AffineTransform affineTransform = new AffineTransform(pointFactory);
         
         Path2D[] paths = new Path2D[str.length()];
diff --git a/src/jogl/classes/jogamp/graph/curve/text/GlyphString.java b/src/jogl/classes/jogamp/graph/curve/text/GlyphString.java
index 808e3a415..7c7bb816f 100644
--- a/src/jogl/classes/jogamp/graph/curve/text/GlyphString.java
+++ b/src/jogl/classes/jogamp/graph/curve/text/GlyphString.java
@@ -29,6 +29,7 @@ package jogamp.graph.curve.text;
 
 import java.util.ArrayList;
 
+import com.jogamp.graph.geom.AABBox;
 import com.jogamp.graph.geom.Vertex;
 import com.jogamp.graph.geom.Triangle;
 import com.jogamp.graph.geom.opengl.SVertex;
@@ -160,4 +161,8 @@ public class GlyphString {
 	public void destroy(){
 		region.destroy();
 	}
+	
+	public AABBox getBounds(){
+		return region.getBounds();
+	}
 }
-- 
cgit v1.2.3