Added methods to concatenate a translation, rotation or scale directly onto an

existing transform.
This commit is contained in:
Michael Bayne
2011-07-06 14:13:21 -07:00
parent 6eda0bb25e
commit 1d7ef7cdf7
9 changed files with 299 additions and 30 deletions
@@ -67,15 +67,18 @@ public class TransformTest
Transform t2 = proto.clone();
t2.setRotation(angle);
Transform t = t1.clone().rotate(angle);
Transform tpost = t2.concatenate(t1);
Transform tpre = t1.preConcatenate(t2);
for (Point point : POINTS) {
Point expect = point.add(trans.x, trans.y).rotateLocal(angle);
test(t, point, expect);
test(tpost, point, expect);
test(tpre, point, expect);
}
for (Vector vector : VECTORS) {
Vector expect = vector.rotate(angle);
test(t, vector, expect);
test(tpost, vector, expect);
test(tpre, vector, expect);
}
@@ -129,15 +132,18 @@ public class TransformTest
Transform t2 = proto.clone();
t2.setUniformScale(scale);
Transform t = t1.clone().uniformScale(scale);
Transform tpost = t2.concatenate(t1);
Transform tpre = t1.preConcatenate(t2);
for (Point point : POINTS) {
Point expect = point.add(trans.x, trans.y).multLocal(scale);
test(t, point, expect);
test(tpost, point, expect);
test(tpre, point, expect);
}
for (Vector vector : VECTORS) {
Vector expect = vector.mult(scale);
test(t, vector, expect);
test(tpost, vector, expect);
test(tpre, vector, expect);
}
@@ -191,15 +197,18 @@ public class TransformTest
Transform t2 = proto.clone();
t2.setUniformScale(scale);
Transform t = t1.clone().uniformScale(scale);
Transform tpost = t2.concatenate(t1);
Transform tpre = t1.preConcatenate(t2);
for (Point point : POINTS) {
Point expect = point.rotate(angle).multLocal(scale);
test(t, point, expect);
test(tpost, point, expect);
test(tpre, point, expect);
}
for (Vector vector : VECTORS) {
Vector expect = vector.rotate(angle).multLocal(scale);
test(t, vector, expect);
test(tpost, vector, expect);
test(tpre, vector, expect);
}