summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2013-04-11 12:39:03 -0700
committerRuben Brunk <rubenbrunk@google.com>2013-04-11 13:08:31 -0700
commit966f219a6bd36c4ddb8d07259fa31097a441745e (patch)
tree929cbb2bb4b3885b5530bc85f069ed2e6d5e6d68
parent7c6140adb4ea219da3a45f5d69daae3f4340593a (diff)
downloadandroid_packages_apps_Snap-966f219a6bd36c4ddb8d07259fa31097a441745e.tar.gz
android_packages_apps_Snap-966f219a6bd36c4ddb8d07259fa31097a441745e.tar.bz2
android_packages_apps_Snap-966f219a6bd36c4ddb8d07259fa31097a441745e.zip
Setup geometry xforms and propogation chain.
Bug: 8597538 Change-Id: I4a6b8ebcfadfd30850a73217742c740835761388
-rw-r--r--src/com/android/gallery3d/filtershow/crop/BoundedRect.java10
-rw-r--r--src/com/android/gallery3d/filtershow/crop/CropObject.java8
2 files changed, 16 insertions, 2 deletions
diff --git a/src/com/android/gallery3d/filtershow/crop/BoundedRect.java b/src/com/android/gallery3d/filtershow/crop/BoundedRect.java
index c2c768eaf..74ce7cdd5 100644
--- a/src/com/android/gallery3d/filtershow/crop/BoundedRect.java
+++ b/src/com/android/gallery3d/filtershow/crop/BoundedRect.java
@@ -53,6 +53,16 @@ public class BoundedRect {
reconstrain();
}
+ public void resetTo(float rotation, RectF outerRect, RectF innerRect) {
+ rot = rotation;
+ outer.set(outerRect);
+ inner.set(innerRect);
+ innerRotated = CropMath.getCornersFromRect(inner);
+ rotateInner();
+ if (!isConstrained())
+ reconstrain();
+ }
+
/**
* Sets inner, and re-constrains it to fit within the rotated bounding rect.
*/
diff --git a/src/com/android/gallery3d/filtershow/crop/CropObject.java b/src/com/android/gallery3d/filtershow/crop/CropObject.java
index 00baba980..08cf158e1 100644
--- a/src/com/android/gallery3d/filtershow/crop/CropObject.java
+++ b/src/com/android/gallery3d/filtershow/crop/CropObject.java
@@ -55,11 +55,15 @@ public class CropObject {
mBoundedRect = new BoundedRect(outerAngle % 360, outerBound, innerBound);
}
- public void setToInnerBounds(RectF r) {
+ public void resetBoundsTo(RectF inner, RectF outer) {
+ mBoundedRect.resetTo(0, outer, inner);
+ }
+
+ public void getInnerBounds(RectF r) {
mBoundedRect.setToInner(r);
}
- public void setToOuterBounds(RectF r) {
+ public void getOuterBounds(RectF r) {
mBoundedRect.setToOuter(r);
}