Revision: 1154
Author:   heuermh
Date:     Tue Nov  1 10:33:52 2011
Log: Issue 134 ; do not apply transform if destination transform is null
http://code.google.com/p/piccolo2d/source/detail?r=1154

Modified:
/piccolo2d.java/branches/release-1.3/core/src/main/java/edu/umd/cs/piccolo/activities/PTransformActivity.java /piccolo2d.java/branches/release-1.3/core/src/test/java/edu/umd/cs/piccolo/activities/PTransformActivityTest.java

=======================================
--- /piccolo2d.java/branches/release-1.3/core/src/main/java/edu/umd/cs/piccolo/activities/PTransformActivity.java Tue Mar 15 15:28:41 2011 +++ /piccolo2d.java/branches/release-1.3/core/src/main/java/edu/umd/cs/piccolo/activities/PTransformActivity.java Tue Nov 1 10:33:52 2011
@@ -196,6 +196,9 @@
     public void setRelativeTargetValue(final float zeroToOne) {
         super.setRelativeTargetValue(zeroToOne);

+        if (destination == null) {
+            return;
+        }
STATIC_TRANSFORM.setTransform(source[0] + zeroToOne * (destination[0] - source[0]), source[1] + zeroToOne * (destination[1] - source[1]), source[2] + zeroToOne * (destination[2] - source[2]), source[3] + zeroToOne * (destination[3] - source[3]), source[4] + zeroToOne * (destination[4] - source[4]),
=======================================
--- /piccolo2d.java/branches/release-1.3/core/src/test/java/edu/umd/cs/piccolo/activities/PTransformActivityTest.java Tue Mar 15 15:28:41 2011 +++ /piccolo2d.java/branches/release-1.3/core/src/test/java/edu/umd/cs/piccolo/activities/PTransformActivityTest.java Tue Nov 1 10:33:52 2011
@@ -28,16 +28,35 @@
  */
 package edu.umd.cs.piccolo.activities;

+import java.awt.geom.AffineTransform;
+
+import edu.umd.cs.piccolo.PNode;
+
 import junit.framework.TestCase;

 /**
  * Unit test for PTransformActivity.
  */
 public class PTransformActivityTest extends TestCase {
+    private final PNode node = new PNode();
+ private final PTransformActivity.Target target = new PTransformActivity.Target() {
+            public void setTransform(final AffineTransform aTransform) {
+                node.setTransform(aTransform);
+            }
+            public void getSourceMatrix(final double[] aSource) {
+                node.getTransformReference(true).getMatrix(aSource);
+            }
+        };

     public PTransformActivityTest(final String name) {
         super(name);
     }
+
+    public void testNullDestinationTransform() {
+ final PTransformActivity transformActivity = new PTransformActivity(0, 0, target);
+        transformActivity.setDestinationTransform(null);
+        transformActivity.setRelativeTargetValue(0.0f);
+    }

     public void testToString() {
final PTransformActivity transformActivity = new PTransformActivity(1000, 0, null);

--
Piccolo2D Developers Group: http://groups.google.com/group/piccolo2d-dev?hl=en

Reply via email to