From a3a659d0128908676e5793c7e59884b565c367cf Mon Sep 17 00:00:00 2001 From: adam Date: Tue, 4 Dec 2007 21:35:37 -0800 Subject: [PATCH 1/1] checkpoint darcs-hash:20071205053537-5007d-a24be18ffd14c7128fb36436d053315eea805cea.gz --- src/edu/berkeley/qfat/Mesh.java | 39 ++---------------------------- src/edu/berkeley/qfat/geom/PointSet.java | 39 ++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 37 deletions(-) diff --git a/src/edu/berkeley/qfat/Mesh.java b/src/edu/berkeley/qfat/Mesh.java index c00458c..8592d8a 100644 --- a/src/edu/berkeley/qfat/Mesh.java +++ b/src/edu/berkeley/qfat/Mesh.java @@ -97,43 +97,8 @@ public class Mesh implements Iterable { for(Vert v : set) v.transform(m); } - public Vec diagonal() { - float min_x = Float.MAX_VALUE; - float min_y = Float.MAX_VALUE; - float min_z = Float.MAX_VALUE; - float max_x = Float.MIN_VALUE; - float max_y = Float.MIN_VALUE; - float max_z = Float.MIN_VALUE; - for(Point p : verts.keySet()) { - if (p.x < min_x) min_x = p.x; - if (p.y < min_y) min_y = p.y; - if (p.z < min_z) min_z = p.z; - if (p.x > max_x) max_x = p.x; - if (p.y > max_y) max_y = p.y; - if (p.z > max_z) max_z = p.z; - } - return new Vec(max_x - min_x, max_y - min_y, max_z - min_z); - } - - public Point centroid() { - float min_x = Float.MAX_VALUE; - float min_y = Float.MAX_VALUE; - float min_z = Float.MAX_VALUE; - float max_x = Float.MIN_VALUE; - float max_y = Float.MIN_VALUE; - float max_z = Float.MIN_VALUE; - for(Point p : verts.keySet()) { - if (p.x < min_x) min_x = p.x; - if (p.y < min_y) min_y = p.y; - if (p.z < min_z) min_z = p.z; - if (p.x > max_x) max_x = p.x; - if (p.y > max_y) max_y = p.y; - if (p.z > max_z) max_z = p.z; - } - return new Point((float)(max_x + min_x)/2, - (float)(max_y + min_y)/2, - (float)(max_z + min_z)/2); - } + public Vec diagonal() { return pointset.diagonal(); } + public Point centroid() { return pointset.centroid(); } public float volume() { double total = 0; diff --git a/src/edu/berkeley/qfat/geom/PointSet.java b/src/edu/berkeley/qfat/geom/PointSet.java index 841d781..3b70118 100644 --- a/src/edu/berkeley/qfat/geom/PointSet.java +++ b/src/edu/berkeley/qfat/geom/PointSet.java @@ -59,4 +59,43 @@ public class PointSet implements Iterable { } return (V)results[0]; } + + + public Vec diagonal() { + float min_x = Float.MAX_VALUE; + float min_y = Float.MAX_VALUE; + float min_z = Float.MAX_VALUE; + float max_x = Float.MIN_VALUE; + float max_y = Float.MIN_VALUE; + float max_z = Float.MIN_VALUE; + for(Point p : exact.keySet()) { + if (p.x < min_x) min_x = p.x; + if (p.y < min_y) min_y = p.y; + if (p.z < min_z) min_z = p.z; + if (p.x > max_x) max_x = p.x; + if (p.y > max_y) max_y = p.y; + if (p.z > max_z) max_z = p.z; + } + return new Vec(max_x - min_x, max_y - min_y, max_z - min_z); + } + + public Point centroid() { + float min_x = Float.MAX_VALUE; + float min_y = Float.MAX_VALUE; + float min_z = Float.MAX_VALUE; + float max_x = Float.MIN_VALUE; + float max_y = Float.MIN_VALUE; + float max_z = Float.MIN_VALUE; + for(Point p : exact.keySet()) { + if (p.x < min_x) min_x = p.x; + if (p.y < min_y) min_y = p.y; + if (p.z < min_z) min_z = p.z; + if (p.x > max_x) max_x = p.x; + if (p.y > max_y) max_y = p.y; + if (p.z > max_z) max_z = p.z; + } + return new Point((float)(max_x + min_x)/2, + (float)(max_y + min_y)/2, + (float)(max_z + min_z)/2); + } } -- 1.7.10.4