add RTree classes
[anneal.git] / src / edu / berkeley / qfat / geom / Triangle.java
index 6024e8f..df7c463 100644 (file)
@@ -1,7 +1,7 @@
 package edu.berkeley.qfat.geom;
 import javax.media.opengl.*;
 
-public abstract class Triangle {
+public abstract class Triangle implements HasBoundingBox {
     public abstract Point p1();
     public abstract Point p2();
     public abstract Point p3();
@@ -37,5 +37,17 @@ public abstract class Triangle {
                              p3().distance(p1())) / 2;
         return 1/(1+area()/(max*max));
     }
+    public float aspect0() {
+        float max = Math.max(Math.max(p1().distance(p2()),
+                                      p2().distance(p3())),
+                             p3().distance(p1())) / 2;
+        return (area()/(max*max));
+    }
 
+    public float getMaxX() { return Math.max(p1().x, Math.max(p2().x, p3().x)); }
+    public float getMinX() { return Math.min(p1().x, Math.min(p2().x, p3().x)); }
+    public float getMaxY() { return Math.max(p1().y, Math.max(p2().y, p3().y)); }
+    public float getMinY() { return Math.min(p1().y, Math.min(p2().y, p3().y)); }
+    public float getMaxZ() { return Math.max(p1().z, Math.max(p2().z, p3().z)); }
+    public float getMinZ() { return Math.min(p1().z, Math.min(p2().z, p3().z)); }
 }
\ No newline at end of file