changes: now Inference engine works fine with the EyeTracking benchmark.
[IRC.git] / Robust / src / Benchmarks / SSJava / EyeTracking / EyePosition.java
index 72676d27489a979991d08ef36002d90cd37258ea..f5edbb88756f50f66d1512ac7cb43fbdaa16ee57 100644 (file)
  * along with LEA. If not, see <http://www.gnu.org/licenses/>.
  */
 
-
 /**
  * No description given.
  * 
  * @author Florian Frankenberger
  */
+@LATTICE("POS")
+@METHODDEFAULT("OUT<THIS,THISLOC=THIS,RETURNLOC=OUT")
 public class EyePosition {
-    private int x;
-    private int y;
-    private Rectangle2D faceRect;
+  @LOC("POS")
+  private int x;
+  @LOC("POS")
+  private int y;
 
-    public EyePosition(Point p, Rectangle2D faceRect) {
-        this(p.x, p.y, faceRect);
-    }
-    
-    public EyePosition(int x, int y, Rectangle2D faceRect) {
-        this.x = x;
-        this.y = y;
-        this.faceRect = faceRect;
-    }
+  public EyePosition(int x, int y) {
+    this.x = x;
+    this.y = y;
+  }
 
-    public int getX() {
-        return this.x;
-    }
+  public int getX() {
+    return this.x;
+  }
 
-    public int getY() {
-        return this.y;
-    }
-    
-//    public Deviation getDeviation(EyePosition oldEyePosition) {
-//        if (oldEyePosition == null) return Deviation.NONE;
-//
-//        //first we check if the faceRects are corresponding
-//        double widthChange = (this.faceRect.getWidth() - oldEyePosition.faceRect.getWidth()) / this.faceRect.getWidth();
-//        if (widthChange > 0.1) return Deviation.NONE;
-//
-//        int maxDeviationX = (int)Math.round(this.faceRect.getWidth() / 4f);
-//        int maxDeviationY = (int)Math.round(this.faceRect.getWidth() / 8f);
-//        int minDeviation = (int)Math.round(this.faceRect.getWidth() / 16f);
-//
-//        int deviationX = Math.abs(x - oldEyePosition.x);
-//        int directionX = sgn(x - oldEyePosition.x);
-//        if (deviationX < minDeviation || deviationX > maxDeviationX) directionX = 0;
-//
-//        int deviationY = Math.abs(y - oldEyePosition.y);
-//        int directionY = sgn(y - oldEyePosition.y);
-//        if (deviationY < minDeviation || deviationY > maxDeviationY) directionY = 0;
-//
-//        double deviationXPercent = deviationX / this.faceRect.getWidth();
-//        double deviationYPercent = deviationY / this.faceRect.getWidth();
-//        
-//        System.out.println(String.format("devX: %.2f | devY: %.2f", deviationXPercent*100f, deviationYPercent*100f));
-//        return Deviation.getDirectionFor(directionX, directionY);
-//    }
+  public int getY() {
+    return this.y;
+  }
 
+  public String toString() {
+    return "(" + x + "," + y + ")";
+  }
 
-    private static int sgn(int i) {
-        if (i > 0) return 1;
-        if (i < 0) return -1;
-        return 0;
-    }
+  private static int sgn(int i) {
+    if (i > 0)
+      return 1;
+    if (i < 0)
+      return -1;
+    return 0;
+  }
 }